summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2018-09-26 09:14:17 +0200
committerJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2018-09-26 09:44:41 +0200
commitbe0f62555521268813983e123297f1b3ad325122 (patch)
tree98525f120c9f9065eedc2dd5a38f02866461394c
parentba47f97124f055b5b8bd5cdb501b92b431a738fe (diff)
parent2f45045c96b3d5cc552565e317263b41d04d356b (diff)
downloadnextcloud-server-be0f62555521268813983e123297f1b3ad325122.tar.gz
nextcloud-server-be0f62555521268813983e123297f1b3ad325122.zip
Merge branch 'master' into babel-npm-webpack-fixes
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
-rw-r--r--.drone.yml4
-rw-r--r--.gitignore1
-rw-r--r--apps/accessibility/package-lock.json810
-rw-r--r--apps/accessibility/package.json6
-rw-r--r--apps/comments/css/comments.scss8
-rw-r--r--apps/comments/js/commentstabview.js15
-rw-r--r--apps/comments/l10n/cs.js14
-rw-r--r--apps/comments/l10n/cs.json14
-rw-r--r--apps/comments/l10n/nl.js1
-rw-r--r--apps/comments/l10n/nl.json1
-rw-r--r--apps/comments/l10n/pl.js1
-rw-r--r--apps/comments/l10n/pl.json1
-rw-r--r--apps/comments/l10n/sl.js2
-rw-r--r--apps/comments/l10n/sl.json2
-rw-r--r--apps/comments/l10n/zh_CN.js1
-rw-r--r--apps/comments/l10n/zh_CN.json1
-rw-r--r--apps/dav/l10n/bg.js16
-rw-r--r--apps/dav/l10n/bg.json16
-rw-r--r--apps/dav/l10n/cs.js19
-rw-r--r--apps/dav/l10n/cs.json19
-rw-r--r--apps/dav/l10n/fi.js2
-rw-r--r--apps/dav/l10n/fi.json2
-rw-r--r--apps/dav/l10n/nl.js1
-rw-r--r--apps/dav/l10n/nl.json1
-rw-r--r--apps/dav/l10n/pl.js12
-rw-r--r--apps/dav/l10n/pl.json12
-rw-r--r--apps/encryption/l10n/cs.js37
-rw-r--r--apps/encryption/l10n/cs.json37
-rw-r--r--apps/encryption/l10n/fi.js1
-rw-r--r--apps/encryption/l10n/fi.json1
-rw-r--r--apps/encryption/l10n/lt_LT.js2
-rw-r--r--apps/encryption/l10n/lt_LT.json2
-rw-r--r--apps/encryption/l10n/nl.js2
-rw-r--r--apps/encryption/l10n/nl.json2
-rw-r--r--apps/encryption/l10n/pl.js2
-rw-r--r--apps/encryption/l10n/pl.json2
-rw-r--r--apps/federatedfilesharing/l10n/bg.js3
-rw-r--r--apps/federatedfilesharing/l10n/bg.json3
-rw-r--r--apps/federatedfilesharing/l10n/cs.js14
-rw-r--r--apps/federatedfilesharing/l10n/cs.json14
-rw-r--r--apps/federatedfilesharing/l10n/fi.js1
-rw-r--r--apps/federatedfilesharing/l10n/fi.json1
-rw-r--r--apps/federatedfilesharing/l10n/nl.js1
-rw-r--r--apps/federatedfilesharing/l10n/nl.json1
-rw-r--r--apps/federation/l10n/cs.js4
-rw-r--r--apps/federation/l10n/cs.json4
-rw-r--r--apps/federation/l10n/fi.js3
-rw-r--r--apps/federation/l10n/fi.json3
-rw-r--r--apps/federation/l10n/lt_LT.js1
-rw-r--r--apps/federation/l10n/lt_LT.json1
-rw-r--r--apps/federation/l10n/nl.js1
-rw-r--r--apps/federation/l10n/nl.json1
-rw-r--r--apps/federation/l10n/sl.js18
-rw-r--r--apps/federation/l10n/sl.json18
-rw-r--r--apps/federation/l10n/uk.js10
-rw-r--r--apps/federation/l10n/uk.json10
-rw-r--r--apps/files/l10n/bg.js80
-rw-r--r--apps/files/l10n/bg.json80
-rw-r--r--apps/files/l10n/cs.js76
-rw-r--r--apps/files/l10n/cs.json76
-rw-r--r--apps/files/l10n/fi.js4
-rw-r--r--apps/files/l10n/fi.json4
-rw-r--r--apps/files/l10n/nl.js5
-rw-r--r--apps/files/l10n/nl.json5
-rw-r--r--apps/files/l10n/sk.js3
-rw-r--r--apps/files/l10n/sk.json3
-rw-r--r--apps/files/l10n/sl.js25
-rw-r--r--apps/files/l10n/sl.json25
-rw-r--r--apps/files/lib/Controller/ViewController.php3
-rw-r--r--apps/files/tests/Controller/ViewControllerTest.php72
-rw-r--r--apps/files_external/l10n/cs.js42
-rw-r--r--apps/files_external/l10n/cs.json42
-rw-r--r--apps/files_external/l10n/el.js1
-rw-r--r--apps/files_external/l10n/el.json1
-rw-r--r--apps/files_external/l10n/fi.js1
-rw-r--r--apps/files_external/l10n/fi.json1
-rw-r--r--apps/files_external/l10n/ja.js2
-rw-r--r--apps/files_external/l10n/ja.json2
-rw-r--r--apps/files_external/l10n/nl.js6
-rw-r--r--apps/files_external/l10n/nl.json6
-rw-r--r--apps/files_external/l10n/sl.js2
-rw-r--r--apps/files_external/l10n/sl.json2
-rw-r--r--apps/files_sharing/l10n/bg.js72
-rw-r--r--apps/files_sharing/l10n/bg.json70
-rw-r--r--apps/files_sharing/l10n/cs.js31
-rw-r--r--apps/files_sharing/l10n/cs.json31
-rw-r--r--apps/files_sharing/l10n/el.js3
-rw-r--r--apps/files_sharing/l10n/el.json3
-rw-r--r--apps/files_sharing/l10n/fi.js4
-rw-r--r--apps/files_sharing/l10n/fi.json4
-rw-r--r--apps/files_sharing/l10n/hu.js4
-rw-r--r--apps/files_sharing/l10n/hu.json4
-rw-r--r--apps/files_sharing/l10n/nl.js10
-rw-r--r--apps/files_sharing/l10n/nl.json10
-rw-r--r--apps/files_sharing/l10n/pl.js14
-rw-r--r--apps/files_sharing/l10n/pl.json14
-rw-r--r--apps/files_sharing/l10n/sk.js1
-rw-r--r--apps/files_sharing/l10n/sk.json1
-rw-r--r--apps/files_sharing/l10n/sl.js15
-rw-r--r--apps/files_sharing/l10n/sl.json15
-rw-r--r--apps/files_sharing/l10n/zh_CN.js16
-rw-r--r--apps/files_sharing/l10n/zh_CN.json16
-rw-r--r--apps/files_sharing/lib/Cache.php2
-rw-r--r--apps/files_sharing/lib/SharedStorage.php13
-rw-r--r--apps/files_sharing/tests/PermissionsTest.php14
-rw-r--r--apps/files_trashbin/l10n/bg.js2
-rw-r--r--apps/files_trashbin/l10n/bg.json2
-rw-r--r--apps/files_trashbin/l10n/cs.js7
-rw-r--r--apps/files_trashbin/l10n/cs.json7
-rw-r--r--apps/files_trashbin/l10n/el.js1
-rw-r--r--apps/files_trashbin/l10n/el.json1
-rw-r--r--apps/files_trashbin/l10n/fi.js1
-rw-r--r--apps/files_trashbin/l10n/fi.json1
-rw-r--r--apps/files_trashbin/l10n/nl.js4
-rw-r--r--apps/files_trashbin/l10n/nl.json4
-rw-r--r--apps/files_trashbin/l10n/pl.js3
-rw-r--r--apps/files_trashbin/l10n/pl.json3
-rw-r--r--apps/files_trashbin/l10n/sl.js7
-rw-r--r--apps/files_trashbin/l10n/sl.json7
-rw-r--r--apps/files_versions/l10n/cs.js6
-rw-r--r--apps/files_versions/l10n/cs.json6
-rw-r--r--apps/files_versions/l10n/nl.js5
-rw-r--r--apps/files_versions/l10n/nl.json5
-rw-r--r--apps/files_versions/l10n/sl.js4
-rw-r--r--apps/files_versions/l10n/sl.json4
-rw-r--r--apps/files_versions/l10n/zh_CN.js3
-rw-r--r--apps/files_versions/l10n/zh_CN.json3
-rw-r--r--apps/oauth2/l10n/cs.js4
-rw-r--r--apps/oauth2/l10n/cs.json4
-rw-r--r--apps/oauth2/l10n/ko.js1
-rw-r--r--apps/oauth2/l10n/ko.json1
-rw-r--r--apps/oauth2/l10n/nl.js2
-rw-r--r--apps/oauth2/l10n/nl.json2
-rw-r--r--apps/oauth2/l10n/pl.js1
-rw-r--r--apps/oauth2/l10n/pl.json1
-rw-r--r--apps/oauth2/l10n/sk.js2
-rw-r--r--apps/oauth2/l10n/sk.json2
-rw-r--r--apps/oauth2/lib/Controller/SettingsController.php2
-rw-r--r--apps/oauth2/package-lock.json756
-rw-r--r--apps/oauth2/package.json6
-rw-r--r--apps/provisioning_api/lib/Controller/AUserData.php2
-rw-r--r--apps/provisioning_api/lib/Controller/GroupsController.php15
-rw-r--r--apps/provisioning_api/lib/Controller/UsersController.php17
-rw-r--r--apps/sharebymail/l10n/cs.js22
-rw-r--r--apps/sharebymail/l10n/cs.json22
-rw-r--r--apps/sharebymail/l10n/nl.js3
-rw-r--r--apps/sharebymail/l10n/nl.json3
-rw-r--r--apps/sharebymail/l10n/pl.js1
-rw-r--r--apps/sharebymail/l10n/pl.json1
-rw-r--r--apps/systemtags/l10n/bg.js64
-rw-r--r--apps/systemtags/l10n/bg.json64
-rw-r--r--apps/systemtags/l10n/cs.js39
-rw-r--r--apps/systemtags/l10n/cs.json39
-rw-r--r--apps/systemtags/l10n/he.js1
-rw-r--r--apps/systemtags/l10n/he.json1
-rw-r--r--apps/systemtags/l10n/nl.js3
-rw-r--r--apps/systemtags/l10n/nl.json3
-rw-r--r--apps/theming/css/theming.scss4
-rw-r--r--apps/theming/l10n/cs.js9
-rw-r--r--apps/theming/l10n/cs.json9
-rw-r--r--apps/theming/l10n/el.js1
-rw-r--r--apps/theming/l10n/el.json1
-rw-r--r--apps/theming/l10n/hu.js2
-rw-r--r--apps/theming/l10n/hu.json2
-rw-r--r--apps/theming/l10n/ja.js5
-rw-r--r--apps/theming/l10n/ja.json5
-rw-r--r--apps/theming/l10n/pl.js17
-rw-r--r--apps/theming/l10n/pl.json17
-rw-r--r--apps/theming/lib/ThemingDefaults.php6
-rw-r--r--apps/twofactor_backupcodes/l10n/cs.js4
-rw-r--r--apps/twofactor_backupcodes/l10n/cs.json4
-rw-r--r--apps/updatenotification/js/updatenotification.js2
-rw-r--r--apps/updatenotification/js/updatenotification.js.map2
-rw-r--r--apps/updatenotification/l10n/cs.js16
-rw-r--r--apps/updatenotification/l10n/cs.json16
-rw-r--r--apps/updatenotification/l10n/el.js2
-rw-r--r--apps/updatenotification/l10n/el.json2
-rw-r--r--apps/updatenotification/l10n/fi.js2
-rw-r--r--apps/updatenotification/l10n/fi.json2
-rw-r--r--apps/updatenotification/l10n/he.js31
-rw-r--r--apps/updatenotification/l10n/he.json31
-rw-r--r--apps/updatenotification/l10n/ja.js1
-rw-r--r--apps/updatenotification/l10n/ja.json1
-rw-r--r--apps/updatenotification/l10n/nl.js3
-rw-r--r--apps/updatenotification/l10n/nl.json3
-rw-r--r--apps/updatenotification/l10n/pl.js11
-rw-r--r--apps/updatenotification/l10n/pl.json11
-rw-r--r--apps/updatenotification/lib/Notification/Notifier.php2
-rw-r--r--apps/updatenotification/package-lock.json748
-rw-r--r--apps/updatenotification/package.json6
-rw-r--r--apps/user_ldap/l10n/bg.js6
-rw-r--r--apps/user_ldap/l10n/bg.json6
-rw-r--r--apps/user_ldap/l10n/cs.js81
-rw-r--r--apps/user_ldap/l10n/cs.json81
-rw-r--r--apps/user_ldap/l10n/nl.js2
-rw-r--r--apps/user_ldap/l10n/nl.json2
-rw-r--r--apps/user_ldap/l10n/sl.js3
-rw-r--r--apps/user_ldap/l10n/sl.json3
-rw-r--r--apps/user_ldap/lib/User_LDAP.php12
-rw-r--r--apps/workflowengine/l10n/bg.js10
-rw-r--r--apps/workflowengine/l10n/bg.json10
-rw-r--r--apps/workflowengine/l10n/cs.js16
-rw-r--r--apps/workflowengine/l10n/cs.json16
-rw-r--r--apps/workflowengine/l10n/fi.js1
-rw-r--r--apps/workflowengine/l10n/fi.json1
-rw-r--r--apps/workflowengine/l10n/he.js4
-rw-r--r--apps/workflowengine/l10n/he.json4
-rw-r--r--apps/workflowengine/l10n/ko.js2
-rw-r--r--apps/workflowengine/l10n/ko.json2
-rw-r--r--apps/workflowengine/l10n/nl.js2
-rw-r--r--apps/workflowengine/l10n/nl.json2
-rw-r--r--apps/workflowengine/l10n/sl.js75
-rw-r--r--apps/workflowengine/l10n/sl.json73
-rw-r--r--apps/workflowengine/l10n/zh_CN.js1
-rw-r--r--apps/workflowengine/l10n/zh_CN.json1
-rw-r--r--core/Command/TwoFactorAuth/Cleanup.php61
-rw-r--r--core/Command/TwoFactorAuth/Disable.php18
-rw-r--r--core/Command/TwoFactorAuth/Enable.php19
-rw-r--r--core/Command/TwoFactorAuth/State.php8
-rw-r--r--core/Controller/LostController.php21
-rw-r--r--core/css/apps.scss4
-rw-r--r--core/css/mobile.scss2
-rw-r--r--core/img/mastodon.svg2
-rw-r--r--core/js/files/client.js2
-rw-r--r--core/js/setupchecks.js6
-rw-r--r--core/js/sharedialogresharerinfoview.js32
-rw-r--r--core/js/sharedialogview.js29
-rw-r--r--core/js/tests/specs/setupchecksSpec.js30
-rw-r--r--core/js/tests/specs/sharedialogviewSpec.js266
-rw-r--r--core/l10n/bg.js176
-rw-r--r--core/l10n/bg.json176
-rw-r--r--core/l10n/ca.js2
-rw-r--r--core/l10n/ca.json2
-rw-r--r--core/l10n/cs.js192
-rw-r--r--core/l10n/cs.json192
-rw-r--r--core/l10n/da.js2
-rw-r--r--core/l10n/da.json2
-rw-r--r--core/l10n/de.js8
-rw-r--r--core/l10n/de.json8
-rw-r--r--core/l10n/de_DE.js4
-rw-r--r--core/l10n/de_DE.json4
-rw-r--r--core/l10n/en_GB.js2
-rw-r--r--core/l10n/en_GB.json2
-rw-r--r--core/l10n/es.js4
-rw-r--r--core/l10n/es.json4
-rw-r--r--core/l10n/es_419.js2
-rw-r--r--core/l10n/es_419.json2
-rw-r--r--core/l10n/es_CL.js2
-rw-r--r--core/l10n/es_CL.json2
-rw-r--r--core/l10n/es_CO.js2
-rw-r--r--core/l10n/es_CO.json2
-rw-r--r--core/l10n/es_CR.js2
-rw-r--r--core/l10n/es_CR.json2
-rw-r--r--core/l10n/es_DO.js2
-rw-r--r--core/l10n/es_DO.json2
-rw-r--r--core/l10n/es_EC.js2
-rw-r--r--core/l10n/es_EC.json2
-rw-r--r--core/l10n/es_GT.js2
-rw-r--r--core/l10n/es_GT.json2
-rw-r--r--core/l10n/es_HN.js2
-rw-r--r--core/l10n/es_HN.json2
-rw-r--r--core/l10n/es_MX.js2
-rw-r--r--core/l10n/es_MX.json2
-rw-r--r--core/l10n/es_NI.js2
-rw-r--r--core/l10n/es_NI.json2
-rw-r--r--core/l10n/es_PA.js2
-rw-r--r--core/l10n/es_PA.json2
-rw-r--r--core/l10n/es_PE.js2
-rw-r--r--core/l10n/es_PE.json2
-rw-r--r--core/l10n/es_PR.js2
-rw-r--r--core/l10n/es_PR.json2
-rw-r--r--core/l10n/es_PY.js2
-rw-r--r--core/l10n/es_PY.json2
-rw-r--r--core/l10n/es_SV.js2
-rw-r--r--core/l10n/es_SV.json2
-rw-r--r--core/l10n/es_UY.js2
-rw-r--r--core/l10n/es_UY.json2
-rw-r--r--core/l10n/fi.js9
-rw-r--r--core/l10n/fi.json9
-rw-r--r--core/l10n/fr.js4
-rw-r--r--core/l10n/fr.json4
-rw-r--r--core/l10n/he.js2
-rw-r--r--core/l10n/he.json2
-rw-r--r--core/l10n/hu.js2
-rw-r--r--core/l10n/hu.json2
-rw-r--r--core/l10n/is.js2
-rw-r--r--core/l10n/is.json2
-rw-r--r--core/l10n/it.js4
-rw-r--r--core/l10n/it.json4
-rw-r--r--core/l10n/ja.js18
-rw-r--r--core/l10n/ja.json18
-rw-r--r--core/l10n/ka_GE.js2
-rw-r--r--core/l10n/ka_GE.json2
-rw-r--r--core/l10n/ko.js18
-rw-r--r--core/l10n/ko.json18
-rw-r--r--core/l10n/nb.js2
-rw-r--r--core/l10n/nb.json2
-rw-r--r--core/l10n/nl.js7
-rw-r--r--core/l10n/nl.json7
-rw-r--r--core/l10n/pl.js75
-rw-r--r--core/l10n/pl.json75
-rw-r--r--core/l10n/pt_BR.js4
-rw-r--r--core/l10n/pt_BR.json4
-rw-r--r--core/l10n/pt_PT.js2
-rw-r--r--core/l10n/pt_PT.json2
-rw-r--r--core/l10n/ru.js2
-rw-r--r--core/l10n/ru.json2
-rw-r--r--core/l10n/sk.js2
-rw-r--r--core/l10n/sk.json2
-rw-r--r--core/l10n/sl.js18
-rw-r--r--core/l10n/sl.json18
-rw-r--r--core/l10n/sr.js4
-rw-r--r--core/l10n/sr.json4
-rw-r--r--core/l10n/sv.js34
-rw-r--r--core/l10n/sv.json34
-rw-r--r--core/l10n/tr.js4
-rw-r--r--core/l10n/tr.json4
-rw-r--r--core/l10n/zh_CN.js60
-rw-r--r--core/l10n/zh_CN.json60
-rw-r--r--core/l10n/zh_TW.js2
-rw-r--r--core/l10n/zh_TW.json2
-rw-r--r--core/register_command.php9
-rw-r--r--lib/base.php2
-rw-r--r--lib/composer/composer/autoload_classmap.php5
-rw-r--r--lib/composer/composer/autoload_static.php5
-rw-r--r--lib/l10n/bg.js17
-rw-r--r--lib/l10n/bg.json17
-rw-r--r--lib/l10n/cs.js132
-rw-r--r--lib/l10n/cs.json132
-rw-r--r--lib/l10n/fi.js1
-rw-r--r--lib/l10n/fi.json1
-rw-r--r--lib/l10n/ja.js2
-rw-r--r--lib/l10n/ja.json2
-rw-r--r--lib/l10n/nl.js12
-rw-r--r--lib/l10n/nl.json12
-rw-r--r--lib/l10n/pl.js30
-rw-r--r--lib/l10n/pl.json30
-rw-r--r--lib/l10n/sl.js11
-rw-r--r--lib/l10n/sl.json11
-rw-r--r--lib/l10n/sv.js8
-rw-r--r--lib/l10n/sv.json8
-rw-r--r--lib/l10n/zh_CN.js5
-rw-r--r--lib/l10n/zh_CN.json5
-rw-r--r--lib/private/AppFramework/Utility/SimpleContainer.php8
-rw-r--r--lib/private/Authentication/Exceptions/InvalidProviderException.php38
-rw-r--r--lib/private/Authentication/Token/DefaultTokenProvider.php2
-rw-r--r--lib/private/Authentication/Token/PublicKeyTokenProvider.php8
-rw-r--r--lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php9
-rw-r--r--lib/private/Authentication/TwoFactorAuth/Manager.php26
-rw-r--r--lib/private/Authentication/TwoFactorAuth/ProviderManager.php98
-rw-r--r--lib/private/Authentication/TwoFactorAuth/Registry.php3
-rw-r--r--lib/private/L10N/Factory.php19
-rw-r--r--lib/private/Template/IconsCacher.php2
-rw-r--r--lib/private/TemplateLayout.php7
-rw-r--r--lib/private/legacy/user.php2
-rw-r--r--lib/public/Authentication/TwoFactorAuth/IActivatableByAdmin.php51
-rw-r--r--lib/public/Authentication/TwoFactorAuth/IDeactivatableByAdmin.php51
-rw-r--r--lib/public/Authentication/TwoFactorAuth/IRegistry.php15
-rw-r--r--lib/public/Federation/ICloudFederationProviderManager.php2
-rw-r--r--lib/public/L10N/IFactory.php10
-rw-r--r--settings/Controller/CheckSetupController.php34
-rw-r--r--settings/l10n/bg.js110
-rw-r--r--settings/l10n/bg.json110
-rw-r--r--settings/l10n/cs.js168
-rw-r--r--settings/l10n/cs.json168
-rw-r--r--settings/l10n/de.js3
-rw-r--r--settings/l10n/de.json3
-rw-r--r--settings/l10n/de_DE.js1
-rw-r--r--settings/l10n/de_DE.json1
-rw-r--r--settings/l10n/es.js2
-rw-r--r--settings/l10n/es.json2
-rw-r--r--settings/l10n/fi.js1
-rw-r--r--settings/l10n/fi.json1
-rw-r--r--settings/l10n/fr.js3
-rw-r--r--settings/l10n/fr.json3
-rw-r--r--settings/l10n/it.js1
-rw-r--r--settings/l10n/it.json1
-rw-r--r--settings/l10n/ja.js13
-rw-r--r--settings/l10n/ja.json13
-rw-r--r--settings/l10n/nl.js43
-rw-r--r--settings/l10n/nl.json43
-rw-r--r--settings/l10n/pl.js41
-rw-r--r--settings/l10n/pl.json41
-rw-r--r--settings/l10n/pt_BR.js1
-rw-r--r--settings/l10n/pt_BR.json1
-rw-r--r--settings/l10n/sl.js70
-rw-r--r--settings/l10n/sl.json70
-rw-r--r--settings/l10n/sr.js1
-rw-r--r--settings/l10n/sr.json1
-rw-r--r--settings/l10n/sv.js46
-rw-r--r--settings/l10n/sv.json46
-rw-r--r--settings/l10n/tr.js1
-rw-r--r--settings/l10n/tr.json1
-rw-r--r--settings/l10n/zh_CN.js26
-rw-r--r--settings/l10n/zh_CN.json26
-rw-r--r--settings/package.json6
-rw-r--r--settings/templates/settings/admin/overview.php2
-rw-r--r--settings/templates/settings/personal/development.notice.php7
-rw-r--r--tests/Core/Command/TwoFactorAuth/CleanupTest.php66
-rw-r--r--tests/Core/Command/TwoFactorAuth/DisableTest.php113
-rw-r--r--tests/Core/Command/TwoFactorAuth/EnableTest.php114
-rw-r--r--tests/Core/Command/TwoFactorAuth/StateTest.php113
-rw-r--r--tests/Core/Controller/LostControllerTest.php84
-rw-r--r--tests/Settings/Controller/CheckSetupControllerTest.php8
-rwxr-xr-xtests/acceptance/run-local.sh2
-rw-r--r--tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php1
-rw-r--r--tests/lib/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDaoTest.php14
-rw-r--r--tests/lib/Authentication/TwoFactorAuth/ManagerTest.php28
-rw-r--r--tests/lib/Authentication/TwoFactorAuth/ProviderManagerTest.php154
-rw-r--r--tests/lib/Authentication/TwoFactorAuth/RegistryTest.php8
-rw-r--r--tests/lib/L10N/L10nTest.php27
411 files changed, 5919 insertions, 3312 deletions
diff --git a/.drone.yml b/.drone.yml
index 2ac98e4523f..52690829b93 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -284,7 +284,7 @@ pipeline:
image: nextcloudci/php7.1:php7.1-16
commands:
- sleep 10 # gives the database enough time to initialize
- - NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
+ - POSTGRES=${POSTGRES} NOCOVERAGE=true TEST_SELECTION=DB ./autotest.sh pgsql
when:
matrix:
DB: postgres
@@ -936,6 +936,7 @@ services:
image: postgres:9
environment:
- POSTGRES_USER=oc_autotest
+ - POSTGRES_DB=oc_autotest_dummy
- POSTGRES_PASSWORD=owncloud
tmpfs:
- /var/lib/postgresql/data
@@ -947,6 +948,7 @@ services:
image: postgres:10
environment:
- POSTGRES_USER=oc_autotest
+ - POSTGRES_DB=oc_autotest_dummy
- POSTGRES_PASSWORD=owncloud
tmpfs:
- /var/lib/postgresql/data
diff --git a/.gitignore b/.gitignore
index f8721e67fa8..cad26d1a88d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,6 +13,7 @@
# ignore all apps except core ones
/apps*/*
!/apps/accessibility
+!/apps/cloud_federation_api
!/apps/comments
!/apps/dav
!/apps/files
diff --git a/apps/accessibility/package-lock.json b/apps/accessibility/package-lock.json
index a5796d0ac5d..97a948a7cf7 100644
--- a/apps/accessibility/package-lock.json
+++ b/apps/accessibility/package-lock.json
@@ -5,9 +5,9 @@
"requires": true,
"dependencies": {
"@vue/component-compiler-utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-2.1.0.tgz",
- "integrity": "sha512-CEAYcnQsO42aKnIOQdzTLonpa936Tl8sJSHciMzNgy/p+tvqycjwK9Knm6vUrkVE/fWV2NVcNWI+fmvUPxkxWQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-2.2.0.tgz",
+ "integrity": "sha512-pS4zlcdD7BvedyB+IfiTfrbi6C977UMIfulSk8r6uL0BU46ZE2+fUj/zbSNSfVxeaj9ElmnSni5OMwF9np+b+w==",
"dev": true,
"requires": {
"consolidate": "^0.15.1",
@@ -16,274 +16,204 @@
"merge-source-map": "^1.1.0",
"postcss": "^6.0.20",
"postcss-selector-parser": "^3.1.1",
- "prettier": "^1.13.7",
+ "prettier": "1.13.7",
"source-map": "^0.5.6",
"vue-template-es2015-compiler": "^1.6.0"
}
},
"@webassemblyjs/ast": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.13.tgz",
- "integrity": "sha512-49nwvW/Hx9i+OYHg+mRhKZfAlqThr11Dqz8TsrvqGKMhdI2ijy3KBJOun2Z4770TPjrIJhR6KxChQIDaz8clDA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.6.tgz",
+ "integrity": "sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ==",
"dev": true,
"requires": {
- "@webassemblyjs/helper-module-context": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/wast-parser": "1.5.13",
- "debug": "^3.1.0",
+ "@webassemblyjs/helper-module-context": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/wast-parser": "1.7.6",
"mamacro": "^0.0.3"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
}
},
"@webassemblyjs/floating-point-hex-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.13.tgz",
- "integrity": "sha512-vrvvB18Kh4uyghSKb0NTv+2WZx871WL2NzwMj61jcq2bXkyhRC+8Q0oD7JGVf0+5i/fKQYQSBCNMMsDMRVAMqA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz",
+ "integrity": "sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA==",
"dev": true
},
"@webassemblyjs/helper-api-error": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.13.tgz",
- "integrity": "sha512-dBh2CWYqjaDlvMmRP/kudxpdh30uXjIbpkLj9HQe+qtYlwvYjPRjdQXrq1cTAAOUSMTtzqbXIxEdEZmyKfcwsg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz",
+ "integrity": "sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg==",
"dev": true
},
"@webassemblyjs/helper-buffer": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.13.tgz",
- "integrity": "sha512-v7igWf1mHcpJNbn4m7e77XOAWXCDT76Xe7Is1VQFXc4K5jRcFrl9D0NrqM4XifQ0bXiuTSkTKMYqDxu5MhNljA==",
- "dev": true,
- "requires": {
- "debug": "^3.1.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
- }
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz",
+ "integrity": "sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw==",
+ "dev": true
},
"@webassemblyjs/helper-code-frame": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.13.tgz",
- "integrity": "sha512-yN6ScQQDFCiAXnVctdVO/J5NQRbwyTbQzsGzEgXsAnrxhjp0xihh+nNHQTMrq5UhOqTb5LykpJAvEv9AT0jnAQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz",
+ "integrity": "sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg==",
"dev": true,
"requires": {
- "@webassemblyjs/wast-printer": "1.5.13"
+ "@webassemblyjs/wast-printer": "1.7.6"
}
},
"@webassemblyjs/helper-fsm": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.13.tgz",
- "integrity": "sha512-hSIKzbXjVMRvy3Jzhgu+vDd/aswJ+UMEnLRCkZDdknZO3Z9e6rp1DAs0tdLItjCFqkz9+0BeOPK/mk3eYvVzZg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz",
+ "integrity": "sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw==",
"dev": true
},
"@webassemblyjs/helper-module-context": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.13.tgz",
- "integrity": "sha512-zxJXULGPLB7r+k+wIlvGlXpT4CYppRz8fLUM/xobGHc9Z3T6qlmJD9ySJ2jknuktuuiR9AjnNpKYDECyaiX+QQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz",
+ "integrity": "sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw==",
"dev": true,
"requires": {
- "debug": "^3.1.0",
"mamacro": "^0.0.3"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
}
},
"@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.13.tgz",
- "integrity": "sha512-0n3SoNGLvbJIZPhtMFq0XmmnA/YmQBXaZKQZcW8maGKwLpVcgjNrxpFZHEOLKjXJYVN5Il8vSfG7nRX50Zn+aw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz",
+ "integrity": "sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q==",
"dev": true
},
"@webassemblyjs/helper-wasm-section": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.13.tgz",
- "integrity": "sha512-IJ/goicOZ5TT1axZFSnlAtz4m8KEjYr12BNOANAwGFPKXM4byEDaMNXYowHMG0yKV9a397eU/NlibFaLwr1fbw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz",
+ "integrity": "sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "debug": "^3.1.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6"
}
},
"@webassemblyjs/ieee754": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.13.tgz",
- "integrity": "sha512-TseswvXEPpG5TCBKoLx9tT7+/GMACjC1ruo09j46ULRZWYm8XHpDWaosOjTnI7kr4SRJFzA6MWoUkAB+YCGKKg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz",
+ "integrity": "sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ==",
"dev": true,
"requires": {
- "ieee754": "^1.1.11"
+ "@xtuc/ieee754": "^1.2.0"
}
},
"@webassemblyjs/leb128": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.13.tgz",
- "integrity": "sha512-0NRMxrL+GG3eISGZBmLBLAVjphbN8Si15s7jzThaw1UE9e5BY1oH49/+MA1xBzxpf1OW5sf9OrPDOclk9wj2yg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.6.tgz",
+ "integrity": "sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ==",
"dev": true,
"requires": {
- "long": "4.0.0"
- },
- "dependencies": {
- "long": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
- "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==",
- "dev": true
- }
+ "@xtuc/long": "4.2.1"
}
},
"@webassemblyjs/utf8": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.5.13.tgz",
- "integrity": "sha512-Ve1ilU2N48Ew0lVGB8FqY7V7hXjaC4+PeZM+vDYxEd+R2iQ0q+Wb3Rw8v0Ri0+rxhoz6gVGsnQNb4FjRiEH/Ng==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.6.tgz",
+ "integrity": "sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw==",
"dev": true
},
"@webassemblyjs/wasm-edit": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.13.tgz",
- "integrity": "sha512-X7ZNW4+Hga4f2NmqENnHke2V/mGYK/xnybJSIXImt1ulxbCOEs/A+ZK/Km2jgihjyVxp/0z0hwIcxC6PrkWtgw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/helper-wasm-section": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "@webassemblyjs/wasm-opt": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
- "@webassemblyjs/wast-printer": "1.5.13",
- "debug": "^3.1.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz",
+ "integrity": "sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg==",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/helper-wasm-section": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6",
+ "@webassemblyjs/wasm-opt": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6",
+ "@webassemblyjs/wast-printer": "1.7.6"
}
},
"@webassemblyjs/wasm-gen": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.13.tgz",
- "integrity": "sha512-yfv94Se8R73zmr8GAYzezFHc3lDwE/lBXQddSiIZEKZFuqy7yWtm3KMwA1uGbv5G1WphimJxboXHR80IgX1hQA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz",
+ "integrity": "sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/ieee754": "1.5.13",
- "@webassemblyjs/leb128": "1.5.13",
- "@webassemblyjs/utf8": "1.5.13"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/ieee754": "1.7.6",
+ "@webassemblyjs/leb128": "1.7.6",
+ "@webassemblyjs/utf8": "1.7.6"
}
},
"@webassemblyjs/wasm-opt": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.13.tgz",
- "integrity": "sha512-IkXSkgzVhQ0QYAdIayuCWMmXSYx0dHGU8Ah/AxJf1gBvstMWVnzJnBwLsXLyD87VSBIcsqkmZ28dVb0mOC3oBg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz",
+ "integrity": "sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
- "debug": "^3.1.0"
- },
- "dependencies": {
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- }
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6"
}
},
"@webassemblyjs/wasm-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.13.tgz",
- "integrity": "sha512-XnYoIcu2iqq8/LrtmdnN3T+bRjqYFjRHqWbqK3osD/0r/Fcv4d9ecRzjVtC29ENEuNTK4mQ9yyxCBCbK8S/cpg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz",
+ "integrity": "sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-api-error": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/ieee754": "1.5.13",
- "@webassemblyjs/leb128": "1.5.13",
- "@webassemblyjs/utf8": "1.5.13"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-api-error": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/ieee754": "1.7.6",
+ "@webassemblyjs/leb128": "1.7.6",
+ "@webassemblyjs/utf8": "1.7.6"
}
},
"@webassemblyjs/wast-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.13.tgz",
- "integrity": "sha512-Lbz65T0LQ1LgzKiUytl34CwuhMNhaCLgrh0JW4rJBN6INnBB8NMwUfQM+FxTnLY9qJ+lHJL/gCM5xYhB9oWi4A==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz",
+ "integrity": "sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/floating-point-hex-parser": "1.5.13",
- "@webassemblyjs/helper-api-error": "1.5.13",
- "@webassemblyjs/helper-code-frame": "1.5.13",
- "@webassemblyjs/helper-fsm": "1.5.13",
- "long": "^3.2.0",
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/floating-point-hex-parser": "1.7.6",
+ "@webassemblyjs/helper-api-error": "1.7.6",
+ "@webassemblyjs/helper-code-frame": "1.7.6",
+ "@webassemblyjs/helper-fsm": "1.7.6",
+ "@xtuc/long": "4.2.1",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/wast-printer": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.13.tgz",
- "integrity": "sha512-QcwogrdqcBh8Z+eUF8SG+ag5iwQSXxQJELBEHmLkk790wgQgnIMmntT2sMAMw53GiFNckArf5X0bsCA44j3lWQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz",
+ "integrity": "sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/wast-parser": "1.5.13",
- "long": "^3.2.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/wast-parser": "1.7.6",
+ "@xtuc/long": "4.2.1"
}
},
+ "@xtuc/ieee754": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
+ "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
+ "dev": true
+ },
+ "@xtuc/long": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz",
+ "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==",
+ "dev": true
+ },
"acorn": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz",
- "integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==",
+ "version": "5.7.3",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
+ "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
"dev": true
},
"acorn-dynamic-import": {
@@ -313,12 +243,6 @@
"integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=",
"dev": true
},
- "ansi-escapes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
- "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
- "dev": true
- },
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
@@ -1133,9 +1057,9 @@
"dev": true
},
"binary-extensions": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
- "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz",
+ "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==",
"dev": true
},
"bluebird": {
@@ -1197,7 +1121,7 @@
},
"browserify-aes": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
"requires": {
@@ -1234,7 +1158,7 @@
},
"browserify-rsa": {
"version": "4.0.1",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
+ "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
"dev": true,
"requires": {
@@ -1368,12 +1292,6 @@
"supports-color": "^2.0.0"
}
},
- "chardet": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.5.0.tgz",
- "integrity": "sha512-9ZTaoBaePSCFvNlNGrsyI8ZVACP2svUtq0DkM7t4K2ClAa96sqOIRjAzDTc8zXzFt1cZR46rRzLTiHFSJ+Qw0g==",
- "dev": true
- },
"chokidar": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz",
@@ -1396,9 +1314,9 @@
}
},
"chownr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
- "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz",
+ "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==",
"dev": true
},
"chrome-trace-event": {
@@ -1443,21 +1361,6 @@
}
}
},
- "cli-cursor": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
- "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
- "dev": true,
- "requires": {
- "restore-cursor": "^2.0.0"
- }
- },
- "cli-width": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
- "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
- "dev": true
- },
"cliui": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
@@ -1627,7 +1530,7 @@
},
"create-hash": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"dev": true,
"requires": {
@@ -1640,7 +1543,7 @@
},
"create-hmac": {
"version": "1.1.7",
- "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"dev": true,
"requires": {
@@ -1838,7 +1741,7 @@
},
"diffie-hellman": {
"version": "5.0.3",
- "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
"requires": {
@@ -1984,31 +1887,18 @@
}
},
"execa": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
- "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz",
+ "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==",
"dev": true,
"requires": {
- "cross-spawn": "^5.0.1",
+ "cross-spawn": "^6.0.0",
"get-stream": "^3.0.0",
"is-stream": "^1.1.0",
"npm-run-path": "^2.0.0",
"p-finally": "^1.0.0",
"signal-exit": "^3.0.0",
"strip-eof": "^1.0.0"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
- "dev": true,
- "requires": {
- "lru-cache": "^4.0.1",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- }
}
},
"expand-brackets": {
@@ -2067,17 +1957,6 @@
}
}
},
- "external-editor": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.0.tgz",
- "integrity": "sha512-mpkfj0FEdxrIhOC04zk85X7StNtr0yXnG7zCb+8ikO8OJi2jsHh5YGoknNTyXgsbHOf1WOOcVU3kPFWT2WgCkQ==",
- "dev": true,
- "requires": {
- "chardet": "^0.5.0",
- "iconv-lite": "^0.4.22",
- "tmp": "^0.0.33"
- }
- },
"extglob": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
@@ -2161,15 +2040,6 @@
"integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=",
"dev": true
},
- "figures": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
- "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
- "dev": true,
- "requires": {
- "escape-string-regexp": "^1.0.5"
- }
- },
"file-loader": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz",
@@ -3014,15 +2884,6 @@
"integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
"dev": true
},
- "iconv-lite": {
- "version": "0.4.23",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz",
- "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
"icss-replace-symbols": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
@@ -3051,13 +2912,67 @@
"dev": true
},
"import-local": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz",
- "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz",
+ "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==",
"dev": true,
"requires": {
- "pkg-dir": "^2.0.0",
+ "pkg-dir": "^3.0.0",
"resolve-cwd": "^2.0.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-limit": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz",
+ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==",
+ "dev": true,
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "p-try": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
+ "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
+ "dev": true
+ },
+ "pkg-dir": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
+ "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
+ "dev": true,
+ "requires": {
+ "find-up": "^3.0.0"
+ }
+ }
}
},
"imurmurhash": {
@@ -3094,73 +3009,6 @@
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
- "inquirer": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.0.0.tgz",
- "integrity": "sha512-tISQWRwtcAgrz+SHPhTH7d3e73k31gsOy6i1csonLc0u1dVK/wYvuOnFeiWqC5OXFIYbmrIFInef31wbT8MEJg==",
- "dev": true,
- "requires": {
- "ansi-escapes": "^3.0.0",
- "chalk": "^2.0.0",
- "cli-cursor": "^2.1.0",
- "cli-width": "^2.0.0",
- "external-editor": "^3.0.0",
- "figures": "^2.0.0",
- "lodash": "^4.3.0",
- "mute-stream": "0.0.7",
- "run-async": "^2.2.0",
- "rxjs": "^6.1.0",
- "string-width": "^2.1.0",
- "strip-ansi": "^4.0.0",
- "through": "^2.3.6"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
- "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
- "dev": true
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "chalk": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz",
- "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "strip-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
- "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^3.0.0"
- }
- },
- "supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- }
- }
- },
"interpret": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
@@ -3177,9 +3025,9 @@
}
},
"invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz",
+ "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==",
"dev": true
},
"is-accessor-descriptor": {
@@ -3326,12 +3174,6 @@
"isobject": "^3.0.1"
}
},
- "is-promise": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
- "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
- "dev": true
- },
"is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
@@ -3399,18 +3241,18 @@
"dev": true
},
"lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz",
+ "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==",
"dev": true,
"requires": {
- "invert-kv": "^1.0.0"
+ "invert-kv": "^2.0.0"
}
},
"loader-runner": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz",
- "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz",
+ "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==",
"dev": true
},
"loader-utils": {
@@ -3452,12 +3294,6 @@
"integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
"dev": true
},
- "long": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz",
- "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=",
- "dev": true
- },
"loose-envify": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz",
@@ -3492,6 +3328,15 @@
"integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==",
"dev": true
},
+ "map-age-cleaner": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz",
+ "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==",
+ "dev": true,
+ "requires": {
+ "p-defer": "^1.0.0"
+ }
+ },
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
@@ -3518,12 +3363,14 @@
}
},
"mem": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz",
- "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz",
+ "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==",
"dev": true,
"requires": {
- "mimic-fn": "^1.0.0"
+ "map-age-cleaner": "^0.1.1",
+ "mimic-fn": "^1.0.0",
+ "p-is-promise": "^1.1.0"
}
},
"memory-fs": {
@@ -3684,12 +3531,6 @@
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
- "mute-stream": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
- "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=",
- "dev": true
- },
"nan": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz",
@@ -3723,9 +3564,9 @@
"dev": true
},
"nice-try": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz",
- "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
+ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true
},
"node-libs-browser": {
@@ -3849,15 +3690,6 @@
"wrappy": "1"
}
},
- "onetime": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
- "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
- "dev": true,
- "requires": {
- "mimic-fn": "^1.0.0"
- }
- },
"os-browserify": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
@@ -3871,14 +3703,14 @@
"dev": true
},
"os-locale": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz",
- "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz",
+ "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==",
"dev": true,
"requires": {
- "execa": "^0.7.0",
- "lcid": "^1.0.0",
- "mem": "^1.1.0"
+ "execa": "^0.10.0",
+ "lcid": "^2.0.0",
+ "mem": "^4.0.0"
}
},
"os-tmpdir": {
@@ -3887,12 +3719,24 @@
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"dev": true
},
+ "p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
+ "dev": true
+ },
"p-finally": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
"dev": true
},
+ "p-is-promise": {
+ "version": "1.1.0",
+ "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz",
+ "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=",
+ "dev": true
+ },
"p-limit": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
@@ -3936,7 +3780,7 @@
},
"parse-asn1": {
"version": "5.1.1",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
+ "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
"integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==",
"dev": true,
"requires": {
@@ -4165,7 +4009,7 @@
},
"public-encrypt": {
"version": "4.0.2",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
+ "resolved": "http://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
"integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==",
"dev": true,
"requires": {
@@ -4250,15 +4094,14 @@
}
},
"readdirp": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
- "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.1.2",
- "minimatch": "^3.0.2",
- "readable-stream": "^2.0.2",
- "set-immediate-shim": "^1.0.1"
+ "graceful-fs": "^4.1.11",
+ "micromatch": "^3.1.10",
+ "readable-stream": "^2.0.2"
}
},
"regenerate": {
@@ -4388,16 +4231,6 @@
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
"dev": true
},
- "restore-cursor": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
- "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
- "dev": true,
- "requires": {
- "onetime": "^2.0.0",
- "signal-exit": "^3.0.2"
- }
- },
"ret": {
"version": "0.1.15",
"resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
@@ -4423,15 +4256,6 @@
"inherits": "^2.0.1"
}
},
- "run-async": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
- "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
- "dev": true,
- "requires": {
- "is-promise": "^2.1.0"
- }
- },
"run-queue": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
@@ -4441,15 +4265,6 @@
"aproba": "^1.1.1"
}
},
- "rxjs": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz",
- "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==",
- "dev": true,
- "requires": {
- "tslib": "^1.9.0"
- }
- },
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
@@ -4465,12 +4280,6 @@
"ret": "~0.1.10"
}
},
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
- },
"schema-utils": {
"version": "0.4.5",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz",
@@ -4499,12 +4308,6 @@
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
"dev": true
},
- "set-immediate-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
- "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
- "dev": true
- },
"set-value": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
@@ -4536,7 +4339,7 @@
},
"sha.js": {
"version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+ "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"dev": true,
"requires": {
@@ -4859,12 +4662,6 @@
"integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==",
"dev": true
},
- "through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
- "dev": true
- },
"through2": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
@@ -4884,15 +4681,6 @@
"setimmediate": "^1.0.4"
}
},
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "dev": true,
- "requires": {
- "os-tmpdir": "~1.0.2"
- }
- },
"to-arraybuffer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
@@ -4954,9 +4742,9 @@
"dev": true
},
"tslib": {
- "version": "1.9.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.2.tgz",
- "integrity": "sha512-AVP5Xol3WivEr7hnssHDsaM+lVrVXWUvd1cfXTRkTj80b//6g2wIFEH6hZG0muGZRnHGrfttpdzRk3YlBkWjKw==",
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz",
+ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==",
"dev": true
},
"tty-browserify": {
@@ -5055,18 +4843,18 @@
"dev": true
},
"unique-filename": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz",
- "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
+ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
"dev": true,
"requires": {
"unique-slug": "^2.0.0"
}
},
"unique-slug": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz",
- "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz",
+ "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==",
"dev": true,
"requires": {
"imurmurhash": "^0.1.4"
@@ -5173,9 +4961,9 @@
"dev": true
},
"v8-compile-cache": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.0.tgz",
- "integrity": "sha512-qNdTUMaCjPs4eEnM3W9H94R3sU70YCuT+/ST7nUf+id1bVOrdjrpUaeZLqPBPRph3hsgn4a4BvwpxhHZx+oSDg==",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz",
+ "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==",
"dev": true
},
"vm-browserify": {
@@ -5193,15 +4981,15 @@
"integrity": "sha512-mFbcWoDIJi0w0Za4emyLiW72Jae0yjANHbCVquMKijcavBGypqlF7zHRgMa5k4sesdv7hv2rB4JPdZfR+TPfhQ=="
},
"vue-hot-reload-api": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.0.tgz",
- "integrity": "sha512-2j/t+wIbyVMP5NvctQoSUvLkYKoWAAk2QlQiilrM2a6/ulzFgdcLUJfTvs4XQ/3eZhHiBmmEojbjmM4AzZj8JA==",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.1.tgz",
+ "integrity": "sha512-AA86yKZ5uOKz87/q1UpngEXhbRkaYg1b7HMMVRobNV1IVKqZe8oLIzo6iMocVwZXnYitlGwf2k4ZRLOZlS8oPQ==",
"dev": true
},
"vue-loader": {
- "version": "15.2.6",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.2.6.tgz",
- "integrity": "sha512-pArIvo89q3rBgYsDzc/EQoqJZH4lTiH5RJa3AguwazdO/+gN7NDyu59UyEdVCc1h+67xZlah2viNAvk3JE3CMw==",
+ "version": "15.4.2",
+ "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.4.2.tgz",
+ "integrity": "sha512-nVV27GNIA9MeoD8yQ3dkUzwlAaAsWeYSWZHsu/K04KCD339lW0Jv2sJWsjj3721SP7sl2lYdPmjcHgkWQSp5bg==",
"dev": true,
"requires": {
"@vue/component-compiler-utils": "^2.0.0",
@@ -5212,9 +5000,9 @@
}
},
"vue-style-loader": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.1.tgz",
- "integrity": "sha512-GD9a3G9k2dIGYl76IgwNQGCos3KnVbOVBIdXEIfjis0jNY34oEB2Tsrq2ZXl/KIzo/5Bdt7qAWjU1y+0TWcvIA==",
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz",
+ "integrity": "sha512-0ip8ge6Gzz/Bk0iHovU9XAUQaFt/G2B61bnWa2tCcqqdgfHs1lF9xXorFbE55Gmy92okFT+8bfmySuUOu13vxQ==",
"dev": true,
"requires": {
"hash-sum": "^1.0.2",
@@ -5249,16 +5037,15 @@
}
},
"webpack": {
- "version": "4.17.2",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.17.2.tgz",
- "integrity": "sha512-hCK8FPco2Paz9FVMlo3ZdVd7Jsr7qxoiEwhd7f4dMaWBLZtc7E+/9QNee4CYHlVSvpmspWBnhFpx4MiWSl3nNg==",
+ "version": "4.19.1",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.19.1.tgz",
+ "integrity": "sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-module-context": "1.5.13",
- "@webassemblyjs/wasm-edit": "1.5.13",
- "@webassemblyjs/wasm-opt": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-module-context": "1.7.6",
+ "@webassemblyjs/wasm-edit": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6",
"acorn": "^5.6.2",
"acorn-dynamic-import": "^3.0.0",
"ajv": "^6.1.0",
@@ -5275,29 +5062,36 @@
"neo-async": "^2.5.0",
"node-libs-browser": "^2.0.0",
"schema-utils": "^0.4.4",
- "tapable": "^1.0.0",
+ "tapable": "^1.1.0",
"uglifyjs-webpack-plugin": "^1.2.4",
"watchpack": "^1.5.0",
"webpack-sources": "^1.2.0"
+ },
+ "dependencies": {
+ "tapable": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz",
+ "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==",
+ "dev": true
+ }
}
},
"webpack-cli": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.0.tgz",
- "integrity": "sha512-p5NeKDtYwjZozUWq6kGNs9w+Gtw/CPvyuXjXn2HMdz8Tie+krjEg8oAtonvIyITZdvpF7XG9xDHwscLr2c+ugQ==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.1.tgz",
+ "integrity": "sha512-th5EUyVeGcAAVlFOcJg11fapD/xoLRE4j/eSfrmMAo3olPjvB7lgEPUtCbRP0OGmstvnQBl4VZP+zluXWDiBxg==",
"dev": true,
"requires": {
"chalk": "^2.4.1",
"cross-spawn": "^6.0.5",
- "enhanced-resolve": "^4.0.0",
- "global-modules-path": "^2.1.0",
- "import-local": "^1.0.0",
- "inquirer": "^6.0.0",
+ "enhanced-resolve": "^4.1.0",
+ "global-modules-path": "^2.3.0",
+ "import-local": "^2.0.0",
"interpret": "^1.1.0",
"loader-utils": "^1.1.0",
- "supports-color": "^5.4.0",
- "v8-compile-cache": "^2.0.0",
- "yargs": "^12.0.1"
+ "supports-color": "^5.5.0",
+ "v8-compile-cache": "^2.0.2",
+ "yargs": "^12.0.2"
},
"dependencies": {
"ansi-styles": {
@@ -5321,9 +5115,9 @@
}
},
"supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
"requires": {
"has-flag": "^3.0.0"
@@ -5341,9 +5135,9 @@
}
},
"webpack-sources": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz",
- "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==",
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz",
+ "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==",
"dev": true,
"requires": {
"source-list-map": "^2.0.0",
@@ -5445,16 +5239,16 @@
"dev": true
},
"yargs": {
- "version": "12.0.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.1.tgz",
- "integrity": "sha512-B0vRAp1hRX4jgIOWFtjfNjd9OA9RWYZ6tqGA9/I/IrTMsxmKvtWy+ersM+jzpQqbC3YfLzeABPdeTgcJ9eu1qQ==",
+ "version": "12.0.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz",
+ "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==",
"dev": true,
"requires": {
"cliui": "^4.0.0",
"decamelize": "^2.0.0",
"find-up": "^3.0.0",
"get-caller-file": "^1.0.1",
- "os-locale": "^2.0.0",
+ "os-locale": "^3.0.0",
"require-directory": "^2.1.1",
"require-main-filename": "^1.0.1",
"set-blocking": "^2.0.0",
diff --git a/apps/accessibility/package.json b/apps/accessibility/package.json
index 6ad160d12cd..b1374c19f53 100644
--- a/apps/accessibility/package.json
+++ b/apps/accessibility/package.json
@@ -24,10 +24,10 @@
"babel-preset-env": "^1.7.0",
"css-loader": "^1.0.0",
"file-loader": "^1.1.11",
- "vue-loader": "^15.2.6",
+ "vue-loader": "^15.4.2",
"vue-template-compiler": "^2.5.17",
- "webpack": "^4.17.2",
- "webpack-cli": "^3.1.0",
+ "webpack": "^4.19.1",
+ "webpack-cli": "^3.1.1",
"webpack-merge": "^4.1.4"
}
}
diff --git a/apps/comments/css/comments.scss b/apps/comments/css/comments.scss
index e3e5a210327..e631d6891ff 100644
--- a/apps/comments/css/comments.scss
+++ b/apps/comments/css/comments.scss
@@ -22,6 +22,9 @@
padding: 10px;
min-height: 44px;
margin: 0;
+
+ /* Prevent the text from overlapping with the submit button. */
+ padding-right: 30px;
}
#commentsTabView .newCommentForm {
@@ -251,3 +254,8 @@
.app-files .action-comment {
padding: 16px 14px;
}
+
+#commentsTabView .comment .message .contactsmenu-popover {
+ left: -6px;
+ top: 24px;
+}
diff --git a/apps/comments/js/commentstabview.js b/apps/comments/js/commentstabview.js
index 3c428fe86a6..28382c8b67e 100644
--- a/apps/comments/js/commentstabview.js
+++ b/apps/comments/js/commentstabview.js
@@ -442,14 +442,13 @@
return;
}
- $el.find('.avatar').each(function() {
- var avatar = $(this);
- var strong = $(this).next();
- var appendTo = $(this).parent();
-
- var username = $(this).data('username');
- if (username !== oc_current_user) {
- $.merge(avatar, strong).contactsMenu(avatar.data('user'), 0, appendTo);
+ $el.find('.avatar-name-wrapper').each(function() {
+ var $this = $(this);
+ var $avatar = $this.find('.avatar');
+
+ var user = $avatar.data('user');
+ if (user !== OC.getCurrentUser().uid) {
+ $this.contactsMenu(user, 0, $this);
}
});
},
diff --git a/apps/comments/l10n/cs.js b/apps/comments/l10n/cs.js
index af49206e39f..36c213c304e 100644
--- a/apps/comments/l10n/cs.js
+++ b/apps/comments/l10n/cs.js
@@ -19,19 +19,19 @@ OC.L10N.register(
"Comment" : "Komentář",
"You commented" : "Okomentovali jste",
"%1$s commented" : "%1$s okomentován",
- "{author} commented" : "{author} okomentoval",
- "You commented on %1$s" : "Okomentoval(a) jste %1$s",
- "You commented on {file}" : "Okomentoval(a) jste {file}",
+ "{author} commented" : "{author} okomentoval(a)",
+ "You commented on %1$s" : "Okomentovali jste %1$s",
+ "You commented on {file}" : "Okomentovali jste {file}",
"%1$s commented on %2$s" : "%1$s okomentoval %2$s",
"{author} commented on {file}" : "{author} okomentoval(a) {file}",
"<strong>Comments</strong> for files" : "<strong>Komentáře</strong> souborů",
- "You were mentioned on “%s”, in a comment by a user that has since been deleted" : "Byli jste zmíněni v “%s”, v komentáři od uživatele, který byl později smazán",
+ "You were mentioned on “%s”, in a comment by a user that has since been deleted" : "Byli jste zmíněni v „%s“, v komentáři od uživatele, který byl později smazán",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Byli jste zmíněni v souboru “{file}”, v komentáři od uživatele, který byl později smazán",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s vás zmínil(a) v komentáři u %2$s",
- "{user} mentioned you in a comment on “{file}”" : "{user} vás zmínil v komentáři u “{file}”",
+ "{user} mentioned you in a comment on “{file}”" : "{user} vás zmínil(a) v komentáři u „{file}“",
"Files app plugin to add comments to files" : "Zásuvný modul do aplikace Soubory pro přidávání komentářů k souborům",
"Unknown user" : "Neznámý uživatel",
- "A (now) deleted user mentioned you in a comment on “%s”" : "A (now) deleted user mentioned you in a comment on “%s”",
- "A (now) deleted user mentioned you in a comment on “{file}”" : "Nyní již smazaný uživatel vás zmínil v komentáři u \"{file}\""
+ "A (now) deleted user mentioned you in a comment on “%s”" : "(Nyní) už smazaný uživatel vás zmínil v komentáři na „%s“.",
+ "A (now) deleted user mentioned you in a comment on “{file}”" : "Nyní už smazaný uživatel vás zmínil v komentáři u „{file}“"
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/comments/l10n/cs.json b/apps/comments/l10n/cs.json
index 390f13bf54c..2609925450f 100644
--- a/apps/comments/l10n/cs.json
+++ b/apps/comments/l10n/cs.json
@@ -17,19 +17,19 @@
"Comment" : "Komentář",
"You commented" : "Okomentovali jste",
"%1$s commented" : "%1$s okomentován",
- "{author} commented" : "{author} okomentoval",
- "You commented on %1$s" : "Okomentoval(a) jste %1$s",
- "You commented on {file}" : "Okomentoval(a) jste {file}",
+ "{author} commented" : "{author} okomentoval(a)",
+ "You commented on %1$s" : "Okomentovali jste %1$s",
+ "You commented on {file}" : "Okomentovali jste {file}",
"%1$s commented on %2$s" : "%1$s okomentoval %2$s",
"{author} commented on {file}" : "{author} okomentoval(a) {file}",
"<strong>Comments</strong> for files" : "<strong>Komentáře</strong> souborů",
- "You were mentioned on “%s”, in a comment by a user that has since been deleted" : "Byli jste zmíněni v “%s”, v komentáři od uživatele, který byl později smazán",
+ "You were mentioned on “%s”, in a comment by a user that has since been deleted" : "Byli jste zmíněni v „%s“, v komentáři od uživatele, který byl později smazán",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Byli jste zmíněni v souboru “{file}”, v komentáři od uživatele, který byl později smazán",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s vás zmínil(a) v komentáři u %2$s",
- "{user} mentioned you in a comment on “{file}”" : "{user} vás zmínil v komentáři u “{file}”",
+ "{user} mentioned you in a comment on “{file}”" : "{user} vás zmínil(a) v komentáři u „{file}“",
"Files app plugin to add comments to files" : "Zásuvný modul do aplikace Soubory pro přidávání komentářů k souborům",
"Unknown user" : "Neznámý uživatel",
- "A (now) deleted user mentioned you in a comment on “%s”" : "A (now) deleted user mentioned you in a comment on “%s”",
- "A (now) deleted user mentioned you in a comment on “{file}”" : "Nyní již smazaný uživatel vás zmínil v komentáři u \"{file}\""
+ "A (now) deleted user mentioned you in a comment on “%s”" : "(Nyní) už smazaný uživatel vás zmínil v komentáři na „%s“.",
+ "A (now) deleted user mentioned you in a comment on “{file}”" : "Nyní už smazaný uživatel vás zmínil v komentáři u „{file}“"
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/comments/l10n/nl.js b/apps/comments/l10n/nl.js
index 91c3b209b8e..95be9f96133 100644
--- a/apps/comments/l10n/nl.js
+++ b/apps/comments/l10n/nl.js
@@ -29,6 +29,7 @@ OC.L10N.register(
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Je werd vermeld op \"{file}\" in een reactie door een sindsdien verwijderde gebruiker",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s vermeldde jou in een reactie op “%2$s\"",
"{user} mentioned you in a comment on “{file}”" : "{user} heeft je vermeld in een reactie op “{file}\"",
+ "Files app plugin to add comments to files" : "Bestanden app plugin om reacties aan bestanden toe te voegen",
"Unknown user" : "Onbekende gebruiker",
"A (now) deleted user mentioned you in a comment on “%s”" : "Een (nu) verwijderde gebruiker vermeldde je in een reactie op \"%s\"",
"A (now) deleted user mentioned you in a comment on “{file}”" : "Een (nu) verwijderde gebruiker vermeldde je in een reactie op \"{file}\""
diff --git a/apps/comments/l10n/nl.json b/apps/comments/l10n/nl.json
index 5c91038f6cb..e91b4b10d4a 100644
--- a/apps/comments/l10n/nl.json
+++ b/apps/comments/l10n/nl.json
@@ -27,6 +27,7 @@
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Je werd vermeld op \"{file}\" in een reactie door een sindsdien verwijderde gebruiker",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s vermeldde jou in een reactie op “%2$s\"",
"{user} mentioned you in a comment on “{file}”" : "{user} heeft je vermeld in een reactie op “{file}\"",
+ "Files app plugin to add comments to files" : "Bestanden app plugin om reacties aan bestanden toe te voegen",
"Unknown user" : "Onbekende gebruiker",
"A (now) deleted user mentioned you in a comment on “%s”" : "Een (nu) verwijderde gebruiker vermeldde je in een reactie op \"%s\"",
"A (now) deleted user mentioned you in a comment on “{file}”" : "Een (nu) verwijderde gebruiker vermeldde je in een reactie op \"{file}\""
diff --git a/apps/comments/l10n/pl.js b/apps/comments/l10n/pl.js
index cbdcdc55ec4..7ba03a37f81 100644
--- a/apps/comments/l10n/pl.js
+++ b/apps/comments/l10n/pl.js
@@ -29,6 +29,7 @@ OC.L10N.register(
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Zostałeś/aś wspomniany/a w \"{file}\" w komentarzach przez użytkownika, który został usunięty",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s wspomniał/-a o Tobie w komentarzu “%2$s”",
"{user} mentioned you in a comment on “{file}”" : "{user} wspomniał/-a o Tobie w komentarzu “{file}”",
+ "Files app plugin to add comments to files" : "Plugin umożliwiający dodawanie komentarzy w aplikacji Pliki",
"Unknown user" : "Nieznany użytkownik",
"A (now) deleted user mentioned you in a comment on “%s”" : "Pewien (obecnie) usunięty użytkownik wspomniał o Tobie w komentarzu “%s”",
"A (now) deleted user mentioned you in a comment on “{file}”" : "Pewien (obecnie) usunięty użytkownik wspomniał o Tobie w komentarzu “{file}”"
diff --git a/apps/comments/l10n/pl.json b/apps/comments/l10n/pl.json
index 04622030a16..79eecfa0293 100644
--- a/apps/comments/l10n/pl.json
+++ b/apps/comments/l10n/pl.json
@@ -27,6 +27,7 @@
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Zostałeś/aś wspomniany/a w \"{file}\" w komentarzach przez użytkownika, który został usunięty",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s wspomniał/-a o Tobie w komentarzu “%2$s”",
"{user} mentioned you in a comment on “{file}”" : "{user} wspomniał/-a o Tobie w komentarzu “{file}”",
+ "Files app plugin to add comments to files" : "Plugin umożliwiający dodawanie komentarzy w aplikacji Pliki",
"Unknown user" : "Nieznany użytkownik",
"A (now) deleted user mentioned you in a comment on “%s”" : "Pewien (obecnie) usunięty użytkownik wspomniał o Tobie w komentarzu “%s”",
"A (now) deleted user mentioned you in a comment on “{file}”" : "Pewien (obecnie) usunięty użytkownik wspomniał o Tobie w komentarzu “{file}”"
diff --git a/apps/comments/l10n/sl.js b/apps/comments/l10n/sl.js
index 7b2667e658f..a6714b982b2 100644
--- a/apps/comments/l10n/sl.js
+++ b/apps/comments/l10n/sl.js
@@ -8,7 +8,7 @@ OC.L10N.register(
"Cancel" : "Prekliči",
"[Deleted user]" : "[Izbrisan uporabnik]",
"Comments" : "Opombe",
- "No comments yet, start the conversation!" : "Še ni komentarjev, začni debato!",
+ "No comments yet, start the conversation!" : "Ni še odzivov, bodite prvi!",
"More comments …" : "Več komentarjev ....",
"Save" : "Shrani",
"Allowed characters {count} of {max}" : "Dovoljeni znaki: {count} od {max}",
diff --git a/apps/comments/l10n/sl.json b/apps/comments/l10n/sl.json
index 36b8c18a571..9e8dd148a28 100644
--- a/apps/comments/l10n/sl.json
+++ b/apps/comments/l10n/sl.json
@@ -6,7 +6,7 @@
"Cancel" : "Prekliči",
"[Deleted user]" : "[Izbrisan uporabnik]",
"Comments" : "Opombe",
- "No comments yet, start the conversation!" : "Še ni komentarjev, začni debato!",
+ "No comments yet, start the conversation!" : "Ni še odzivov, bodite prvi!",
"More comments …" : "Več komentarjev ....",
"Save" : "Shrani",
"Allowed characters {count} of {max}" : "Dovoljeni znaki: {count} od {max}",
diff --git a/apps/comments/l10n/zh_CN.js b/apps/comments/l10n/zh_CN.js
index bca98d9451a..c7e6f1e824f 100644
--- a/apps/comments/l10n/zh_CN.js
+++ b/apps/comments/l10n/zh_CN.js
@@ -29,6 +29,7 @@ OC.L10N.register(
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "您在 “{file}” 上一名用户的评论中被提到过,该用户在那之后被删除了",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s 在 “%2$s” 的评论中提到了您",
"{user} mentioned you in a comment on “{file}”" : "{user} 在 “{file}” 的评论中提到了您",
+ "Files app plugin to add comments to files" : "文件应用插件用于为文件添加注释",
"Unknown user" : "未知用户",
"A (now) deleted user mentioned you in a comment on “%s”" : "一个(已)被删除的用户在 “%s” 的评论中提到了您",
"A (now) deleted user mentioned you in a comment on “{file}”" : "一个(已)被删除的用户在 “{file}” 的评论中提到了您"
diff --git a/apps/comments/l10n/zh_CN.json b/apps/comments/l10n/zh_CN.json
index e576a340cfe..333b305af5a 100644
--- a/apps/comments/l10n/zh_CN.json
+++ b/apps/comments/l10n/zh_CN.json
@@ -27,6 +27,7 @@
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "您在 “{file}” 上一名用户的评论中被提到过,该用户在那之后被删除了",
"%1$s mentioned you in a comment on “%2$s”" : "%1$s 在 “%2$s” 的评论中提到了您",
"{user} mentioned you in a comment on “{file}”" : "{user} 在 “{file}” 的评论中提到了您",
+ "Files app plugin to add comments to files" : "文件应用插件用于为文件添加注释",
"Unknown user" : "未知用户",
"A (now) deleted user mentioned you in a comment on “%s”" : "一个(已)被删除的用户在 “%s” 的评论中提到了您",
"A (now) deleted user mentioned you in a comment on “{file}”" : "一个(已)被删除的用户在 “{file}” 的评论中提到了您"
diff --git a/apps/dav/l10n/bg.js b/apps/dav/l10n/bg.js
index 85bbca23def..465507d1d9c 100644
--- a/apps/dav/l10n/bg.js
+++ b/apps/dav/l10n/bg.js
@@ -5,21 +5,23 @@ OC.L10N.register(
"Todos" : "Задачи",
"Personal" : "Личен",
"{actor} created calendar {calendar}" : "{actor} направи календар {calendar}",
- "You created calendar {calendar}" : "Направихте календар {calendar}",
+ "You created calendar {calendar}" : "Създадохте календара {calendar}",
"{actor} deleted calendar {calendar}" : "{actor} изтри календар {calendar}",
"You deleted calendar {calendar}" : "Изтрихте календар {calendar}",
"{actor} updated calendar {calendar}" : "{actor} обнови календар {calendar}",
"You updated calendar {calendar}" : "Обновихте календар {calendar}",
- "{actor} shared calendar {calendar} with you" : "{actor} сподели календар {calendar} с теб",
- "You shared calendar {calendar} with {user}" : "Споделихте календар {calendar} с {user}",
+ "You shared calendar {calendar} as public link" : "Споделихте календара {calendar} с публична връзка",
+ "You removed public link for calendar {calendar}" : "Премахнахте публична връзка към календара {calendar}",
+ "{actor} shared calendar {calendar} with you" : "{actor} сподели календара {calendar} с вас",
+ "You shared calendar {calendar} with {user}" : "Споделихте календара {calendar} с {user}",
"{actor} shared calendar {calendar} with {user}" : "{actor} сподели календар {calendar} с {user}",
- "{actor} unshared calendar {calendar} from you" : "{actor} отказа споделяне на календар {calendar} с теб",
- "You unshared calendar {calendar} from {user}" : "Отказахте споделяне на календар {calendar} от {user}",
+ "{actor} unshared calendar {calendar} from you" : "{actor} отказа споделянето на календара {calendar} с вас",
+ "You unshared calendar {calendar} from {user}" : "Отказахте споделянето на календара {calendar} от {user}",
"{actor} unshared calendar {calendar} from {user}" : "{actor} отказа споделяне на календар {calendar} от {user}",
"{actor} unshared calendar {calendar} from themselves" : "{actor} отказа споделяне на календар {calendar} от себеси",
- "You shared calendar {calendar} with group {group}" : "Споделихте календар {calendar} с група {group}",
+ "You shared calendar {calendar} with group {group}" : "Споделихте календара {calendar} с група {group}",
"{actor} shared calendar {calendar} with group {group}" : "{actor} сподели календар {calendar} с група {group}",
- "You unshared calendar {calendar} from group {group}" : "Отказахте споделяне на календар {calendar} от група {group}",
+ "You unshared calendar {calendar} from group {group}" : "Отказахте споделянето на календара {calendar} от група {group}",
"{actor} unshared calendar {calendar} from group {group}" : "{actor} отказа споделяне с календар {calendar} от група {group}",
"{actor} created event {event} in calendar {calendar}" : "{actor} създаде събитие {event} в календар {calendar}",
"You created event {event} in calendar {calendar}" : "Създадохте събитие {event} в календар {calendar}",
diff --git a/apps/dav/l10n/bg.json b/apps/dav/l10n/bg.json
index cac7c6af183..0780475671e 100644
--- a/apps/dav/l10n/bg.json
+++ b/apps/dav/l10n/bg.json
@@ -3,21 +3,23 @@
"Todos" : "Задачи",
"Personal" : "Личен",
"{actor} created calendar {calendar}" : "{actor} направи календар {calendar}",
- "You created calendar {calendar}" : "Направихте календар {calendar}",
+ "You created calendar {calendar}" : "Създадохте календара {calendar}",
"{actor} deleted calendar {calendar}" : "{actor} изтри календар {calendar}",
"You deleted calendar {calendar}" : "Изтрихте календар {calendar}",
"{actor} updated calendar {calendar}" : "{actor} обнови календар {calendar}",
"You updated calendar {calendar}" : "Обновихте календар {calendar}",
- "{actor} shared calendar {calendar} with you" : "{actor} сподели календар {calendar} с теб",
- "You shared calendar {calendar} with {user}" : "Споделихте календар {calendar} с {user}",
+ "You shared calendar {calendar} as public link" : "Споделихте календара {calendar} с публична връзка",
+ "You removed public link for calendar {calendar}" : "Премахнахте публична връзка към календара {calendar}",
+ "{actor} shared calendar {calendar} with you" : "{actor} сподели календара {calendar} с вас",
+ "You shared calendar {calendar} with {user}" : "Споделихте календара {calendar} с {user}",
"{actor} shared calendar {calendar} with {user}" : "{actor} сподели календар {calendar} с {user}",
- "{actor} unshared calendar {calendar} from you" : "{actor} отказа споделяне на календар {calendar} с теб",
- "You unshared calendar {calendar} from {user}" : "Отказахте споделяне на календар {calendar} от {user}",
+ "{actor} unshared calendar {calendar} from you" : "{actor} отказа споделянето на календара {calendar} с вас",
+ "You unshared calendar {calendar} from {user}" : "Отказахте споделянето на календара {calendar} от {user}",
"{actor} unshared calendar {calendar} from {user}" : "{actor} отказа споделяне на календар {calendar} от {user}",
"{actor} unshared calendar {calendar} from themselves" : "{actor} отказа споделяне на календар {calendar} от себеси",
- "You shared calendar {calendar} with group {group}" : "Споделихте календар {calendar} с група {group}",
+ "You shared calendar {calendar} with group {group}" : "Споделихте календара {calendar} с група {group}",
"{actor} shared calendar {calendar} with group {group}" : "{actor} сподели календар {calendar} с група {group}",
- "You unshared calendar {calendar} from group {group}" : "Отказахте споделяне на календар {calendar} от група {group}",
+ "You unshared calendar {calendar} from group {group}" : "Отказахте споделянето на календара {calendar} от група {group}",
"{actor} unshared calendar {calendar} from group {group}" : "{actor} отказа споделяне с календар {calendar} от група {group}",
"{actor} created event {event} in calendar {calendar}" : "{actor} създаде събитие {event} в календар {calendar}",
"You created event {event} in calendar {calendar}" : "Създадохте събитие {event} в календар {calendar}",
diff --git a/apps/dav/l10n/cs.js b/apps/dav/l10n/cs.js
index cc02c8fcea4..77553bd7d13 100644
--- a/apps/dav/l10n/cs.js
+++ b/apps/dav/l10n/cs.js
@@ -10,18 +10,18 @@ OC.L10N.register(
"You deleted calendar {calendar}" : "Smazali jste kalendář {calendar}",
"{actor} updated calendar {calendar}" : "{actor} aktualizoval(a) kalendář {calendar}",
"You updated calendar {calendar}" : "Aktualizovali jste kalendář {calendar}",
- "You shared calendar {calendar} as public link" : "Sdílel(a) jste kalendář {calendar} jako veřejný odkaz",
- "You removed public link for calendar {calendar}" : "Odstranil(a) jste veřejný odkaz pro kalendář {calendar} ",
+ "You shared calendar {calendar} as public link" : "Sdíleli jste kalendář {calendar} jako veřejný odkaz",
+ "You removed public link for calendar {calendar}" : "Odstranili jste veřejný odkaz pro kalendář {calendar} ",
"{actor} shared calendar {calendar} with you" : "{actor} s vámi nasdílel(a) kalendář {calendar}",
"You shared calendar {calendar} with {user}" : "S uživatelem {user} jste začali sdílet kalendář {calendar}",
- "{actor} shared calendar {calendar} with {user}" : "{actor} začal sdílet kalendář {calendar} s uživatelem {user}",
+ "{actor} shared calendar {calendar} with {user}" : "{actor} začal(a) sdílet kalendář {calendar} s uživatelem {user}",
"{actor} unshared calendar {calendar} from you" : "{actor} s vámi přestal(a) sdílet kalendář {calendar}",
"You unshared calendar {calendar} from {user}" : "S uživatelem {user} jste přestal(a) sdílet kalendář {calendar}",
"{actor} unshared calendar {calendar} from {user}" : "{actor} přestal(a) sdílet kalendář {calendar} s uživatelem {user}",
"{actor} unshared calendar {calendar} from themselves" : "{actor} přestal sdílet kalendář {calendar} sám se sebou",
- "You shared calendar {calendar} with group {group}" : "Se skupinou {group} jste začal(a) sdílet kalendář {calendar}",
+ "You shared calendar {calendar} with group {group}" : "Se skupinou {group} jste začali sdílet kalendář {calendar}",
"{actor} shared calendar {calendar} with group {group}" : "{actor} nasdílel(a) kalendář {calendar} skupině {group}",
- "You unshared calendar {calendar} from group {group}" : "Zrušil(a) jste sdílení kalendáře {calendar} skupině {group}",
+ "You unshared calendar {calendar} from group {group}" : "Zrušili jste sdílení kalendáře {calendar} skupině {group}",
"{actor} unshared calendar {calendar} from group {group}" : "{actor} přestal(a) sdílet kalendář {calendar} se skupinou {group}",
"{actor} created event {event} in calendar {calendar}" : "{actor} vytvořil(a) událost {event} v kalendáři {calendar}",
"You created event {event} in calendar {calendar}" : "V kalendáři {calendar} jste vytvořil(a) událost {event}",
@@ -48,8 +48,8 @@ OC.L10N.register(
"Hello %s," : "Dobrý den %s,",
"The meeting »%s« with %s was canceled." : "Setkání »%s« s %s bylo zrušeno.",
"Invitation updated" : "Pozvánka aktualizována",
- "The meeting »%s« with %s was updated." : "Setkání »%s« s %s bylo aktualizováno.",
- "%s invited you to »%s«" : "%s vás zve na »%s«",
+ "The meeting »%s« with %s was updated." : "Setkání „%s“ s %s bylo aktualizováno.",
+ "%s invited you to »%s«" : "%s vás zve na „%s“",
"When:" : "Kdy:",
"Where:" : "Kde:",
"Description:" : "Popis:",
@@ -60,9 +60,10 @@ OC.L10N.register(
"More options at %s" : "Další volby viz %s",
"Contacts" : "Kontakty",
"WebDAV" : "WebDAV",
- "Technical details" : "Technické detaily",
+ "WebDAV endpoint" : "WebDAV endpoint",
+ "Technical details" : "Technické podrobnosti",
"Remote Address: %s" : "Vzdálená adresa: %s",
- "Request ID: %s" : "ID požadavku: %s",
+ "Request ID: %s" : "Identif. požadavku: %s",
"There was an error updating your attendance status." : "Vyskytla se chyba při aktualizaci Vašeho stavu.",
"Please contact the organizer directly." : "Kontaktujte organizátora přímo.",
"Are you accepting the invitation?" : "Přijímáte pozvání?",
diff --git a/apps/dav/l10n/cs.json b/apps/dav/l10n/cs.json
index d6eaab7cf69..60fcc70611b 100644
--- a/apps/dav/l10n/cs.json
+++ b/apps/dav/l10n/cs.json
@@ -8,18 +8,18 @@
"You deleted calendar {calendar}" : "Smazali jste kalendář {calendar}",
"{actor} updated calendar {calendar}" : "{actor} aktualizoval(a) kalendář {calendar}",
"You updated calendar {calendar}" : "Aktualizovali jste kalendář {calendar}",
- "You shared calendar {calendar} as public link" : "Sdílel(a) jste kalendář {calendar} jako veřejný odkaz",
- "You removed public link for calendar {calendar}" : "Odstranil(a) jste veřejný odkaz pro kalendář {calendar} ",
+ "You shared calendar {calendar} as public link" : "Sdíleli jste kalendář {calendar} jako veřejný odkaz",
+ "You removed public link for calendar {calendar}" : "Odstranili jste veřejný odkaz pro kalendář {calendar} ",
"{actor} shared calendar {calendar} with you" : "{actor} s vámi nasdílel(a) kalendář {calendar}",
"You shared calendar {calendar} with {user}" : "S uživatelem {user} jste začali sdílet kalendář {calendar}",
- "{actor} shared calendar {calendar} with {user}" : "{actor} začal sdílet kalendář {calendar} s uživatelem {user}",
+ "{actor} shared calendar {calendar} with {user}" : "{actor} začal(a) sdílet kalendář {calendar} s uživatelem {user}",
"{actor} unshared calendar {calendar} from you" : "{actor} s vámi přestal(a) sdílet kalendář {calendar}",
"You unshared calendar {calendar} from {user}" : "S uživatelem {user} jste přestal(a) sdílet kalendář {calendar}",
"{actor} unshared calendar {calendar} from {user}" : "{actor} přestal(a) sdílet kalendář {calendar} s uživatelem {user}",
"{actor} unshared calendar {calendar} from themselves" : "{actor} přestal sdílet kalendář {calendar} sám se sebou",
- "You shared calendar {calendar} with group {group}" : "Se skupinou {group} jste začal(a) sdílet kalendář {calendar}",
+ "You shared calendar {calendar} with group {group}" : "Se skupinou {group} jste začali sdílet kalendář {calendar}",
"{actor} shared calendar {calendar} with group {group}" : "{actor} nasdílel(a) kalendář {calendar} skupině {group}",
- "You unshared calendar {calendar} from group {group}" : "Zrušil(a) jste sdílení kalendáře {calendar} skupině {group}",
+ "You unshared calendar {calendar} from group {group}" : "Zrušili jste sdílení kalendáře {calendar} skupině {group}",
"{actor} unshared calendar {calendar} from group {group}" : "{actor} přestal(a) sdílet kalendář {calendar} se skupinou {group}",
"{actor} created event {event} in calendar {calendar}" : "{actor} vytvořil(a) událost {event} v kalendáři {calendar}",
"You created event {event} in calendar {calendar}" : "V kalendáři {calendar} jste vytvořil(a) událost {event}",
@@ -46,8 +46,8 @@
"Hello %s," : "Dobrý den %s,",
"The meeting »%s« with %s was canceled." : "Setkání »%s« s %s bylo zrušeno.",
"Invitation updated" : "Pozvánka aktualizována",
- "The meeting »%s« with %s was updated." : "Setkání »%s« s %s bylo aktualizováno.",
- "%s invited you to »%s«" : "%s vás zve na »%s«",
+ "The meeting »%s« with %s was updated." : "Setkání „%s“ s %s bylo aktualizováno.",
+ "%s invited you to »%s«" : "%s vás zve na „%s“",
"When:" : "Kdy:",
"Where:" : "Kde:",
"Description:" : "Popis:",
@@ -58,9 +58,10 @@
"More options at %s" : "Další volby viz %s",
"Contacts" : "Kontakty",
"WebDAV" : "WebDAV",
- "Technical details" : "Technické detaily",
+ "WebDAV endpoint" : "WebDAV endpoint",
+ "Technical details" : "Technické podrobnosti",
"Remote Address: %s" : "Vzdálená adresa: %s",
- "Request ID: %s" : "ID požadavku: %s",
+ "Request ID: %s" : "Identif. požadavku: %s",
"There was an error updating your attendance status." : "Vyskytla se chyba při aktualizaci Vašeho stavu.",
"Please contact the organizer directly." : "Kontaktujte organizátora přímo.",
"Are you accepting the invitation?" : "Přijímáte pozvání?",
diff --git a/apps/dav/l10n/fi.js b/apps/dav/l10n/fi.js
index f6c72592b5e..7ec2e134cb3 100644
--- a/apps/dav/l10n/fi.js
+++ b/apps/dav/l10n/fi.js
@@ -55,6 +55,7 @@ OC.L10N.register(
"Link:" : "Linkki:",
"Accept" : "Hyväksy",
"Decline" : "Kieltäydy",
+ "More options …" : "Lisää valintoja…",
"Contacts" : "Yhteystiedot",
"WebDAV" : "WebDAV",
"Technical details" : "Tekniset yksityiskohdat",
@@ -65,6 +66,7 @@ OC.L10N.register(
"Are you accepting the invitation?" : "Hyväksytkö kutsun?",
"Save" : "Tallenna",
"Your attendance was updated successfully." : "Osallistumisesi päivitettiin onnistuneesti.",
+ "Calendar server" : "Kalenteripalvelin",
"Send invitations to attendees" : "Lähetä kutsut osallistujille",
"Please make sure to properly set up the email settings above." : "Varmista, että määrität sähköpostiasetukset oikein yläpuolelle. ",
"Automatically generate a birthday calendar" : "Luo syntymäpäiväkalenteri automaattisesti",
diff --git a/apps/dav/l10n/fi.json b/apps/dav/l10n/fi.json
index abf1ca6f7e8..8acd17a4701 100644
--- a/apps/dav/l10n/fi.json
+++ b/apps/dav/l10n/fi.json
@@ -53,6 +53,7 @@
"Link:" : "Linkki:",
"Accept" : "Hyväksy",
"Decline" : "Kieltäydy",
+ "More options …" : "Lisää valintoja…",
"Contacts" : "Yhteystiedot",
"WebDAV" : "WebDAV",
"Technical details" : "Tekniset yksityiskohdat",
@@ -63,6 +64,7 @@
"Are you accepting the invitation?" : "Hyväksytkö kutsun?",
"Save" : "Tallenna",
"Your attendance was updated successfully." : "Osallistumisesi päivitettiin onnistuneesti.",
+ "Calendar server" : "Kalenteripalvelin",
"Send invitations to attendees" : "Lähetä kutsut osallistujille",
"Please make sure to properly set up the email settings above." : "Varmista, että määrität sähköpostiasetukset oikein yläpuolelle. ",
"Automatically generate a birthday calendar" : "Luo syntymäpäiväkalenteri automaattisesti",
diff --git a/apps/dav/l10n/nl.js b/apps/dav/l10n/nl.js
index 96878372422..0ba8fa81e11 100644
--- a/apps/dav/l10n/nl.js
+++ b/apps/dav/l10n/nl.js
@@ -60,6 +60,7 @@ OC.L10N.register(
"More options at %s" : "Meer opties op %s",
"Contacts" : "Contactpersonen",
"WebDAV" : "WebDAV",
+ "WebDAV endpoint" : "WebDAV eindpunt",
"Technical details" : "Technische details",
"Remote Address: %s" : "Extern adres: %s",
"Request ID: %s" : "Aanvraag-ID: %s",
diff --git a/apps/dav/l10n/nl.json b/apps/dav/l10n/nl.json
index d08d3f4cc26..057c00279a7 100644
--- a/apps/dav/l10n/nl.json
+++ b/apps/dav/l10n/nl.json
@@ -58,6 +58,7 @@
"More options at %s" : "Meer opties op %s",
"Contacts" : "Contactpersonen",
"WebDAV" : "WebDAV",
+ "WebDAV endpoint" : "WebDAV eindpunt",
"Technical details" : "Technische details",
"Remote Address: %s" : "Extern adres: %s",
"Request ID: %s" : "Aanvraag-ID: %s",
diff --git a/apps/dav/l10n/pl.js b/apps/dav/l10n/pl.js
index 6a3df2b920a..b57ad1f9dce 100644
--- a/apps/dav/l10n/pl.js
+++ b/apps/dav/l10n/pl.js
@@ -54,16 +54,28 @@ OC.L10N.register(
"Where:" : "Gdzie: ",
"Description:" : "Opis:",
"Link:" : "Link: ",
+ "Accept" : "Akceptuj",
+ "Decline" : "Odrzuć",
+ "More options …" : "Więcej opcji...",
+ "More options at %s" : "Więcej opcji na %s",
"Contacts" : "Kontakty",
"WebDAV" : "WebDAV",
+ "WebDAV endpoint" : "Adres WebDAV",
"Technical details" : "Szczegóły techniczne",
"Remote Address: %s" : "Adres zdalny: %s",
"Request ID: %s" : "ID żądania: %s",
+ "There was an error updating your attendance status." : "Wystąpił błąd zmiany stanu uczestnictwa",
+ "Please contact the organizer directly." : "Skontaktuj się bezpośrednio z orgnizatorem.",
"Are you accepting the invitation?" : "Czy akceptujesz zaproszenie?",
+ "Tentative" : "Niepewne",
"Save" : "Zapisz",
+ "Your attendance was updated successfully." : "Twoja obecność została zmieniona.",
+ "Calendar server" : "Serwer kalendarzy",
"Send invitations to attendees" : "Wyślij uczestnikom zaproszenia",
"Please make sure to properly set up the email settings above." : "Upewnij się, że dobrze skonfigurowano powyżej ustawienia poczty e-mail.",
"Automatically generate a birthday calendar" : "Automatycznie generuj kalendarz urodzin",
+ "Birthday calendars will be generated by a background job." : "Kalendarz urodzin będzie generowany przez zadanie w tle.",
+ "Hence they will not be available immediately after enabling but will show up after some time." : "W związku z tym, nie będą one widoczne bezpośrednio po włączeniu, ale pojawią się po jakimś czasie.",
"CalDAV server" : "Serwer CalDAV"
},
"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);");
diff --git a/apps/dav/l10n/pl.json b/apps/dav/l10n/pl.json
index 7f3f5a452a0..87d7dc9db98 100644
--- a/apps/dav/l10n/pl.json
+++ b/apps/dav/l10n/pl.json
@@ -52,16 +52,28 @@
"Where:" : "Gdzie: ",
"Description:" : "Opis:",
"Link:" : "Link: ",
+ "Accept" : "Akceptuj",
+ "Decline" : "Odrzuć",
+ "More options …" : "Więcej opcji...",
+ "More options at %s" : "Więcej opcji na %s",
"Contacts" : "Kontakty",
"WebDAV" : "WebDAV",
+ "WebDAV endpoint" : "Adres WebDAV",
"Technical details" : "Szczegóły techniczne",
"Remote Address: %s" : "Adres zdalny: %s",
"Request ID: %s" : "ID żądania: %s",
+ "There was an error updating your attendance status." : "Wystąpił błąd zmiany stanu uczestnictwa",
+ "Please contact the organizer directly." : "Skontaktuj się bezpośrednio z orgnizatorem.",
"Are you accepting the invitation?" : "Czy akceptujesz zaproszenie?",
+ "Tentative" : "Niepewne",
"Save" : "Zapisz",
+ "Your attendance was updated successfully." : "Twoja obecność została zmieniona.",
+ "Calendar server" : "Serwer kalendarzy",
"Send invitations to attendees" : "Wyślij uczestnikom zaproszenia",
"Please make sure to properly set up the email settings above." : "Upewnij się, że dobrze skonfigurowano powyżej ustawienia poczty e-mail.",
"Automatically generate a birthday calendar" : "Automatycznie generuj kalendarz urodzin",
+ "Birthday calendars will be generated by a background job." : "Kalendarz urodzin będzie generowany przez zadanie w tle.",
+ "Hence they will not be available immediately after enabling but will show up after some time." : "W związku z tym, nie będą one widoczne bezpośrednio po włączeniu, ale pojawią się po jakimś czasie.",
"CalDAV server" : "Serwer CalDAV"
},"pluralForm" :"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"
} \ No newline at end of file
diff --git a/apps/encryption/l10n/cs.js b/apps/encryption/l10n/cs.js
index bcefe840168..0fb04b0b228 100644
--- a/apps/encryption/l10n/cs.js
+++ b/apps/encryption/l10n/cs.js
@@ -1,28 +1,28 @@
OC.L10N.register(
"encryption",
{
- "Missing recovery key password" : "Chybí heslo klíče pro obnovu",
- "Please repeat the recovery key password" : "Zopakujte prosím heslo klíče pro obnovu",
- "Repeated recovery key password does not match the provided recovery key password" : "Zadaná hesla pro obnovu se neshodují",
+ "Missing recovery key password" : "Chybí heslo ke klíče pro obnovu",
+ "Please repeat the recovery key password" : "Zopakujte zadání hesla ke klíči, sloužícímu pro obnovu",
+ "Repeated recovery key password does not match the provided recovery key password" : "Zopakované zadání hesla ke klíči, sloužícímu pro obnovu, se neshoduje",
"Recovery key successfully enabled" : "Záchranný klíč byl úspěšně povolen",
- "Could not enable recovery key. Please check your recovery key password!" : "Nepodařilo se povolit záchranný klíč. Zkontrolujte prosím vaše heslo záchranného klíče!",
- "Recovery key successfully disabled" : "Záchranný klíč byl úspěšně zakázán",
- "Could not disable recovery key. Please check your recovery key password!" : "Nelze zakázat záchranný klíč. Zkontrolujte prosím heslo svého záchranného klíče!",
+ "Could not enable recovery key. Please check your recovery key password!" : "Nepodařilo se povolit záchranný klíč. Zkontrolujte své heslo k záchrannému klíči!",
+ "Recovery key successfully disabled" : "Záchranný klíč úspěšně zakázán",
+ "Could not disable recovery key. Please check your recovery key password!" : "Nedaří se zakázat záchranný klíč. Zkontrolujte zadání hesla k němu.",
"Missing parameters" : "Chybějící parametry",
"Please provide the old recovery password" : "Zadejte prosím staré heslo pro obnovu",
"Please provide a new recovery password" : "Zadejte prosím nové heslo pro obnovu",
- "Please repeat the new recovery password" : "Zopakujte prosím nové heslo pro obnovu",
+ "Please repeat the new recovery password" : "Zopakujte zadání nového hesla pro obnovu",
"Password successfully changed." : "Heslo bylo úspěšně změněno.",
"Could not change the password. Maybe the old password was not correct." : "Změna hesla se nezdařila. Pravděpodobně nebylo stávající heslo zadáno správně.",
"Recovery Key disabled" : "Záchranný klíč není povolen",
"Recovery Key enabled" : "Záchranný klíč povolen",
- "Could not enable the recovery key, please try again or contact your administrator" : "Nelze povolit záchranný klíč. Zkuste to prosím znovu nebo kontaktujte svého správce.",
+ "Could not enable the recovery key, please try again or contact your administrator" : "Nedaří se povolit záchranný klíč. Zkuste to znovu nebo se obraťte na svého správce.",
"Could not update the private key password." : "Nelze aktualizovat heslo soukromého klíče.",
- "The old password was not correct, please try again." : "Původní heslo nebylo zadáno správně, zkuste to prosím znovu.",
- "The current log-in password was not correct, please try again." : "Současné přihlašovací heslo nebylo zadáno správně, zkuste to prosím znovu.",
+ "The old password was not correct, please try again." : "Původní heslo nebylo zadáno správně, zkuste to znovu.",
+ "The current log-in password was not correct, please try again." : "Současné přihlašovací heslo nebylo zadáno správně, zkuste to znovu.",
"Private key password successfully updated." : "Heslo soukromého klíče úspěšně aktualizováno.",
"Invalid private key for encryption app. Please update your private key password in your personal settings to recover access to your encrypted files." : "Chybný soukromý klíč pro šifrovací aplikaci. Aktualizujte prosím heslo svého soukromého klíče v osobním nastavení, abyste znovu získali přístup ke svým zašifrovaným souborům.",
- "Encryption App is enabled, but your keys are not initialized. Please log-out and log-in again." : "Aplikace pro šifrování je zapnuta, ale vaše klíče nejsou inicializované. Prosím odhlaste se a znovu přihlaste.",
+ "Encryption App is enabled, but your keys are not initialized. Please log-out and log-in again." : "Aplikace pro šifrování je zapnuta, ale vaše klíče nejsou inicializované. Odhlaste se a znovu přihlaste.",
"Please enable server side encryption in the admin settings in order to use the encryption module." : "Chcete-li používat šifrovací modul, povolte prosím šifrování na straně serveru v nastavení administrátora.",
"Encryption app is enabled and ready" : "Aplikace šifrování je již povolena a připravena",
"Bad Signature" : "Špatný podpis",
@@ -32,11 +32,12 @@ OC.L10N.register(
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Soubor nelze načíst, pravděpodobně se jedná o sdílený soubor. Požádejte prosím vlastníka souboru, aby vám jej znovu sdílel.",
"Default encryption module" : "Výchozí šifrovací modul",
"Default encryption module for server-side encryption" : "Výchozí modul pro šifrování na straně serveru",
- "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Ahoj!\n\nAdministrátor povolil šifrování dat na serveru. Vaše soubory byly zašifrovány za použití hesla '%s'.\n\nPřihlašte se do webového rozhraní, přejděte do nastavení 'základního šifrovacího modulu' a aktualizujte šifrovací heslo zadáním hesla výše do pole 'původní přihlašovací heslo' a svého aktuálního přihlašovacího hesla.\n\n",
- "The share will expire on %s." : "Sdílení vyprší %s.",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Pro používání tohoto šifrovacího modulu je třeba zapnout šifrování na straně serveru\n\t\t ve správním nastavení. Jakmile je zapnutý, tento modul transparentně zašifruje\n\t\tvšechny vaše soubory. Šifrování je založeno na AES 256 klíčích.\n\t\tModul se nedotkne existujících souborů, zašifrovány budou pouze nové soubory\n\t\tpo zapnutí šifrování na straně serveru už není možné\n\t\tho zase vypnout a vrátit se k nešifrovanému systému.\n\t\tNež se rozhodnete zapnout šifrování na straně serveru\n\t\tpřečtěte si dokumentaci, abyste se seznámili se známými důsledky.",
+ "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Zdravíme,\n\nSprávce zapnul šifrování dat na straně serveru. Vaše soubory byly zašifrovány za použití hesla „%s“.\n\nPřihlaste se do webového rozhraní, přejděte do nastavení „základního šifrovacího modulu“ a aktualizujte šifrovací heslo zadáním hesla výše do kolonky „původní přihlašovací heslo“ a svého aktuálního přihlašovacího hesla.\n\n",
+ "The share will expire on %s." : "Platnost sdílení skončí %s.",
"Cheers!" : "Ať slouží!",
- "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Ahoj!<br><br>Administrátor povolil šifrování dat na serveru. Vaše soubory byly zašifrovány za použití hesla <strong>%s<strong>.<br><br>Přihlašte se do webového rozhraní, přejděte do nastavení \"základního šifrovacího modulu\" a aktualizujte šifrovací heslo zadáním hesla výše do pole \"původní přihlašovací heslo\" a svého aktuálního přihlašovacího hesla.<br><br>",
- "Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikace pro šifrování je zapnuta, ale šifrovací klíče ještě nejsou inicializované. Prosím odhlaste se a znovu se přihlaste",
+ "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Ahoj!<br><br>Administrátor povolil šifrování dat na serveru. Vaše soubory byly zašifrovány za použití hesla <strong>%s<strong>.<br><br>Přihlašte se do webového rozhraní, přejděte do nastavení „základního šifrovacího modulu“ a aktualizujte šifrovací heslo zadáním hesla výše do pole „původní přihlašovací heslo“ a svého aktuálního přihlašovacího hesla.<br><br>",
+ "Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikace pro šifrování je zapnuta, ale šifrovací klíče ještě nejsou inicializované. Odhlaste se a znovu se přihlaste",
"Encrypt the home storage" : "Zašifrovat domovské úložiště",
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Povolení tohoto nastavení zašifruje všechny soubory uložené v hlavním úložišti, jinak budou šifrovány pouze soubory na externích úložištích.",
"Enable recovery key" : "Povolit záchranný klíč",
@@ -54,12 +55,12 @@ OC.L10N.register(
"Set your old private key password to your current log-in password:" : "Změňte své staré heslo soukromého klíče na stejné, jako je vaše současné přihlašovací heslo:",
" If you don't remember your old password you can ask your administrator to recover your files." : "Pokud si nepamatujete své původní heslo, můžete požádat správce o obnovu vašich souborů.",
"Old log-in password" : "Původní přihlašovací heslo",
- "Current log-in password" : "Aktuální přihlašovací heslo",
- "Update Private Key Password" : "Změnit heslo soukromého klíče",
+ "Current log-in password" : "Stávající přihlašovací heslo",
+ "Update Private Key Password" : "Změnit heslo k soukromé části klíče",
"Enable password recovery:" : "Povolit obnovu hesla:",
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Zapnutí této volby vám umožní znovu získat přístup k vašim zašifrovaným souborům pokud ztratíte heslo",
"Enabled" : "Povoleno",
"Disabled" : "Zakázáno",
- "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please run 'occ encryption:migrate' or contact your administrator" : "Musíte přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Spusťte příkaz 'occ encryption:migrate' nebo kontaktujte svého administrátora."
+ "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please run 'occ encryption:migrate' or contact your administrator" : "Je třeba přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Spusťte příkaz 'occ encryption:migrate' nebo se obraťte na svého správce."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/encryption/l10n/cs.json b/apps/encryption/l10n/cs.json
index 99bb06a9e87..63779283f4d 100644
--- a/apps/encryption/l10n/cs.json
+++ b/apps/encryption/l10n/cs.json
@@ -1,26 +1,26 @@
{ "translations": {
- "Missing recovery key password" : "Chybí heslo klíče pro obnovu",
- "Please repeat the recovery key password" : "Zopakujte prosím heslo klíče pro obnovu",
- "Repeated recovery key password does not match the provided recovery key password" : "Zadaná hesla pro obnovu se neshodují",
+ "Missing recovery key password" : "Chybí heslo ke klíče pro obnovu",
+ "Please repeat the recovery key password" : "Zopakujte zadání hesla ke klíči, sloužícímu pro obnovu",
+ "Repeated recovery key password does not match the provided recovery key password" : "Zopakované zadání hesla ke klíči, sloužícímu pro obnovu, se neshoduje",
"Recovery key successfully enabled" : "Záchranný klíč byl úspěšně povolen",
- "Could not enable recovery key. Please check your recovery key password!" : "Nepodařilo se povolit záchranný klíč. Zkontrolujte prosím vaše heslo záchranného klíče!",
- "Recovery key successfully disabled" : "Záchranný klíč byl úspěšně zakázán",
- "Could not disable recovery key. Please check your recovery key password!" : "Nelze zakázat záchranný klíč. Zkontrolujte prosím heslo svého záchranného klíče!",
+ "Could not enable recovery key. Please check your recovery key password!" : "Nepodařilo se povolit záchranný klíč. Zkontrolujte své heslo k záchrannému klíči!",
+ "Recovery key successfully disabled" : "Záchranný klíč úspěšně zakázán",
+ "Could not disable recovery key. Please check your recovery key password!" : "Nedaří se zakázat záchranný klíč. Zkontrolujte zadání hesla k němu.",
"Missing parameters" : "Chybějící parametry",
"Please provide the old recovery password" : "Zadejte prosím staré heslo pro obnovu",
"Please provide a new recovery password" : "Zadejte prosím nové heslo pro obnovu",
- "Please repeat the new recovery password" : "Zopakujte prosím nové heslo pro obnovu",
+ "Please repeat the new recovery password" : "Zopakujte zadání nového hesla pro obnovu",
"Password successfully changed." : "Heslo bylo úspěšně změněno.",
"Could not change the password. Maybe the old password was not correct." : "Změna hesla se nezdařila. Pravděpodobně nebylo stávající heslo zadáno správně.",
"Recovery Key disabled" : "Záchranný klíč není povolen",
"Recovery Key enabled" : "Záchranný klíč povolen",
- "Could not enable the recovery key, please try again or contact your administrator" : "Nelze povolit záchranný klíč. Zkuste to prosím znovu nebo kontaktujte svého správce.",
+ "Could not enable the recovery key, please try again or contact your administrator" : "Nedaří se povolit záchranný klíč. Zkuste to znovu nebo se obraťte na svého správce.",
"Could not update the private key password." : "Nelze aktualizovat heslo soukromého klíče.",
- "The old password was not correct, please try again." : "Původní heslo nebylo zadáno správně, zkuste to prosím znovu.",
- "The current log-in password was not correct, please try again." : "Současné přihlašovací heslo nebylo zadáno správně, zkuste to prosím znovu.",
+ "The old password was not correct, please try again." : "Původní heslo nebylo zadáno správně, zkuste to znovu.",
+ "The current log-in password was not correct, please try again." : "Současné přihlašovací heslo nebylo zadáno správně, zkuste to znovu.",
"Private key password successfully updated." : "Heslo soukromého klíče úspěšně aktualizováno.",
"Invalid private key for encryption app. Please update your private key password in your personal settings to recover access to your encrypted files." : "Chybný soukromý klíč pro šifrovací aplikaci. Aktualizujte prosím heslo svého soukromého klíče v osobním nastavení, abyste znovu získali přístup ke svým zašifrovaným souborům.",
- "Encryption App is enabled, but your keys are not initialized. Please log-out and log-in again." : "Aplikace pro šifrování je zapnuta, ale vaše klíče nejsou inicializované. Prosím odhlaste se a znovu přihlaste.",
+ "Encryption App is enabled, but your keys are not initialized. Please log-out and log-in again." : "Aplikace pro šifrování je zapnuta, ale vaše klíče nejsou inicializované. Odhlaste se a znovu přihlaste.",
"Please enable server side encryption in the admin settings in order to use the encryption module." : "Chcete-li používat šifrovací modul, povolte prosím šifrování na straně serveru v nastavení administrátora.",
"Encryption app is enabled and ready" : "Aplikace šifrování je již povolena a připravena",
"Bad Signature" : "Špatný podpis",
@@ -30,11 +30,12 @@
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Soubor nelze načíst, pravděpodobně se jedná o sdílený soubor. Požádejte prosím vlastníka souboru, aby vám jej znovu sdílel.",
"Default encryption module" : "Výchozí šifrovací modul",
"Default encryption module for server-side encryption" : "Výchozí modul pro šifrování na straně serveru",
- "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Ahoj!\n\nAdministrátor povolil šifrování dat na serveru. Vaše soubory byly zašifrovány za použití hesla '%s'.\n\nPřihlašte se do webového rozhraní, přejděte do nastavení 'základního šifrovacího modulu' a aktualizujte šifrovací heslo zadáním hesla výše do pole 'původní přihlašovací heslo' a svého aktuálního přihlašovacího hesla.\n\n",
- "The share will expire on %s." : "Sdílení vyprší %s.",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Pro používání tohoto šifrovacího modulu je třeba zapnout šifrování na straně serveru\n\t\t ve správním nastavení. Jakmile je zapnutý, tento modul transparentně zašifruje\n\t\tvšechny vaše soubory. Šifrování je založeno na AES 256 klíčích.\n\t\tModul se nedotkne existujících souborů, zašifrovány budou pouze nové soubory\n\t\tpo zapnutí šifrování na straně serveru už není možné\n\t\tho zase vypnout a vrátit se k nešifrovanému systému.\n\t\tNež se rozhodnete zapnout šifrování na straně serveru\n\t\tpřečtěte si dokumentaci, abyste se seznámili se známými důsledky.",
+ "Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Zdravíme,\n\nSprávce zapnul šifrování dat na straně serveru. Vaše soubory byly zašifrovány za použití hesla „%s“.\n\nPřihlaste se do webového rozhraní, přejděte do nastavení „základního šifrovacího modulu“ a aktualizujte šifrovací heslo zadáním hesla výše do kolonky „původní přihlašovací heslo“ a svého aktuálního přihlašovacího hesla.\n\n",
+ "The share will expire on %s." : "Platnost sdílení skončí %s.",
"Cheers!" : "Ať slouží!",
- "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Ahoj!<br><br>Administrátor povolil šifrování dat na serveru. Vaše soubory byly zašifrovány za použití hesla <strong>%s<strong>.<br><br>Přihlašte se do webového rozhraní, přejděte do nastavení \"základního šifrovacího modulu\" a aktualizujte šifrovací heslo zadáním hesla výše do pole \"původní přihlašovací heslo\" a svého aktuálního přihlašovacího hesla.<br><br>",
- "Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikace pro šifrování je zapnuta, ale šifrovací klíče ještě nejsou inicializované. Prosím odhlaste se a znovu se přihlaste",
+ "Hey there,<br><br>the admin enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>.<br><br>Please login to the web interface, go to the section \"basic encryption module\" of your personal settings and update your encryption password by entering this password into the \"old log-in password\" field and your current login-password.<br><br>" : "Ahoj!<br><br>Administrátor povolil šifrování dat na serveru. Vaše soubory byly zašifrovány za použití hesla <strong>%s<strong>.<br><br>Přihlašte se do webového rozhraní, přejděte do nastavení „základního šifrovacího modulu“ a aktualizujte šifrovací heslo zadáním hesla výše do pole „původní přihlašovací heslo“ a svého aktuálního přihlašovacího hesla.<br><br>",
+ "Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikace pro šifrování je zapnuta, ale šifrovací klíče ještě nejsou inicializované. Odhlaste se a znovu se přihlaste",
"Encrypt the home storage" : "Zašifrovat domovské úložiště",
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Povolení tohoto nastavení zašifruje všechny soubory uložené v hlavním úložišti, jinak budou šifrovány pouze soubory na externích úložištích.",
"Enable recovery key" : "Povolit záchranný klíč",
@@ -52,12 +53,12 @@
"Set your old private key password to your current log-in password:" : "Změňte své staré heslo soukromého klíče na stejné, jako je vaše současné přihlašovací heslo:",
" If you don't remember your old password you can ask your administrator to recover your files." : "Pokud si nepamatujete své původní heslo, můžete požádat správce o obnovu vašich souborů.",
"Old log-in password" : "Původní přihlašovací heslo",
- "Current log-in password" : "Aktuální přihlašovací heslo",
- "Update Private Key Password" : "Změnit heslo soukromého klíče",
+ "Current log-in password" : "Stávající přihlašovací heslo",
+ "Update Private Key Password" : "Změnit heslo k soukromé části klíče",
"Enable password recovery:" : "Povolit obnovu hesla:",
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Zapnutí této volby vám umožní znovu získat přístup k vašim zašifrovaným souborům pokud ztratíte heslo",
"Enabled" : "Povoleno",
"Disabled" : "Zakázáno",
- "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please run 'occ encryption:migrate' or contact your administrator" : "Musíte přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Spusťte příkaz 'occ encryption:migrate' nebo kontaktujte svého administrátora."
+ "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please run 'occ encryption:migrate' or contact your administrator" : "Je třeba přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Spusťte příkaz 'occ encryption:migrate' nebo se obraťte na svého správce."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/encryption/l10n/fi.js b/apps/encryption/l10n/fi.js
index 29892f47b55..6df07dea77c 100644
--- a/apps/encryption/l10n/fi.js
+++ b/apps/encryption/l10n/fi.js
@@ -31,6 +31,7 @@ OC.L10N.register(
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tämän tiedoston salauksen purkaminen ei onnistu. Kyseessä on luultavasti jaettu tiedosto. Pyydä tiedoston omistajaa jakamaan tiedosto kanssasi uudelleen.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tiedostoa ei voi lukea, se on luultavasti jaettu tiedosto. Pyydä tiedoston omistajaa jakamaan tiedosto uudelleen kanssasi.",
"Default encryption module" : "Oletus salausmoduuli",
+ "Default encryption module for server-side encryption" : "Oletusarvoinen salausmoduuli palvelimella tehtävään salaukseen",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Hei,\n\nYlläpiäjä on ottanut käyttöön palvelimen salauksen. Tiedostosi salattiin salasanalla '%s'.\n\nOle hyvä ja kirjaudu palveluun verkkokäyttöliittymän kautta, siirry henkilökohtaisten asetustesi kohtaan \"perussalausmoduuli\" ja päivitä salaukseen käytettävä salasanasi syöttämällä yllä mainittu salasana \"vanha kirjautumissalasana\"-kenttään ja nykyinen kirjautumissalasanasi.\n\n",
"The share will expire on %s." : "Jakaminen päättyy %s.",
"Cheers!" : "Kiitos!",
diff --git a/apps/encryption/l10n/fi.json b/apps/encryption/l10n/fi.json
index 59c53b62b11..1c0d46b452c 100644
--- a/apps/encryption/l10n/fi.json
+++ b/apps/encryption/l10n/fi.json
@@ -29,6 +29,7 @@
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tämän tiedoston salauksen purkaminen ei onnistu. Kyseessä on luultavasti jaettu tiedosto. Pyydä tiedoston omistajaa jakamaan tiedosto kanssasi uudelleen.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tiedostoa ei voi lukea, se on luultavasti jaettu tiedosto. Pyydä tiedoston omistajaa jakamaan tiedosto uudelleen kanssasi.",
"Default encryption module" : "Oletus salausmoduuli",
+ "Default encryption module for server-side encryption" : "Oletusarvoinen salausmoduuli palvelimella tehtävään salaukseen",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Hei,\n\nYlläpiäjä on ottanut käyttöön palvelimen salauksen. Tiedostosi salattiin salasanalla '%s'.\n\nOle hyvä ja kirjaudu palveluun verkkokäyttöliittymän kautta, siirry henkilökohtaisten asetustesi kohtaan \"perussalausmoduuli\" ja päivitä salaukseen käytettävä salasanasi syöttämällä yllä mainittu salasana \"vanha kirjautumissalasana\"-kenttään ja nykyinen kirjautumissalasanasi.\n\n",
"The share will expire on %s." : "Jakaminen päättyy %s.",
"Cheers!" : "Kiitos!",
diff --git a/apps/encryption/l10n/lt_LT.js b/apps/encryption/l10n/lt_LT.js
index 8f66189e06b..297048fd28d 100644
--- a/apps/encryption/l10n/lt_LT.js
+++ b/apps/encryption/l10n/lt_LT.js
@@ -31,6 +31,8 @@ OC.L10N.register(
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nepavyksta iššifruoti šio failo, tikriausiai, tai yra bendrinamas failas. Paprašykite failo savininko iš naujo pradėti bendrinti su jumis šį failą.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nepavyksta perskaityti šio failo, tikriausiai, tai yra bendrinamas failas. Paprašykite failo savininko iš naujo pradėti bendrinti su jumis šį failą.",
"Default encryption module" : "Numatytasis šifravimo modulis",
+ "Default encryption module for server-side encryption" : "Numatytas šifravimo modulis serverio šifravimui.",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Kad galėtumėte naudoti šį šifravimo modulį, turite įjungti serverio \n\t\tšifravimą administratoriaus nustatymuose. Įjungus šį modulį visi Jūsų failai bus užšifruoti\n\t\tŠifravimas pagrįstas AES 256 raktais.\n\t\tModulis užšifruos tik naujus failus, palikdamas senuosius taip kaip buvo iki šifravimo įjungimo.\n\t\tNeįmanoma išjungti šifravimą ir vėl sugrįžti prie nešifruojamos sistemos.\n\t\tPrieš nuspręsdami, atidžiai perskaitykite dokumentaciją, kad gerai suprastumėte visas šifravimo pasekmes.",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Sveiki,\n\nAdministratorius įjungė šifravimą sistemoje. Jūsų failai buvo užšifruoti naudojantis šiuo slaptažodžiu: \"%s\".\n\nPrisijunkite prie sistemos, atidarykite nustatymus, pasirinkite skiltį \"Šifravimo įskiepis\" ir atnaujinkite savo šifravimui skirtą slaptažodį pasinaudodami šiuo ir savo prisijungimo slaptažodžiu.\n\n",
"The share will expire on %s." : "Bendrinimo laikas pasibaigs %s.",
"Cheers!" : "Sveikinimai!",
diff --git a/apps/encryption/l10n/lt_LT.json b/apps/encryption/l10n/lt_LT.json
index 152d8c3f49b..eda0bab79d7 100644
--- a/apps/encryption/l10n/lt_LT.json
+++ b/apps/encryption/l10n/lt_LT.json
@@ -29,6 +29,8 @@
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nepavyksta iššifruoti šio failo, tikriausiai, tai yra bendrinamas failas. Paprašykite failo savininko iš naujo pradėti bendrinti su jumis šį failą.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nepavyksta perskaityti šio failo, tikriausiai, tai yra bendrinamas failas. Paprašykite failo savininko iš naujo pradėti bendrinti su jumis šį failą.",
"Default encryption module" : "Numatytasis šifravimo modulis",
+ "Default encryption module for server-side encryption" : "Numatytas šifravimo modulis serverio šifravimui.",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Kad galėtumėte naudoti šį šifravimo modulį, turite įjungti serverio \n\t\tšifravimą administratoriaus nustatymuose. Įjungus šį modulį visi Jūsų failai bus užšifruoti\n\t\tŠifravimas pagrįstas AES 256 raktais.\n\t\tModulis užšifruos tik naujus failus, palikdamas senuosius taip kaip buvo iki šifravimo įjungimo.\n\t\tNeįmanoma išjungti šifravimą ir vėl sugrįžti prie nešifruojamos sistemos.\n\t\tPrieš nuspręsdami, atidžiai perskaitykite dokumentaciją, kad gerai suprastumėte visas šifravimo pasekmes.",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Sveiki,\n\nAdministratorius įjungė šifravimą sistemoje. Jūsų failai buvo užšifruoti naudojantis šiuo slaptažodžiu: \"%s\".\n\nPrisijunkite prie sistemos, atidarykite nustatymus, pasirinkite skiltį \"Šifravimo įskiepis\" ir atnaujinkite savo šifravimui skirtą slaptažodį pasinaudodami šiuo ir savo prisijungimo slaptažodžiu.\n\n",
"The share will expire on %s." : "Bendrinimo laikas pasibaigs %s.",
"Cheers!" : "Sveikinimai!",
diff --git a/apps/encryption/l10n/nl.js b/apps/encryption/l10n/nl.js
index 26f1ca1c308..e73e2fd9685 100644
--- a/apps/encryption/l10n/nl.js
+++ b/apps/encryption/l10n/nl.js
@@ -31,6 +31,8 @@ OC.L10N.register(
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Kan dit bestand niet ontcijferen, waarschijnlijk is het een gedeeld bestand, Vraag de eigenaar om het bestand opnieuw met je te delen.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Kan dit bestand niet lezen, waarschijnlijk is het een gedeeld bestand. Vraag de eigenaar om het bestand opnieuw met je te delen.",
"Default encryption module" : "Standaard cryptomodule",
+ "Default encryption module for server-side encryption" : "Standaard cryptomodule voor server-side versleuteling",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Om deze cryptomodule te gebruiker moeten de volgende server-side aanpassingen worden gedaan\n\t\tversleuteling in de beheerinstellingen. Na inschakeling versleutelt deze module \n\t\tal je bestanden transparent. De versleuteling is gebaseerd op AES 256 sleutels.\n\t\tDe module raakt geen bestaande bestanden, alleen nieuwe bestanden worden versleuteld.\n\t\tNadat server-side crypto is ingeschakeld. Het is ook niet meer mogelijk\n\t\tom de versleuteling uit te zetten en terug te gaan naar een onversleuteld systeem.\n\t\tLees de documentatie om de gevolgen te kennen voordat je besluit\n\t\tserver-side versleuteling in te schakelen.",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Hallo daar,\n\nde beheerder heeft server-side versleuteling ingeschakeld. Je bestanden werden versleuteld met het wachtwoord '%s'.\n\nLogin op de webinterface, ga naar 'basis cryptomodule' in je persoonlijke instellingen en pas je cryptowachtwoord aan door dit wachtwoord in het 'oude inlog wachtwoord' veld in te vullen alsmede in je huidige inlogwachtwoord.\n",
"The share will expire on %s." : "De share vervalt op %s.",
"Cheers!" : "Proficiat!",
diff --git a/apps/encryption/l10n/nl.json b/apps/encryption/l10n/nl.json
index 435cda5810b..3796f450d67 100644
--- a/apps/encryption/l10n/nl.json
+++ b/apps/encryption/l10n/nl.json
@@ -29,6 +29,8 @@
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Kan dit bestand niet ontcijferen, waarschijnlijk is het een gedeeld bestand, Vraag de eigenaar om het bestand opnieuw met je te delen.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Kan dit bestand niet lezen, waarschijnlijk is het een gedeeld bestand. Vraag de eigenaar om het bestand opnieuw met je te delen.",
"Default encryption module" : "Standaard cryptomodule",
+ "Default encryption module for server-side encryption" : "Standaard cryptomodule voor server-side versleuteling",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Om deze cryptomodule te gebruiker moeten de volgende server-side aanpassingen worden gedaan\n\t\tversleuteling in de beheerinstellingen. Na inschakeling versleutelt deze module \n\t\tal je bestanden transparent. De versleuteling is gebaseerd op AES 256 sleutels.\n\t\tDe module raakt geen bestaande bestanden, alleen nieuwe bestanden worden versleuteld.\n\t\tNadat server-side crypto is ingeschakeld. Het is ook niet meer mogelijk\n\t\tom de versleuteling uit te zetten en terug te gaan naar een onversleuteld systeem.\n\t\tLees de documentatie om de gevolgen te kennen voordat je besluit\n\t\tserver-side versleuteling in te schakelen.",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Hallo daar,\n\nde beheerder heeft server-side versleuteling ingeschakeld. Je bestanden werden versleuteld met het wachtwoord '%s'.\n\nLogin op de webinterface, ga naar 'basis cryptomodule' in je persoonlijke instellingen en pas je cryptowachtwoord aan door dit wachtwoord in het 'oude inlog wachtwoord' veld in te vullen alsmede in je huidige inlogwachtwoord.\n",
"The share will expire on %s." : "De share vervalt op %s.",
"Cheers!" : "Proficiat!",
diff --git a/apps/encryption/l10n/pl.js b/apps/encryption/l10n/pl.js
index b5acec8d1e8..fd3bf5f92d5 100644
--- a/apps/encryption/l10n/pl.js
+++ b/apps/encryption/l10n/pl.js
@@ -31,6 +31,8 @@ OC.L10N.register(
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nie można odszyfrować tego pliku, prawdopodobnie jest to plik udostępniony. Poproś właściciela pliku o ponowne udostępnianie pliku Tobie.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nie można odczytać tego pliku, prawdopodobnie plik nie jest współdzielony. Proszę zwrócić się do właściciela pliku, aby udostępnił go dla Ciebie.",
"Default encryption module" : "Domyślny moduł szyfrujący",
+ "Default encryption module for server-side encryption" : "Domyślny moduł szyfrujący po stronie serwera",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Aby korzystać z modułu szyfrowania, musisz włączyć opcję po stronie serwera\n\t\tszyfrowanie w ustawieniach administratora. Po włączeniu opcji moduł będzie szyfrował\n\t\twszystkie Twoje pliki w sposób transparentny. Szyfrowanie oparte jest na kluczach AES 256.\n\t\tModuł nie będzie ingerował w istniejące pliki, tylko nowe pliki będą szyfrowane\n\t\tpo włączeniu szyfrowania po stronie serwera. Nie jest to również możliwe\n\t\tponownie wyłączenie szyfrowania i przełączenie z powrotem do niezaszyfrowanego systemu.\n\t\tPrzeczytaj dokumentację, aby zapoznać się ze wszystkimi konsekwencjami, zanim podejmiesz decyzję\n\t\to włączeniu szyfrowania po stronie serwera.",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Hej tam,\n\nadmin włączył szyfrowanie po stronie serwera. Twoje pliki zostały zaszyfrowane przy użyciu hasła '%s'.\n\nProszę zalogować się do interfejsu internetowego, przejdź do sekcji Nextcloud podstawowy moduł szyfrowania, następnie osobiste ustawienia i zaktualizuj hasło szyfrowania wpisując aktualny login, w polu stare hasło logowania wpisz stare hasło, a następnie aktualne hasło.\n\n",
"The share will expire on %s." : "Ten zasób wygaśnie %s",
"Cheers!" : "Dzięki!",
diff --git a/apps/encryption/l10n/pl.json b/apps/encryption/l10n/pl.json
index cf0af345cc2..0fabc6c72f7 100644
--- a/apps/encryption/l10n/pl.json
+++ b/apps/encryption/l10n/pl.json
@@ -29,6 +29,8 @@
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nie można odszyfrować tego pliku, prawdopodobnie jest to plik udostępniony. Poproś właściciela pliku o ponowne udostępnianie pliku Tobie.",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Nie można odczytać tego pliku, prawdopodobnie plik nie jest współdzielony. Proszę zwrócić się do właściciela pliku, aby udostępnił go dla Ciebie.",
"Default encryption module" : "Domyślny moduł szyfrujący",
+ "Default encryption module for server-side encryption" : "Domyślny moduł szyfrujący po stronie serwera",
+ "In order to use this encryption module you need to enable server-side\n\t\tencryption in the admin settings. Once enabled this module will encrypt\n\t\tall your files transparently. The encryption is based on AES 256 keys.\n\t\tThe module won't touch existing files, only new files will be encrypted\n\t\tafter server-side encryption was enabled. It is also not possible to\n\t\tdisable the encryption again and switch back to a unencrypted system.\n\t\tPlease read the documentation to know all implications before you decide\n\t\tto enable server-side encryption." : "Aby korzystać z modułu szyfrowania, musisz włączyć opcję po stronie serwera\n\t\tszyfrowanie w ustawieniach administratora. Po włączeniu opcji moduł będzie szyfrował\n\t\twszystkie Twoje pliki w sposób transparentny. Szyfrowanie oparte jest na kluczach AES 256.\n\t\tModuł nie będzie ingerował w istniejące pliki, tylko nowe pliki będą szyfrowane\n\t\tpo włączeniu szyfrowania po stronie serwera. Nie jest to również możliwe\n\t\tponownie wyłączenie szyfrowania i przełączenie z powrotem do niezaszyfrowanego systemu.\n\t\tPrzeczytaj dokumentację, aby zapoznać się ze wszystkimi konsekwencjami, zanim podejmiesz decyzję\n\t\to włączeniu szyfrowania po stronie serwera.",
"Hey there,\n\nthe admin enabled server-side-encryption. Your files were encrypted using the password '%s'.\n\nPlease login to the web interface, go to the section 'basic encryption module' of your personal settings and update your encryption password by entering this password into the 'old log-in password' field and your current login-password.\n\n" : "Hej tam,\n\nadmin włączył szyfrowanie po stronie serwera. Twoje pliki zostały zaszyfrowane przy użyciu hasła '%s'.\n\nProszę zalogować się do interfejsu internetowego, przejdź do sekcji Nextcloud podstawowy moduł szyfrowania, następnie osobiste ustawienia i zaktualizuj hasło szyfrowania wpisując aktualny login, w polu stare hasło logowania wpisz stare hasło, a następnie aktualne hasło.\n\n",
"The share will expire on %s." : "Ten zasób wygaśnie %s",
"Cheers!" : "Dzięki!",
diff --git a/apps/federatedfilesharing/l10n/bg.js b/apps/federatedfilesharing/l10n/bg.js
index cfe8703ba91..9e7a3cce3a5 100644
--- a/apps/federatedfilesharing/l10n/bg.js
+++ b/apps/federatedfilesharing/l10n/bg.js
@@ -20,13 +20,14 @@ OC.L10N.register(
"Not allowed to create a federated share with the same user" : "Не е позволено създаване на федерално споделяне със същият потребител",
"File is already shared with %s" : "Файлът е вече споделен с %s",
"Accept" : "Приемам",
+ "Sharing" : "Споделяне",
"Open documentation" : "Отвори документацията",
"Allow users on this server to send shares to other servers" : "Позволи на потребители от този сървър да споделят папки с други сървъри",
"Allow users on this server to receive shares from other servers" : "Позволи на потребители на този сървър да получават споделени папки от други сървъри",
"HTML Code:" : "HTML код:",
"The mountpoint name contains invalid characters." : "Името на mountpoint-a съдържа невалидни символи.",
"Not allowed to create a federated share with the owner." : "Не е позволено създаване на федерално споделяне със собственика.",
- "Invalid or untrusted SSL certificate" : "Невалиден или ненадежден SSL сертификат",
+ "Invalid or untrusted SSL certificate" : "Невалиден или недоверен SSL сертификат",
"Could not authenticate to remote share, password might be wrong" : "Неуспешно удостоверяване на отдалеченото споделяне, възможно е паролата да е грешна",
"Storage not valid" : "Невалидно хранилище",
"Couldn't add remote share" : "Неуспешно добавяне на отдалечена споделена директория."
diff --git a/apps/federatedfilesharing/l10n/bg.json b/apps/federatedfilesharing/l10n/bg.json
index 36714a6d4f2..448714f1909 100644
--- a/apps/federatedfilesharing/l10n/bg.json
+++ b/apps/federatedfilesharing/l10n/bg.json
@@ -18,13 +18,14 @@
"Not allowed to create a federated share with the same user" : "Не е позволено създаване на федерално споделяне със същият потребител",
"File is already shared with %s" : "Файлът е вече споделен с %s",
"Accept" : "Приемам",
+ "Sharing" : "Споделяне",
"Open documentation" : "Отвори документацията",
"Allow users on this server to send shares to other servers" : "Позволи на потребители от този сървър да споделят папки с други сървъри",
"Allow users on this server to receive shares from other servers" : "Позволи на потребители на този сървър да получават споделени папки от други сървъри",
"HTML Code:" : "HTML код:",
"The mountpoint name contains invalid characters." : "Името на mountpoint-a съдържа невалидни символи.",
"Not allowed to create a federated share with the owner." : "Не е позволено създаване на федерално споделяне със собственика.",
- "Invalid or untrusted SSL certificate" : "Невалиден или ненадежден SSL сертификат",
+ "Invalid or untrusted SSL certificate" : "Невалиден или недоверен SSL сертификат",
"Could not authenticate to remote share, password might be wrong" : "Неуспешно удостоверяване на отдалеченото споделяне, възможно е паролата да е грешна",
"Storage not valid" : "Невалидно хранилище",
"Couldn't add remote share" : "Неуспешно добавяне на отдалечена споделена директория."
diff --git a/apps/federatedfilesharing/l10n/cs.js b/apps/federatedfilesharing/l10n/cs.js
index 32e6297bc2f..6c637715e72 100644
--- a/apps/federatedfilesharing/l10n/cs.js
+++ b/apps/federatedfilesharing/l10n/cs.js
@@ -1,10 +1,10 @@
OC.L10N.register(
"federatedfilesharing",
{
- "Federated sharing" : "Propojené sdílení",
+ "Federated sharing" : "Federované sdílení",
"Do you want to add the remote share {name} from {owner}@{remote}?" : "Chcete přidat vzdálené sdílení {name} od {owner}@{remote}?",
"Remote share" : "Vzdálené sdílení",
- "Remote share password" : "Heslo vzdáleného sdílení",
+ "Remote share password" : "Heslo ke vzdálenému sdílení",
"Cancel" : "Storno",
"Add remote share" : "Přidat propojené sdílení",
"Copy" : "Kopie",
@@ -19,11 +19,11 @@ OC.L10N.register(
"Federated Share request sent, you will receive an invitation. Check your notifications." : "Požadavek na spojené sdílení byl odeslán, obdržíte pozvánku. Zkontrolujte vaše upozornění.",
"Couldn't establish a federated share, it looks like the server to federate with is too old (Nextcloud <= 9)." : "Nepodařilo se ustavit federované sdílení, vypadá to, že server, se kterým má být federováno je příliš starý (Nextcloud <= 9).",
"It is not allowed to send federated group shares from this server." : "Z tohoto serveru není povoleno posílat federovaná skupinová sdílení.",
- "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s selhalo, protože položka již je s uživatelem %s sdílena",
+ "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s se nezdařilo, protože položka už je s uživatelem %s sdílena",
"Not allowed to create a federated share with the same user" : "Není povoleno vytvořit propojené sdílení s tím samým uživatelem",
- "File is already shared with %s" : "Soubor je již sdílen s %s",
+ "File is already shared with %s" : "Soubor je už sdílen s %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable or uses a self-signed certificate." : "Sdílení %s selhalo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný nebo používá self-signed certifikát.",
- "Could not find share" : "Nelze nalézt sdílení",
+ "Could not find share" : "Nedaří se nalézt sdílení",
"You received \"%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Obdržel(a) jste %3$s jako vzdálené sdílení od %1$s (jménem %2$s)",
"You received {share} as a remote share from {user} (on behalf of {behalf})" : "Obdržel(a) jste {share} jako vzdálené sdílení od {user} (jménem {behalf})",
"You received \"%3$s\" as a remote share from %1$s" : "Obdržel(a) jste %3$s jako vzdálené sdílení od %1$s",
@@ -31,7 +31,7 @@ OC.L10N.register(
"Accept" : "Přijmout",
"Decline" : "Zamítnout",
"Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Sdílej se mnou pomocí mého #Nextcloud sdruženého cloud ID, více na %s",
- "Share with me through my #Nextcloud Federated Cloud ID" : "Sdílej se mnou pomocí mého #Nextcloud sdruženého cloud ID",
+ "Share with me through my #Nextcloud Federated Cloud ID" : "Sdílejte se mnou pomocí mého #Nextcloud sdruženého cloud ID",
"Sharing" : "Sdílení",
"Federated file sharing" : "Federované sdílení souborů",
"Provide federated file sharing across servers" : "Poskytnout federované sdílení souborů napříč servery",
@@ -54,7 +54,7 @@ OC.L10N.register(
"The mountpoint name contains invalid characters." : "Jméno přípojného bodu obsahuje neplatné znaky.",
"Not allowed to create a federated share with the owner." : "ONení povoleno s autorem vytvořit propojené sdílení.",
"Invalid or untrusted SSL certificate" : "Neplatný nebo nedůvěryhodný SSL certifikát",
- "Could not authenticate to remote share, password might be wrong" : "Autentizace ke vzdálenému sdílení selhala, heslo může být nesprávné",
+ "Could not authenticate to remote share, password might be wrong" : "Autentizace ke vzdálenému sdílení se nezdařila, heslo může být nesprávné",
"Storage not valid" : "Úložiště není platné",
"Federated share added" : "Propojené sdílení bylo přidáno",
"Couldn't add remote share" : "Nepodařilo se přidat propojené sdílení",
diff --git a/apps/federatedfilesharing/l10n/cs.json b/apps/federatedfilesharing/l10n/cs.json
index c74976a475b..a5e0fc2b333 100644
--- a/apps/federatedfilesharing/l10n/cs.json
+++ b/apps/federatedfilesharing/l10n/cs.json
@@ -1,8 +1,8 @@
{ "translations": {
- "Federated sharing" : "Propojené sdílení",
+ "Federated sharing" : "Federované sdílení",
"Do you want to add the remote share {name} from {owner}@{remote}?" : "Chcete přidat vzdálené sdílení {name} od {owner}@{remote}?",
"Remote share" : "Vzdálené sdílení",
- "Remote share password" : "Heslo vzdáleného sdílení",
+ "Remote share password" : "Heslo ke vzdálenému sdílení",
"Cancel" : "Storno",
"Add remote share" : "Přidat propojené sdílení",
"Copy" : "Kopie",
@@ -17,11 +17,11 @@
"Federated Share request sent, you will receive an invitation. Check your notifications." : "Požadavek na spojené sdílení byl odeslán, obdržíte pozvánku. Zkontrolujte vaše upozornění.",
"Couldn't establish a federated share, it looks like the server to federate with is too old (Nextcloud <= 9)." : "Nepodařilo se ustavit federované sdílení, vypadá to, že server, se kterým má být federováno je příliš starý (Nextcloud <= 9).",
"It is not allowed to send federated group shares from this server." : "Z tohoto serveru není povoleno posílat federovaná skupinová sdílení.",
- "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s selhalo, protože položka již je s uživatelem %s sdílena",
+ "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s se nezdařilo, protože položka už je s uživatelem %s sdílena",
"Not allowed to create a federated share with the same user" : "Není povoleno vytvořit propojené sdílení s tím samým uživatelem",
- "File is already shared with %s" : "Soubor je již sdílen s %s",
+ "File is already shared with %s" : "Soubor je už sdílen s %s",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable or uses a self-signed certificate." : "Sdílení %s selhalo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný nebo používá self-signed certifikát.",
- "Could not find share" : "Nelze nalézt sdílení",
+ "Could not find share" : "Nedaří se nalézt sdílení",
"You received \"%3$s\" as a remote share from %1$s (on behalf of %2$s)" : "Obdržel(a) jste %3$s jako vzdálené sdílení od %1$s (jménem %2$s)",
"You received {share} as a remote share from {user} (on behalf of {behalf})" : "Obdržel(a) jste {share} jako vzdálené sdílení od {user} (jménem {behalf})",
"You received \"%3$s\" as a remote share from %1$s" : "Obdržel(a) jste %3$s jako vzdálené sdílení od %1$s",
@@ -29,7 +29,7 @@
"Accept" : "Přijmout",
"Decline" : "Zamítnout",
"Share with me through my #Nextcloud Federated Cloud ID, see %s" : "Sdílej se mnou pomocí mého #Nextcloud sdruženého cloud ID, více na %s",
- "Share with me through my #Nextcloud Federated Cloud ID" : "Sdílej se mnou pomocí mého #Nextcloud sdruženého cloud ID",
+ "Share with me through my #Nextcloud Federated Cloud ID" : "Sdílejte se mnou pomocí mého #Nextcloud sdruženého cloud ID",
"Sharing" : "Sdílení",
"Federated file sharing" : "Federované sdílení souborů",
"Provide federated file sharing across servers" : "Poskytnout federované sdílení souborů napříč servery",
@@ -52,7 +52,7 @@
"The mountpoint name contains invalid characters." : "Jméno přípojného bodu obsahuje neplatné znaky.",
"Not allowed to create a federated share with the owner." : "ONení povoleno s autorem vytvořit propojené sdílení.",
"Invalid or untrusted SSL certificate" : "Neplatný nebo nedůvěryhodný SSL certifikát",
- "Could not authenticate to remote share, password might be wrong" : "Autentizace ke vzdálenému sdílení selhala, heslo může být nesprávné",
+ "Could not authenticate to remote share, password might be wrong" : "Autentizace ke vzdálenému sdílení se nezdařila, heslo může být nesprávné",
"Storage not valid" : "Úložiště není platné",
"Federated share added" : "Propojené sdílení bylo přidáno",
"Couldn't add remote share" : "Nepodařilo se přidat propojené sdílení",
diff --git a/apps/federatedfilesharing/l10n/fi.js b/apps/federatedfilesharing/l10n/fi.js
index 7e43c9213f8..d0492611e03 100644
--- a/apps/federatedfilesharing/l10n/fi.js
+++ b/apps/federatedfilesharing/l10n/fi.js
@@ -34,6 +34,7 @@ OC.L10N.register(
"Share with me through my #Nextcloud Federated Cloud ID" : "Jaa kanssani käyttäen #Nextcloud ja federoitua pilvitunnistetta",
"Sharing" : "Jakaminen",
"Federated file sharing" : "Federoitu tiedostojako",
+ "Provide federated file sharing across servers" : "Mahdollistaa federoidun tiedostojaon palvelinten välillä",
"Federated Cloud Sharing" : "Federoitu pilvijakaminen",
"Open documentation" : "Avaa ohje",
"Adjust how people can share between servers." : "Mukauta kuinka ihmiset voivat jakaa palvelinten välillä.",
diff --git a/apps/federatedfilesharing/l10n/fi.json b/apps/federatedfilesharing/l10n/fi.json
index c8cd94a9d57..e2fdb1caa73 100644
--- a/apps/federatedfilesharing/l10n/fi.json
+++ b/apps/federatedfilesharing/l10n/fi.json
@@ -32,6 +32,7 @@
"Share with me through my #Nextcloud Federated Cloud ID" : "Jaa kanssani käyttäen #Nextcloud ja federoitua pilvitunnistetta",
"Sharing" : "Jakaminen",
"Federated file sharing" : "Federoitu tiedostojako",
+ "Provide federated file sharing across servers" : "Mahdollistaa federoidun tiedostojaon palvelinten välillä",
"Federated Cloud Sharing" : "Federoitu pilvijakaminen",
"Open documentation" : "Avaa ohje",
"Adjust how people can share between servers." : "Mukauta kuinka ihmiset voivat jakaa palvelinten välillä.",
diff --git a/apps/federatedfilesharing/l10n/nl.js b/apps/federatedfilesharing/l10n/nl.js
index 9bf56a641e1..8f367dd4407 100644
--- a/apps/federatedfilesharing/l10n/nl.js
+++ b/apps/federatedfilesharing/l10n/nl.js
@@ -34,6 +34,7 @@ OC.L10N.register(
"Share with me through my #Nextcloud Federated Cloud ID" : "Deel met mij via mijn #Nextcloud gefedereerde Cloud ID",
"Sharing" : "Delen",
"Federated file sharing" : "Gefedereerd delen",
+ "Provide federated file sharing across servers" : "Voorzien in gefedereerd delen van bestanden over verschillende servers",
"Federated Cloud Sharing" : "Federated Cloud Sharing",
"Open documentation" : "Open documentatie",
"Adjust how people can share between servers." : "Aanpassen hoe mensen tussen servers kunnen delen.",
diff --git a/apps/federatedfilesharing/l10n/nl.json b/apps/federatedfilesharing/l10n/nl.json
index a630df0d422..b4f26d5cf4d 100644
--- a/apps/federatedfilesharing/l10n/nl.json
+++ b/apps/federatedfilesharing/l10n/nl.json
@@ -32,6 +32,7 @@
"Share with me through my #Nextcloud Federated Cloud ID" : "Deel met mij via mijn #Nextcloud gefedereerde Cloud ID",
"Sharing" : "Delen",
"Federated file sharing" : "Gefedereerd delen",
+ "Provide federated file sharing across servers" : "Voorzien in gefedereerd delen van bestanden over verschillende servers",
"Federated Cloud Sharing" : "Federated Cloud Sharing",
"Open documentation" : "Open documentatie",
"Adjust how people can share between servers." : "Aanpassen hoe mensen tussen servers kunnen delen.",
diff --git a/apps/federation/l10n/cs.js b/apps/federation/l10n/cs.js
index 5050fffa720..9daeeaeb0e6 100644
--- a/apps/federation/l10n/cs.js
+++ b/apps/federation/l10n/cs.js
@@ -3,11 +3,11 @@ OC.L10N.register(
{
"Added to the list of trusted servers" : "Přidán na seznam důvěryhodných serverů.",
"Server is already in the list of trusted servers." : "Server se už nachází na seznamu těch důvěryhodných.",
- "No server to federate with found" : "Nenalezen žádný server ke sdružování",
+ "No server to federate with found" : "Nenalezen žádný server, se kterým by bylo možné federovat",
"Could not add server" : "Nepodařilo se přidat server",
"Federation" : "Federování",
"Federation allows you to connect with other trusted servers to exchange the user directory." : "Federování umožňuje propojit s ostatními servery, kterým věříte a vyměňovat si tak adresář uživatelů.",
- "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Sdružování vám umožňuje se připojit k dalším důvěryhodným serverům za účelem výměny uživatelských adresářů. Používá se to např. pro automatické doplňování uživatelů při sdruženém sdílení.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federování umožňuje propojit s ostatními servery, kterým věříte a vyměňovat si tak adresář uživatelů. Používá se to např. pro automatické doplňování uživatelů při federovaném sdílení.",
"Trusted servers" : "Důvěryhodné servery",
"Add server automatically once a federated share was created successfully" : "Přidat server automaticky jakmile je úspěšně vytvořeno sdružené sdílení",
"+ Add trusted server" : "+ Přidat důvěryhodný server",
diff --git a/apps/federation/l10n/cs.json b/apps/federation/l10n/cs.json
index 546d525e2f2..f6faf206d89 100644
--- a/apps/federation/l10n/cs.json
+++ b/apps/federation/l10n/cs.json
@@ -1,11 +1,11 @@
{ "translations": {
"Added to the list of trusted servers" : "Přidán na seznam důvěryhodných serverů.",
"Server is already in the list of trusted servers." : "Server se už nachází na seznamu těch důvěryhodných.",
- "No server to federate with found" : "Nenalezen žádný server ke sdružování",
+ "No server to federate with found" : "Nenalezen žádný server, se kterým by bylo možné federovat",
"Could not add server" : "Nepodařilo se přidat server",
"Federation" : "Federování",
"Federation allows you to connect with other trusted servers to exchange the user directory." : "Federování umožňuje propojit s ostatními servery, kterým věříte a vyměňovat si tak adresář uživatelů.",
- "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Sdružování vám umožňuje se připojit k dalším důvěryhodným serverům za účelem výměny uživatelských adresářů. Používá se to např. pro automatické doplňování uživatelů při sdruženém sdílení.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federování umožňuje propojit s ostatními servery, kterým věříte a vyměňovat si tak adresář uživatelů. Používá se to např. pro automatické doplňování uživatelů při federovaném sdílení.",
"Trusted servers" : "Důvěryhodné servery",
"Add server automatically once a federated share was created successfully" : "Přidat server automaticky jakmile je úspěšně vytvořeno sdružené sdílení",
"+ Add trusted server" : "+ Přidat důvěryhodný server",
diff --git a/apps/federation/l10n/fi.js b/apps/federation/l10n/fi.js
index 33c8e805764..1fea1a578fb 100644
--- a/apps/federation/l10n/fi.js
+++ b/apps/federation/l10n/fi.js
@@ -6,7 +6,8 @@ OC.L10N.register(
"No server to federate with found" : "Palvelinta, johon liittyä, ei löytynyt",
"Could not add server" : "Palvelimen lisääminen ei onnistunut",
"Federation" : "Federaatio",
- "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federointi sallii sinun liittyä toisten luotettujen palvelimien käyttäjäluetteloihin. Sitä käytetään esimerkiksi ulkoisten käyttäjänimien automaattiseen täydentämiseen.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Federaatio mahdollistaa yhdistämisen muihin luotettuihin palvelimiin ja siten käyttäjähakemiston vaihtamisen.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federointi sallii sinun liittyä toisten luotettujen palvelimien käyttäjähakemistoihin. Sitä käytetään esimerkiksi ulkoisten käyttäjänimien automaattiseen täydentämiseen.",
"Trusted servers" : "Luotetut palvelimet",
"Add server automatically once a federated share was created successfully" : "Lisää palvelin automaattisesti, kun federoitu jako on luotu onnistuneesti",
"+ Add trusted server" : "+ Lisää luotettu palvelin",
diff --git a/apps/federation/l10n/fi.json b/apps/federation/l10n/fi.json
index 2fc6a0d871b..11dd578fe7b 100644
--- a/apps/federation/l10n/fi.json
+++ b/apps/federation/l10n/fi.json
@@ -4,7 +4,8 @@
"No server to federate with found" : "Palvelinta, johon liittyä, ei löytynyt",
"Could not add server" : "Palvelimen lisääminen ei onnistunut",
"Federation" : "Federaatio",
- "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federointi sallii sinun liittyä toisten luotettujen palvelimien käyttäjäluetteloihin. Sitä käytetään esimerkiksi ulkoisten käyttäjänimien automaattiseen täydentämiseen.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Federaatio mahdollistaa yhdistämisen muihin luotettuihin palvelimiin ja siten käyttäjähakemiston vaihtamisen.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federointi sallii sinun liittyä toisten luotettujen palvelimien käyttäjähakemistoihin. Sitä käytetään esimerkiksi ulkoisten käyttäjänimien automaattiseen täydentämiseen.",
"Trusted servers" : "Luotetut palvelimet",
"Add server automatically once a federated share was created successfully" : "Lisää palvelin automaattisesti, kun federoitu jako on luotu onnistuneesti",
"+ Add trusted server" : "+ Lisää luotettu palvelin",
diff --git a/apps/federation/l10n/lt_LT.js b/apps/federation/l10n/lt_LT.js
index ca10401b746..2e92e02ace5 100644
--- a/apps/federation/l10n/lt_LT.js
+++ b/apps/federation/l10n/lt_LT.js
@@ -6,6 +6,7 @@ OC.L10N.register(
"No server to federate with found" : "Nerasta tinkama saugykla",
"Could not add server" : "Nepavyko prijungti saugyklos",
"Federation" : "Išorinė saugykla",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Federacija jums leidžia prisijungti prie kitų patikimų serverių, kad pakeisti vartotojo katalogą.",
"Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Išorinės saugyklos leidžia naudotojams dalintis duomenimis ir adresatais tarpusavyje",
"Trusted servers" : "Saugyklos",
"Add server automatically once a federated share was created successfully" : "Prijungti automatiškai užmezgus ryšį",
diff --git a/apps/federation/l10n/lt_LT.json b/apps/federation/l10n/lt_LT.json
index 4ef845e13a6..6e120cf0e9f 100644
--- a/apps/federation/l10n/lt_LT.json
+++ b/apps/federation/l10n/lt_LT.json
@@ -4,6 +4,7 @@
"No server to federate with found" : "Nerasta tinkama saugykla",
"Could not add server" : "Nepavyko prijungti saugyklos",
"Federation" : "Išorinė saugykla",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Federacija jums leidžia prisijungti prie kitų patikimų serverių, kad pakeisti vartotojo katalogą.",
"Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Išorinės saugyklos leidžia naudotojams dalintis duomenimis ir adresatais tarpusavyje",
"Trusted servers" : "Saugyklos",
"Add server automatically once a federated share was created successfully" : "Prijungti automatiškai užmezgus ryšį",
diff --git a/apps/federation/l10n/nl.js b/apps/federation/l10n/nl.js
index ccf20071674..ef290e928ee 100644
--- a/apps/federation/l10n/nl.js
+++ b/apps/federation/l10n/nl.js
@@ -6,6 +6,7 @@ OC.L10N.register(
"No server to federate with found" : "Geen server gevonden om mee te federeren",
"Could not add server" : "Kon server niet toevoegen",
"Federation" : "Federatie",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Federatie maakt het mogelijk om te verbinden met andere vertrouwde servers om de gebuikersadministratie te delen.",
"Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federatie maakt het mogelijk om te verbinden met vertrouwde servers en de gebuikersadministratie te delen. Zo kun je automatisch externe gebruikers toevoegen voor federatief delen.",
"Trusted servers" : "Vertrouwde servers",
"Add server automatically once a federated share was created successfully" : "Voeg server automatisch toe zodra een gefedereerde share succesvol gecreëerd is",
diff --git a/apps/federation/l10n/nl.json b/apps/federation/l10n/nl.json
index cb697c41ce9..98d15e51213 100644
--- a/apps/federation/l10n/nl.json
+++ b/apps/federation/l10n/nl.json
@@ -4,6 +4,7 @@
"No server to federate with found" : "Geen server gevonden om mee te federeren",
"Could not add server" : "Kon server niet toevoegen",
"Federation" : "Federatie",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Federatie maakt het mogelijk om te verbinden met andere vertrouwde servers om de gebuikersadministratie te delen.",
"Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federatie maakt het mogelijk om te verbinden met vertrouwde servers en de gebuikersadministratie te delen. Zo kun je automatisch externe gebruikers toevoegen voor federatief delen.",
"Trusted servers" : "Vertrouwde servers",
"Add server automatically once a federated share was created successfully" : "Voeg server automatisch toe zodra een gefedereerde share succesvol gecreëerd is",
diff --git a/apps/federation/l10n/sl.js b/apps/federation/l10n/sl.js
index a63995168bb..dffd2e860c7 100644
--- a/apps/federation/l10n/sl.js
+++ b/apps/federation/l10n/sl.js
@@ -1,15 +1,17 @@
OC.L10N.register(
"federation",
{
- "Added to the list of trusted servers" : "Dodano na spisek varnih strežnikov",
- "Server is already in the list of trusted servers." : "Strežnik je že na seznamu potrjenih strežnikov.",
+ "Added to the list of trusted servers" : "Strežnik je dodan na seznam varnih strežnikov.",
+ "Server is already in the list of trusted servers." : "Strežnik je že na seznamu varnih strežnikov.",
"No server to federate with found" : "Ne najdem strežnika za federiranje",
- "Could not add server" : "Ni mogoče dodati strežnika.",
- "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federiranje omogoča povezovanje z drugimi varnimi strežniki in izmenjavo spiska uporabnikov. Primer je samodejno dopolnjevanje zunanjih uporabnikov pri federacijski souporabi.",
- "Trusted servers" : "Zanesljivi strežniki",
- "Add server automatically once a federated share was created successfully" : "Strežnik dodaj samodejno, ko je povezava zveznega oblaka uspešno ustvarjena",
- "+ Add trusted server" : "+ Dodaj zanesljiv strežnik",
- "Trusted server" : "Zanesljiv strežnik",
+ "Could not add server" : "Strežnika ni mogoče dodati.",
+ "Federation" : "Zvezni oblaki",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Zvezni oblak omogoča povezovanje zunanjih strežnikov v skupen oblak in izmenjavo datotek in map uporabnikov različnih sistemov.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Zvezni oblak omogoča povezovanje z drugimi varnimi strežniki in izmenjavo datotek in map uporabnikov v enotnem oblaku. Možnost omogoča na primer samodejno dopolnjevanje tudi imen uporabnikov na drugih, zunanjih strežnikih.",
+ "Trusted servers" : "Varni strežniki",
+ "Add server automatically once a federated share was created successfully" : "Strežnik dodaj samodejno, ko je povezava zveznega oblaka uspešno ustvarjena.",
+ "+ Add trusted server" : "+ Dodaj varen strežnik",
+ "Trusted server" : "Varen strežnik",
"Add" : "Dodaj"
},
"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);");
diff --git a/apps/federation/l10n/sl.json b/apps/federation/l10n/sl.json
index 18fcd8d2d2d..dc2562b2bf8 100644
--- a/apps/federation/l10n/sl.json
+++ b/apps/federation/l10n/sl.json
@@ -1,13 +1,15 @@
{ "translations": {
- "Added to the list of trusted servers" : "Dodano na spisek varnih strežnikov",
- "Server is already in the list of trusted servers." : "Strežnik je že na seznamu potrjenih strežnikov.",
+ "Added to the list of trusted servers" : "Strežnik je dodan na seznam varnih strežnikov.",
+ "Server is already in the list of trusted servers." : "Strežnik je že na seznamu varnih strežnikov.",
"No server to federate with found" : "Ne najdem strežnika za federiranje",
- "Could not add server" : "Ni mogoče dodati strežnika.",
- "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Federiranje omogoča povezovanje z drugimi varnimi strežniki in izmenjavo spiska uporabnikov. Primer je samodejno dopolnjevanje zunanjih uporabnikov pri federacijski souporabi.",
- "Trusted servers" : "Zanesljivi strežniki",
- "Add server automatically once a federated share was created successfully" : "Strežnik dodaj samodejno, ko je povezava zveznega oblaka uspešno ustvarjena",
- "+ Add trusted server" : "+ Dodaj zanesljiv strežnik",
- "Trusted server" : "Zanesljiv strežnik",
+ "Could not add server" : "Strežnika ni mogoče dodati.",
+ "Federation" : "Zvezni oblaki",
+ "Federation allows you to connect with other trusted servers to exchange the user directory." : "Zvezni oblak omogoča povezovanje zunanjih strežnikov v skupen oblak in izmenjavo datotek in map uporabnikov različnih sistemov.",
+ "Federation allows you to connect with other trusted servers to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Zvezni oblak omogoča povezovanje z drugimi varnimi strežniki in izmenjavo datotek in map uporabnikov v enotnem oblaku. Možnost omogoča na primer samodejno dopolnjevanje tudi imen uporabnikov na drugih, zunanjih strežnikih.",
+ "Trusted servers" : "Varni strežniki",
+ "Add server automatically once a federated share was created successfully" : "Strežnik dodaj samodejno, ko je povezava zveznega oblaka uspešno ustvarjena.",
+ "+ Add trusted server" : "+ Dodaj varen strežnik",
+ "Trusted server" : "Varen strežnik",
"Add" : "Dodaj"
},"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"
} \ No newline at end of file
diff --git a/apps/federation/l10n/uk.js b/apps/federation/l10n/uk.js
index 6837d75606c..0206ed19472 100644
--- a/apps/federation/l10n/uk.js
+++ b/apps/federation/l10n/uk.js
@@ -1,11 +1,13 @@
OC.L10N.register(
"federation",
{
- "Server added to the list of trusted ownClouds" : "Сервер додано до переліку довірених серверів ownClouds",
+ "Added to the list of trusted servers" : "Сервер додано до списку довірених серверів",
"Server is already in the list of trusted servers." : "Сервер вже знаходиться в переліку довірених серверів",
- "No ownCloud server found" : "Не знайдено сервер ownCloud",
"Could not add server" : "Не вдалося додати сервер",
"Federation" : "Об'єднання",
- "ownCloud Federation allows you to connect with other trusted ownClouds to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Об'єднання ownCloud дозволяє вам з'єднання з іншими довіреними серверами ownClouds для обміну директоріями користувачів. Наприклад це буде використовуватись для авто-доповнення зовнішніх користувачів до об'єднаних ресурсів обміну. "
+ "Trusted servers" : "Довірені сервера",
+ "+ Add trusted server" : "Додати довірений сервер",
+ "Trusted server" : "Довірений сервер",
+ "Add" : "Додати"
},
-"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");
+"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);");
diff --git a/apps/federation/l10n/uk.json b/apps/federation/l10n/uk.json
index 6eb357d6284..b314005c9b4 100644
--- a/apps/federation/l10n/uk.json
+++ b/apps/federation/l10n/uk.json
@@ -1,9 +1,11 @@
{ "translations": {
- "Server added to the list of trusted ownClouds" : "Сервер додано до переліку довірених серверів ownClouds",
+ "Added to the list of trusted servers" : "Сервер додано до списку довірених серверів",
"Server is already in the list of trusted servers." : "Сервер вже знаходиться в переліку довірених серверів",
- "No ownCloud server found" : "Не знайдено сервер ownCloud",
"Could not add server" : "Не вдалося додати сервер",
"Federation" : "Об'єднання",
- "ownCloud Federation allows you to connect with other trusted ownClouds to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "Об'єднання ownCloud дозволяє вам з'єднання з іншими довіреними серверами ownClouds для обміну директоріями користувачів. Наприклад це буде використовуватись для авто-доповнення зовнішніх користувачів до об'єднаних ресурсів обміну. "
-},"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
+ "Trusted servers" : "Довірені сервера",
+ "+ Add trusted server" : "Додати довірений сервер",
+ "Trusted server" : "Довірений сервер",
+ "Add" : "Додати"
+},"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"
} \ No newline at end of file
diff --git a/apps/files/l10n/bg.js b/apps/files/l10n/bg.js
index 47255cd9591..796e564c59a 100644
--- a/apps/files/l10n/bg.js
+++ b/apps/files/l10n/bg.js
@@ -1,29 +1,35 @@
OC.L10N.register(
"files",
{
- "Storage is temporarily not available" : "Временно хранилището не е налично.",
- "Storage invalid" : "Невалидно хранилище.",
+ "Storage is temporarily not available" : "Временно хранилището не е налично",
+ "Storage invalid" : "Невалидно хранилище",
"Unknown error" : "Неизвестна грешка",
"All files" : "Всички файлове",
- "Recent" : "Скорошен",
+ "Recent" : "Последни",
"Favorites" : "Любими",
- "File could not be found" : "Файлът не може да бъде открит",
+ "File could not be found" : "Файлът не може да бъде намерен",
+ "Move or copy" : "Премести или копирай",
"Download" : "Изтегли",
- "Delete" : "Изтриване",
+ "Delete" : "Изтрий",
"Home" : "Домашен",
"Close" : "Затвори",
"Could not create folder \"{dir}\"" : "Папката \"{dir}\" не може да бъде създадена",
"Upload cancelled." : "Качването е прекъснато.",
"Unable to upload {filename} as it is a directory or has 0 bytes" : "Неуспешно качване на {filename}, защото е директория или с размер 0 байта.",
"Not enough free space, you are uploading {size1} but only {size2} is left" : "Няма достатъчно свободно място. Опитвате да качите {size1} при свободни само {size2}",
- "Target folder \"{dir}\" does not exist any more" : "Целева папка \"{dir}\" не съществува вече",
+ "Target folder \"{dir}\" does not exist any more" : "Дестинацията \"{dir}\" не съществува",
"Not enough free space" : "Няма достатъчно свободно място",
+ "Uploading …" : "Качване …",
+ "…" : "…",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} от {totalSize} ({bitrate})",
+ "Target folder does not exist any more" : "Дестинацията не съществува",
"Actions" : "Действия",
- "Rename" : "Преименуване",
- "Target folder" : "Целева папка",
+ "Rename" : "Преименувай",
+ "Copy" : "Копирай",
+ "Target folder" : "Дестинация",
"Disconnect storage" : "Извади хранилището",
"Unshare" : "Прекратяване на споделяне",
+ "Could not load info for file \"{file}\"" : "Информацията за файла \"{file}\" не може да бъде заредена",
"Files" : "Файлове",
"Details" : "Детайли",
"Select" : "Избери",
@@ -31,11 +37,13 @@ OC.L10N.register(
"Unable to determine date" : "Неуспешно установяване на дата",
"This operation is forbidden" : "Операцията е забранена",
"This directory is unavailable, please check the logs or contact the administrator" : "Директорията не е налична. Проверете журнала или се свържете с администратора",
- "Could not move \"{file}\", target exists" : "Файлът \"{file}\" не може да бъде преместен защото съществува в дестинацията",
+ "Could not move \"{file}\", target exists" : "Файлът \"{file}\" не може да бъде преместен, дестинацията съществува",
"Could not move \"{file}\"" : "Файлът \"{file}\" не може да бъде преместен",
+ "Could not copy \"{file}\", target exists" : "Файлът \"{file}\" не може да бъде копиран, дестинацията съществува",
+ "Could not copy \"{file}\"" : "Файлът \"{file}\" не може да бъде копиран",
"{newName} already exists" : "{newName} вече съществува",
"Could not rename \"{fileName}\", it does not exist any more" : "Файлът \"{fileName}\" не може да бъде преименуван защото не съществува",
- "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Името \"{targetName}\" вече се ползва от директория \"{dir}\". Моля, изберете друго име.",
+ "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Името \"{targetName}\" се ползва в директорията \"{dir}\". Моля, изберете друго име.",
"Could not rename \"{fileName}\"" : "\"{fileName}\" не може да бъде преименуван",
"Could not create file \"{file}\"" : "Файлът \"{file}\" не може да бъде създаден",
"Could not create file \"{file}\" because it already exists" : "Файлът \"{file}\" не може да бъде създаден защото вече съществува",
@@ -43,13 +51,13 @@ OC.L10N.register(
"Error deleting file \"{fileName}\"." : "Грешка при изтриването на файла \"{fileName}\".",
"Name" : "Име",
"Size" : "Размер",
- "Modified" : "Променен на",
+ "Modified" : "Промяна",
"_%n folder_::_%n folders_" : ["%n папка","%n папки"],
"_%n file_::_%n files_" : ["%n файл","%n файла"],
"{dirs} and {files}" : "{dirs} и {files}",
"_including %n hidden_::_including %n hidden_" : ["включително %n скрит","включително %n скрити"],
"You don’t have permission to upload or create files here" : "Нямаш разрешение да създаваш или качваш файлове тук.",
- "_Uploading %n file_::_Uploading %n files_" : ["Качване на %n файл","Качване на %n файла."],
+ "_Uploading %n file_::_Uploading %n files_" : ["Качване на %n файл","Качване на %n файла"],
"New" : "Създай",
"\"{name}\" is an invalid file name." : "\"{name}\" е непозволено име за файл.",
"File name cannot be empty." : "Името на файла не може да бъде оставено празно.",
@@ -64,11 +72,14 @@ OC.L10N.register(
"Favorited" : "Отбелязано в любими",
"Favorite" : "Любими",
"New folder" : "Нова папка",
- "An error occurred while trying to update the tags" : "Възникна грешка при опита за промяна на тагове",
- "Added to favorites" : "Добавено към предпочитани",
- "Removed from favorites" : "Премахнато от предпочитани",
- "You added {file} to your favorites" : "Добавихте {file} към предпочитани",
- "You removed {file} from your favorites" : "Махнахте {file} от вашите предпочитания",
+ "Upload file" : "Качи файл",
+ "Remove from favorites" : "Премахни от любимите",
+ "Add to favorites" : "Добави към любимите",
+ "An error occurred while trying to update the tags" : "Възникна грешка при опита за промяна на етикети",
+ "Added to favorites" : "Добавено към любимите",
+ "Removed from favorites" : "Премахни от любимите",
+ "You added {file} to your favorites" : "Добавихте {file} към любимите",
+ "You removed {file} from your favorites" : "Премахнахте {file} от любимите",
"File changes" : "Файлови промени",
"Created by {user}" : "Създаден от {user}",
"Changed by {user}" : "Променен от {user}",
@@ -76,20 +87,21 @@ OC.L10N.register(
"Restored by {user}" : "Възстановен от {user}",
"Renamed by {user}" : "Преименуван от {user}",
"Moved by {user}" : "Преместен от {user}",
+ "\"remote user\"" : "\"отдалечен потребител\"",
"You created {file}" : "Вие създадохте {file}",
"{user} created {file}" : "{user} създаде {file}",
"{file} was created in a public folder" : "{file} беше създаден в публична папка",
- "You changed {file}" : "Променихте {file}",
+ "You changed {file}" : "Вие променихте {file}",
"{user} changed {file}" : "{user} промени {file}",
"You deleted {file}" : "Вие изтрихте {file}",
"{user} deleted {file}" : "{user} изтри {file}",
"You restored {file}" : "Възстановихте {file}",
"{user} restored {file}" : "{user} възстанови {file}",
- "You renamed {oldfile} to {newfile}" : "Преименувахте {oldfile} на {newfile}",
+ "You renamed {oldfile} to {newfile}" : "Вие преименувахте {oldfile} на {newfile}",
"{user} renamed {oldfile} to {newfile}" : "{user} преименува {oldfile} на {newfile}",
- "You moved {oldfile} to {newfile}" : "Преместихте {oldfile} в {newfile}",
+ "You moved {oldfile} to {newfile}" : "Вие преместихте {oldfile} в {newfile}",
"{user} moved {oldfile} to {newfile}" : "{user} премести {oldfile} в {newfile}",
- "A file has been added to or removed from your <strong>favorites</strong>" : "Файл беше добавен или премахнат от <strong>предпочитанията</strong> ви",
+ "A file has been added to or removed from your <strong>favorites</strong>" : "Файл беше добавен или премахнат от <strong>любимите</strong> ви",
"A file or folder has been <strong>changed</strong> or <strong>renamed</strong>" : "<strong>Промяна</strong> или <strong>преименуване</strong> на файл / папка",
"A new file or folder has been <strong>created</strong>" : "<strong>Създаване</strong> на нов файл / папка",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Изпращай известия само при създаване / промяна на <strong>любими файлове</strong> <em>(Само за потока)</em>",
@@ -97,25 +109,31 @@ OC.L10N.register(
"File handling" : "Операция с файла",
"Maximum upload size" : "Максимален размер",
"max. possible: " : "максимално:",
- "Save" : "Запис",
- "With PHP-FPM it might take 5 minutes for changes to be applied." : "Ако ползвате PHP-FPM прилагането на една промяна може да отнеме 5 минути.",
+ "Save" : "Запиши",
+ "With PHP-FPM it might take 5 minutes for changes to be applied." : "Ако ползвате PHP-FPM прилагането на промени може да отнеме 5 минути.",
"Missing permissions to edit from here." : "Липсва разрешение за редакция от тук.",
"Settings" : "Настройки",
"Show hidden files" : "Показвай и скрити файлове",
"WebDAV" : "WebDAV",
- "No files in here" : "Тук няма файлове",
- "Upload some content or sync with your devices!" : "Качи съдържание или синхронизирай с твоите устройства!",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">access your Files via WebDAV</a>" : "Адресът осигурява<a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">достъп до файловете ви чрез WebDAV</a>",
+ "No files in here" : "Няма файлове",
+ "Upload some content or sync with your devices!" : "Качете съдържание или синхронизирайте с вашите устройства!",
"No entries found in this folder" : "Няма намерени записи в тази папка",
"Select all" : "Избери всички",
- "Upload too large" : "Прекалено голям файл за качване.",
+ "Upload too large" : "Прекалено голям файл за качване",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Файловете, които се опитвате да качите са по-големи от позволеното на сървъра.",
- "Files and folders you mark as favorite will show up here" : "Файловете и папките които отбелязваш като любими ще се показват тук",
+ "No favorites yet" : "Няма любими",
+ "Files and folders you mark as favorite will show up here" : "Файловете и папките които маркирате като любими ще се показват тук",
"Tags" : "Етикети",
"Deleted files" : "Изтрити файлове",
- "Shared with others" : "Споделено с други",
- "Shared with you" : "Споделено с вас",
- "Shared by link" : "Споделено с връзка",
+ "Shares" : "Споделени",
+ "Shared with others" : "Споделени с други",
+ "Shared with you" : "Споделени с вас",
+ "Shared by link" : "Споделени с връзка",
+ "Deleted shares" : "Изтрити",
"Text file" : "Текстов файл",
- "New text file.txt" : "Нов текст file.txt"
+ "New text file.txt" : "Текстов файл.txt",
+ "Move" : "Премести",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Адресът осигурява <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">достъп до файловете ви чрез WebDAV</a>"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files/l10n/bg.json b/apps/files/l10n/bg.json
index 781af24cba7..36cc17b3cc1 100644
--- a/apps/files/l10n/bg.json
+++ b/apps/files/l10n/bg.json
@@ -1,27 +1,33 @@
{ "translations": {
- "Storage is temporarily not available" : "Временно хранилището не е налично.",
- "Storage invalid" : "Невалидно хранилище.",
+ "Storage is temporarily not available" : "Временно хранилището не е налично",
+ "Storage invalid" : "Невалидно хранилище",
"Unknown error" : "Неизвестна грешка",
"All files" : "Всички файлове",
- "Recent" : "Скорошен",
+ "Recent" : "Последни",
"Favorites" : "Любими",
- "File could not be found" : "Файлът не може да бъде открит",
+ "File could not be found" : "Файлът не може да бъде намерен",
+ "Move or copy" : "Премести или копирай",
"Download" : "Изтегли",
- "Delete" : "Изтриване",
+ "Delete" : "Изтрий",
"Home" : "Домашен",
"Close" : "Затвори",
"Could not create folder \"{dir}\"" : "Папката \"{dir}\" не може да бъде създадена",
"Upload cancelled." : "Качването е прекъснато.",
"Unable to upload {filename} as it is a directory or has 0 bytes" : "Неуспешно качване на {filename}, защото е директория или с размер 0 байта.",
"Not enough free space, you are uploading {size1} but only {size2} is left" : "Няма достатъчно свободно място. Опитвате да качите {size1} при свободни само {size2}",
- "Target folder \"{dir}\" does not exist any more" : "Целева папка \"{dir}\" не съществува вече",
+ "Target folder \"{dir}\" does not exist any more" : "Дестинацията \"{dir}\" не съществува",
"Not enough free space" : "Няма достатъчно свободно място",
+ "Uploading …" : "Качване …",
+ "…" : "…",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} от {totalSize} ({bitrate})",
+ "Target folder does not exist any more" : "Дестинацията не съществува",
"Actions" : "Действия",
- "Rename" : "Преименуване",
- "Target folder" : "Целева папка",
+ "Rename" : "Преименувай",
+ "Copy" : "Копирай",
+ "Target folder" : "Дестинация",
"Disconnect storage" : "Извади хранилището",
"Unshare" : "Прекратяване на споделяне",
+ "Could not load info for file \"{file}\"" : "Информацията за файла \"{file}\" не може да бъде заредена",
"Files" : "Файлове",
"Details" : "Детайли",
"Select" : "Избери",
@@ -29,11 +35,13 @@
"Unable to determine date" : "Неуспешно установяване на дата",
"This operation is forbidden" : "Операцията е забранена",
"This directory is unavailable, please check the logs or contact the administrator" : "Директорията не е налична. Проверете журнала или се свържете с администратора",
- "Could not move \"{file}\", target exists" : "Файлът \"{file}\" не може да бъде преместен защото съществува в дестинацията",
+ "Could not move \"{file}\", target exists" : "Файлът \"{file}\" не може да бъде преместен, дестинацията съществува",
"Could not move \"{file}\"" : "Файлът \"{file}\" не може да бъде преместен",
+ "Could not copy \"{file}\", target exists" : "Файлът \"{file}\" не може да бъде копиран, дестинацията съществува",
+ "Could not copy \"{file}\"" : "Файлът \"{file}\" не може да бъде копиран",
"{newName} already exists" : "{newName} вече съществува",
"Could not rename \"{fileName}\", it does not exist any more" : "Файлът \"{fileName}\" не може да бъде преименуван защото не съществува",
- "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Името \"{targetName}\" вече се ползва от директория \"{dir}\". Моля, изберете друго име.",
+ "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Името \"{targetName}\" се ползва в директорията \"{dir}\". Моля, изберете друго име.",
"Could not rename \"{fileName}\"" : "\"{fileName}\" не може да бъде преименуван",
"Could not create file \"{file}\"" : "Файлът \"{file}\" не може да бъде създаден",
"Could not create file \"{file}\" because it already exists" : "Файлът \"{file}\" не може да бъде създаден защото вече съществува",
@@ -41,13 +49,13 @@
"Error deleting file \"{fileName}\"." : "Грешка при изтриването на файла \"{fileName}\".",
"Name" : "Име",
"Size" : "Размер",
- "Modified" : "Променен на",
+ "Modified" : "Промяна",
"_%n folder_::_%n folders_" : ["%n папка","%n папки"],
"_%n file_::_%n files_" : ["%n файл","%n файла"],
"{dirs} and {files}" : "{dirs} и {files}",
"_including %n hidden_::_including %n hidden_" : ["включително %n скрит","включително %n скрити"],
"You don’t have permission to upload or create files here" : "Нямаш разрешение да създаваш или качваш файлове тук.",
- "_Uploading %n file_::_Uploading %n files_" : ["Качване на %n файл","Качване на %n файла."],
+ "_Uploading %n file_::_Uploading %n files_" : ["Качване на %n файл","Качване на %n файла"],
"New" : "Създай",
"\"{name}\" is an invalid file name." : "\"{name}\" е непозволено име за файл.",
"File name cannot be empty." : "Името на файла не може да бъде оставено празно.",
@@ -62,11 +70,14 @@
"Favorited" : "Отбелязано в любими",
"Favorite" : "Любими",
"New folder" : "Нова папка",
- "An error occurred while trying to update the tags" : "Възникна грешка при опита за промяна на тагове",
- "Added to favorites" : "Добавено към предпочитани",
- "Removed from favorites" : "Премахнато от предпочитани",
- "You added {file} to your favorites" : "Добавихте {file} към предпочитани",
- "You removed {file} from your favorites" : "Махнахте {file} от вашите предпочитания",
+ "Upload file" : "Качи файл",
+ "Remove from favorites" : "Премахни от любимите",
+ "Add to favorites" : "Добави към любимите",
+ "An error occurred while trying to update the tags" : "Възникна грешка при опита за промяна на етикети",
+ "Added to favorites" : "Добавено към любимите",
+ "Removed from favorites" : "Премахни от любимите",
+ "You added {file} to your favorites" : "Добавихте {file} към любимите",
+ "You removed {file} from your favorites" : "Премахнахте {file} от любимите",
"File changes" : "Файлови промени",
"Created by {user}" : "Създаден от {user}",
"Changed by {user}" : "Променен от {user}",
@@ -74,20 +85,21 @@
"Restored by {user}" : "Възстановен от {user}",
"Renamed by {user}" : "Преименуван от {user}",
"Moved by {user}" : "Преместен от {user}",
+ "\"remote user\"" : "\"отдалечен потребител\"",
"You created {file}" : "Вие създадохте {file}",
"{user} created {file}" : "{user} създаде {file}",
"{file} was created in a public folder" : "{file} беше създаден в публична папка",
- "You changed {file}" : "Променихте {file}",
+ "You changed {file}" : "Вие променихте {file}",
"{user} changed {file}" : "{user} промени {file}",
"You deleted {file}" : "Вие изтрихте {file}",
"{user} deleted {file}" : "{user} изтри {file}",
"You restored {file}" : "Възстановихте {file}",
"{user} restored {file}" : "{user} възстанови {file}",
- "You renamed {oldfile} to {newfile}" : "Преименувахте {oldfile} на {newfile}",
+ "You renamed {oldfile} to {newfile}" : "Вие преименувахте {oldfile} на {newfile}",
"{user} renamed {oldfile} to {newfile}" : "{user} преименува {oldfile} на {newfile}",
- "You moved {oldfile} to {newfile}" : "Преместихте {oldfile} в {newfile}",
+ "You moved {oldfile} to {newfile}" : "Вие преместихте {oldfile} в {newfile}",
"{user} moved {oldfile} to {newfile}" : "{user} премести {oldfile} в {newfile}",
- "A file has been added to or removed from your <strong>favorites</strong>" : "Файл беше добавен или премахнат от <strong>предпочитанията</strong> ви",
+ "A file has been added to or removed from your <strong>favorites</strong>" : "Файл беше добавен или премахнат от <strong>любимите</strong> ви",
"A file or folder has been <strong>changed</strong> or <strong>renamed</strong>" : "<strong>Промяна</strong> или <strong>преименуване</strong> на файл / папка",
"A new file or folder has been <strong>created</strong>" : "<strong>Създаване</strong> на нов файл / папка",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Изпращай известия само при създаване / промяна на <strong>любими файлове</strong> <em>(Само за потока)</em>",
@@ -95,25 +107,31 @@
"File handling" : "Операция с файла",
"Maximum upload size" : "Максимален размер",
"max. possible: " : "максимално:",
- "Save" : "Запис",
- "With PHP-FPM it might take 5 minutes for changes to be applied." : "Ако ползвате PHP-FPM прилагането на една промяна може да отнеме 5 минути.",
+ "Save" : "Запиши",
+ "With PHP-FPM it might take 5 minutes for changes to be applied." : "Ако ползвате PHP-FPM прилагането на промени може да отнеме 5 минути.",
"Missing permissions to edit from here." : "Липсва разрешение за редакция от тук.",
"Settings" : "Настройки",
"Show hidden files" : "Показвай и скрити файлове",
"WebDAV" : "WebDAV",
- "No files in here" : "Тук няма файлове",
- "Upload some content or sync with your devices!" : "Качи съдържание или синхронизирай с твоите устройства!",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">access your Files via WebDAV</a>" : "Адресът осигурява<a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">достъп до файловете ви чрез WebDAV</a>",
+ "No files in here" : "Няма файлове",
+ "Upload some content or sync with your devices!" : "Качете съдържание или синхронизирайте с вашите устройства!",
"No entries found in this folder" : "Няма намерени записи в тази папка",
"Select all" : "Избери всички",
- "Upload too large" : "Прекалено голям файл за качване.",
+ "Upload too large" : "Прекалено голям файл за качване",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Файловете, които се опитвате да качите са по-големи от позволеното на сървъра.",
- "Files and folders you mark as favorite will show up here" : "Файловете и папките които отбелязваш като любими ще се показват тук",
+ "No favorites yet" : "Няма любими",
+ "Files and folders you mark as favorite will show up here" : "Файловете и папките които маркирате като любими ще се показват тук",
"Tags" : "Етикети",
"Deleted files" : "Изтрити файлове",
- "Shared with others" : "Споделено с други",
- "Shared with you" : "Споделено с вас",
- "Shared by link" : "Споделено с връзка",
+ "Shares" : "Споделени",
+ "Shared with others" : "Споделени с други",
+ "Shared with you" : "Споделени с вас",
+ "Shared by link" : "Споделени с връзка",
+ "Deleted shares" : "Изтрити",
"Text file" : "Текстов файл",
- "New text file.txt" : "Нов текст file.txt"
+ "New text file.txt" : "Текстов файл.txt",
+ "Move" : "Премести",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Адресът осигурява <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">достъп до файловете ви чрез WebDAV</a>"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files/l10n/cs.js b/apps/files/l10n/cs.js
index 74123bad5f6..543db45d752 100644
--- a/apps/files/l10n/cs.js
+++ b/apps/files/l10n/cs.js
@@ -7,13 +7,13 @@ OC.L10N.register(
"All files" : "Všechny soubory",
"Recent" : "Nedávné",
"Favorites" : "Oblíbené",
- "File could not be found" : "Soubor nelze nalézt",
+ "File could not be found" : "Soubor se nedaří nalézt",
"Move or copy" : "Přesunout nebo zkopírovat",
"Download" : "Stáhnout",
"Delete" : "Smazat",
"Home" : "Domů",
"Close" : "Zavřít",
- "Could not create folder \"{dir}\"" : "Nelze vytvořit adresář \"{dir}\"",
+ "Could not create folder \"{dir}\"" : "Nelze vytvořit složku „{dir}“",
"Upload cancelled." : "Odesílání zrušeno.",
"Unable to upload {filename} as it is a directory or has 0 bytes" : "Nelze nahrát soubor {filename}, protože je to buď adresář nebo má velikost 0 bytů",
"Not enough free space, you are uploading {size1} but only {size2} is left" : "Není dostatek místa pro uložení, velikost souboru je {size1}, zbývá pouze {size2}",
@@ -23,8 +23,8 @@ OC.L10N.register(
"…" : "…",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} z {totalSize} ({bitrate})",
"Uploading that item is not supported" : "Nahrání této položky není podporováno",
- "Target folder does not exist any more" : "Cílový adresář už neexistuje",
- "Error when assembling chunks, status code {status}" : "Chyba při kompletaci kusů, kód chyby {status}",
+ "Target folder does not exist any more" : "Cílová složka už neexistuje",
+ "Error when assembling chunks, status code {status}" : "Chyba při kompletaci shluků, kód chyby {status}",
"Actions" : "Činnosti",
"Rename" : "Přejmenovat",
"Copy" : "Kopírovat",
@@ -38,38 +38,38 @@ OC.L10N.register(
"Pending" : "Nevyřízené",
"Unable to determine date" : "Nelze určit datum",
"This operation is forbidden" : "Tato operace je zakázána",
- "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte prosím logy nebo kontaktujte svého správce systému",
- "Could not move \"{file}\", target exists" : "Nelze přesunout \"{file}\", cíl existuje",
- "Could not move \"{file}\"" : "Nelze přesunout \"{file}\"",
- "Could not copy \"{file}\", target exists" : "Nelze kopírovat \"{file}\", cíl již existuje",
- "Could not copy \"{file}\"" : "Nelze kopírovat \"{file}\"",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte záznamy událostí nebo se obraťte na správce",
+ "Could not move \"{file}\", target exists" : "Nelze přesunout „{file}“, cíl existuje",
+ "Could not move \"{file}\"" : "Nelze přesunout „{file}“",
+ "Could not copy \"{file}\", target exists" : "Nelze kopírovat „{file}“, cíl už existuje",
+ "Could not copy \"{file}\"" : "Nelze kopírovat „{file}“",
"Copied {origin} inside {destination}" : "{origin} zkopírován do {destination}",
"Copied {origin} and {nbfiles} other files inside {destination}" : "{origin} a {nbfiles} dalších souborů zkopírováno do {destination}",
"{newName} already exists" : "{newName} už existuje",
- "Could not rename \"{fileName}\", it does not exist any more" : "Nelze přejmenovat \"{fileName}\", již neexistuje",
- "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Jméno \"{targetName}\" je již použito v adresáři \"{dir}\". Vyberte prosím jiné jméno.",
- "Could not rename \"{fileName}\"" : "Nelze přejmenovat \"{fileName}\"",
- "Could not create file \"{file}\"" : "Nelze vytvořit soubor \"{file}\"",
- "Could not create file \"{file}\" because it already exists" : "Nelze vytvořit soubor \"{file}\", protože již existuje",
- "Could not create folder \"{dir}\" because it already exists" : "Nelze vytvořit adresář \"{dir}\", protože již existuje",
- "Error deleting file \"{fileName}\"." : "Chyba mazání souboru \"{fileName}\".",
+ "Could not rename \"{fileName}\", it does not exist any more" : "Nelze přejmenovat „{fileName}“, už neexistuje",
+ "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Název „{targetName}“ je už použito ve složce „{dir}“. Zvolte jiný název.",
+ "Could not rename \"{fileName}\"" : "Nelze přejmenovat „{fileName}“",
+ "Could not create file \"{file}\"" : "Nelze vytvořit soubor „{file}“",
+ "Could not create file \"{file}\" because it already exists" : "Nelze vytvořit soubor „{file}“, protože už existuje",
+ "Could not create folder \"{dir}\" because it already exists" : "Nelze vytvořit složku „{dir}“, protože už existuje",
+ "Error deleting file \"{fileName}\"." : "Chyba mazání souboru „{fileName}“.",
"No search results in other folders for {tag}{filter}{endtag}" : "Žádné výsledky hledání v ostatních složkách pro {tag}{filter}{endtag}",
"Name" : "Název",
"Size" : "Velikost",
"Modified" : "Upraveno",
- "_%n folder_::_%n folders_" : ["%n adresář","%n adresáře","%n adresářů","%n adresářů"],
+ "_%n folder_::_%n folders_" : ["%n šložka","%n složky","%n složek","%n složky"],
"_%n file_::_%n files_" : ["%n soubor","%n soubory","%n souborů","%n souborů"],
"{dirs} and {files}" : "{dirs} a {files}",
"_including %n hidden_::_including %n hidden_" : ["přidán %n skrytý","přidány %n skryté","přidáno %n skrytých","přidáno %n skrytých"],
"You don’t have permission to upload or create files here" : "Nemáte oprávnění sem nahrávat nebo vytvářet soubory",
- "_Uploading %n file_::_Uploading %n files_" : ["Nahrávám %n soubor","Nahrávám %n soubory","Nahrávám %n souborů","Nahrávám %n souborů"],
+ "_Uploading %n file_::_Uploading %n files_" : ["Nahrává se %n soubor","Nahrávají se %n soubory","Nahrává se %n souborů","Nahrávají se %n soubory"],
"New" : "Nový",
"{used} of {quota} used" : "Využito {used} z {quota} ",
"{used} used" : "{used} Využito",
- "\"{name}\" is an invalid file name." : "\"{name}\" je neplatným názvem souboru.",
- "File name cannot be empty." : "Název souboru nemůže být prázdný řetězec.",
- "\"/\" is not allowed inside a file name." : "\"/\" není povolený znak v názvu souboru",
- "\"{name}\" is not an allowed filetype" : "\"{name}\" není povolený typ souboru",
+ "\"{name}\" is an invalid file name." : "„{name}“ není platným názvem souboru.",
+ "File name cannot be empty." : "Je třeba vyplnit název souboru.",
+ "\"/\" is not allowed inside a file name." : "„/“ není povolený znak v názvu souboru.",
+ "\"{name}\" is not an allowed filetype" : "„{name}“ není povolený typ souboru",
"Storage of {owner} is full, files can not be updated or synced anymore!" : "Úložiště uživatele {owner} je zaplněné, soubory nelze aktualizovat a synchronizovat!",
"Your storage is full, files can not be updated or synced anymore!" : "Vaše úložiště je plné, nelze aktualizovat ani synchronizovat soubory.",
"Storage of {owner} is almost full ({usedSpacePercent}%)" : "Úložiště uživatele {owner} je téměř plné ({usedSpacePercent}%)",
@@ -78,7 +78,7 @@ OC.L10N.register(
"View in folder" : "Zobrazit ve složce",
"Copied!" : "Zkopírováno!",
"Copy direct link (only works for users who have access to this file/folder)" : "Zkopírovat přímý odkaz (funguje pouze pro uživatele, kteří mají přístup k tomuto souboru/složce)",
- "Path" : "Cesta",
+ "Path" : "Popis umístění",
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajty","%n bajtů","%n bajtů"],
"Favorited" : "Přidáno k oblíbeným",
"Favorite" : "Oblíbené",
@@ -93,10 +93,10 @@ OC.L10N.register(
"You added {file} to your favorites" : "Do svých oblíbených jste přidali {file}",
"You removed {file} from your favorites" : "Odstranili jste {file} ze svých oblíbených",
"File changes" : "Změny souboru",
- "Created by {user}" : "Vytvořil {user}",
- "Changed by {user}" : "Změnil {user}",
- "Deleted by {user}" : "Odstranil {user}",
- "Restored by {user}" : "Obnovil {user}",
+ "Created by {user}" : "Vytvořil(a) {user}",
+ "Changed by {user}" : "Změnil(a) {user}",
+ "Deleted by {user}" : "Odstranil(a) {user}",
+ "Restored by {user}" : "Obnovil(a) {user}",
"Renamed by {user}" : "Přejmenoval(a) {user}",
"Moved by {user}" : "Přesunul(a) {user}",
"\"remote user\"" : "„uživatel na protějšku“",
@@ -108,23 +108,23 @@ OC.L10N.register(
"You changed {file}" : "Změnil(a) jste {file}",
"You changed an encrypted file in {file}" : "Změnili jste šifrovaný soubor {file}",
"{user} changed {file}" : "{user} změnil(a) {file}",
- "{user} changed an encrypted file in {file}" : "{user} změnil šifrovaný soubor {file}",
+ "{user} changed an encrypted file in {file}" : "{user} změnil(a) šifrovaný soubor {file}",
"You deleted {file}" : "Odstranil(a) jste {file}",
"You deleted an encrypted file in {file}" : "Smazali jste šifrovaný soubor {file}",
"{user} deleted {file}" : "{user} smazal(a) {file}",
"{user} deleted an encrypted file in {file}" : "{user} smazal šifrovaný soubor {file}",
- "You restored {file}" : "Obnovil(a) jste {file}",
- "{user} restored {file}" : "{user} obnovil {file}",
+ "You restored {file}" : "Obnovili jste {file}",
+ "{user} restored {file}" : "{user} obnovil(a) {file}",
"You renamed {oldfile} to {newfile}" : "Přejmenoval(a) jste {oldfile} na {newfile}",
- "{user} renamed {oldfile} to {newfile}" : "{user} přejmenoval {oldfile} na {newfile}",
+ "{user} renamed {oldfile} to {newfile}" : "{user} přejmenoval(a) {oldfile} na {newfile}",
"You moved {oldfile} to {newfile}" : "{oldfile} jste přesunul(a) do {newfile}",
"{user} moved {oldfile} to {newfile}" : "{user} přesunul(a) {oldfile} do {newfile}",
"A file has been added to or removed from your <strong>favorites</strong>" : "Soubor byl přidán, nebo odstraněn z vašich <strong>oblíbených</strong>",
"A file or folder has been <strong>changed</strong> or <strong>renamed</strong>" : "Soubor nebo adresář byl <strong>změněn</strong> nebo <strong>přejmenován</strong>",
- "A new file or folder has been <strong>created</strong>" : "Byl <strong>vytvořen</strong> nový soubor nebo adresář",
- "A file or folder has been <strong>deleted</strong>" : "Soubor nebo adresář byl <strong>smazán</strong>",
+ "A new file or folder has been <strong>created</strong>" : "Byl <strong>vytvořen</strong> nový soubor nebo složka",
+ "A file or folder has been <strong>deleted</strong>" : "Soubor nebo složka byla <strong>smazána</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Omezovat oznámení o tvorbě a změnách <strong>oblíbených souborů</strong> <em>(Pouze v proudu)</em>",
- "A file or folder has been <strong>restored</strong>" : "Soubor nebo adresář byl <strong>obnoven</strong>",
+ "A file or folder has been <strong>restored</strong>" : "Soubor nebo složka byla <strong>obnovena</strong>",
"Unlimited" : "Neomezeně",
"Upload (max. %s)" : "Nahrát (max. %s)",
"File Management" : "Správa souboru",
@@ -143,12 +143,12 @@ OC.L10N.register(
"Cancel upload" : "Zrušit nahrávání",
"No files in here" : "Žádné soubory",
"Upload some content or sync with your devices!" : "Nahrajte nějaký obsah nebo synchronizujte se svými přístroji!",
- "No entries found in this folder" : "V tomto adresáři nebylo nic nalezeno",
+ "No entries found in this folder" : "V této složce nebylo nic nalezeno",
"Select all" : "Vybrat vše",
"Upload too large" : "Odesílaný soubor je příliš velký",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru.",
"No favorites yet" : "Zatím nic oblíbeného",
- "Files and folders you mark as favorite will show up here" : "Zde budou zobrazeny soubory a adresáře označené jako oblíbené",
+ "Files and folders you mark as favorite will show up here" : "Zde budou zobrazeny soubory a složky označené jako oblíbené",
"Tags" : "Značky",
"Deleted files" : "Odstraněné soubory",
"Shares" : "Sdílení",
@@ -159,8 +159,8 @@ OC.L10N.register(
"Text file" : "Textový soubor",
"New text file.txt" : "Nový textový soubor.txt",
"Move" : "Přesunout",
- "A new file or folder has been <strong>deleted</strong>" : "Nový soubor nebo adresář byl <strong>smazán</strong>",
- "A new file or folder has been <strong>restored</strong>" : "Nový soubor nebo adresář byl <strong>obnoven</strong>",
+ "A new file or folder has been <strong>deleted</strong>" : "Nový soubor nebo složka byla <strong>smazána</strong>",
+ "A new file or folder has been <strong>restored</strong>" : "Nový soubor nebo složka byla <strong>obnovena</strong>",
"Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Použít tuto adresu <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\"> pro přístup k souborům přes WebDAV</a>"
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/files/l10n/cs.json b/apps/files/l10n/cs.json
index 3cada4d47f9..0b11d84cab2 100644
--- a/apps/files/l10n/cs.json
+++ b/apps/files/l10n/cs.json
@@ -5,13 +5,13 @@
"All files" : "Všechny soubory",
"Recent" : "Nedávné",
"Favorites" : "Oblíbené",
- "File could not be found" : "Soubor nelze nalézt",
+ "File could not be found" : "Soubor se nedaří nalézt",
"Move or copy" : "Přesunout nebo zkopírovat",
"Download" : "Stáhnout",
"Delete" : "Smazat",
"Home" : "Domů",
"Close" : "Zavřít",
- "Could not create folder \"{dir}\"" : "Nelze vytvořit adresář \"{dir}\"",
+ "Could not create folder \"{dir}\"" : "Nelze vytvořit složku „{dir}“",
"Upload cancelled." : "Odesílání zrušeno.",
"Unable to upload {filename} as it is a directory or has 0 bytes" : "Nelze nahrát soubor {filename}, protože je to buď adresář nebo má velikost 0 bytů",
"Not enough free space, you are uploading {size1} but only {size2} is left" : "Není dostatek místa pro uložení, velikost souboru je {size1}, zbývá pouze {size2}",
@@ -21,8 +21,8 @@
"…" : "…",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} z {totalSize} ({bitrate})",
"Uploading that item is not supported" : "Nahrání této položky není podporováno",
- "Target folder does not exist any more" : "Cílový adresář už neexistuje",
- "Error when assembling chunks, status code {status}" : "Chyba při kompletaci kusů, kód chyby {status}",
+ "Target folder does not exist any more" : "Cílová složka už neexistuje",
+ "Error when assembling chunks, status code {status}" : "Chyba při kompletaci shluků, kód chyby {status}",
"Actions" : "Činnosti",
"Rename" : "Přejmenovat",
"Copy" : "Kopírovat",
@@ -36,38 +36,38 @@
"Pending" : "Nevyřízené",
"Unable to determine date" : "Nelze určit datum",
"This operation is forbidden" : "Tato operace je zakázána",
- "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte prosím logy nebo kontaktujte svého správce systému",
- "Could not move \"{file}\", target exists" : "Nelze přesunout \"{file}\", cíl existuje",
- "Could not move \"{file}\"" : "Nelze přesunout \"{file}\"",
- "Could not copy \"{file}\", target exists" : "Nelze kopírovat \"{file}\", cíl již existuje",
- "Could not copy \"{file}\"" : "Nelze kopírovat \"{file}\"",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte záznamy událostí nebo se obraťte na správce",
+ "Could not move \"{file}\", target exists" : "Nelze přesunout „{file}“, cíl existuje",
+ "Could not move \"{file}\"" : "Nelze přesunout „{file}“",
+ "Could not copy \"{file}\", target exists" : "Nelze kopírovat „{file}“, cíl už existuje",
+ "Could not copy \"{file}\"" : "Nelze kopírovat „{file}“",
"Copied {origin} inside {destination}" : "{origin} zkopírován do {destination}",
"Copied {origin} and {nbfiles} other files inside {destination}" : "{origin} a {nbfiles} dalších souborů zkopírováno do {destination}",
"{newName} already exists" : "{newName} už existuje",
- "Could not rename \"{fileName}\", it does not exist any more" : "Nelze přejmenovat \"{fileName}\", již neexistuje",
- "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Jméno \"{targetName}\" je již použito v adresáři \"{dir}\". Vyberte prosím jiné jméno.",
- "Could not rename \"{fileName}\"" : "Nelze přejmenovat \"{fileName}\"",
- "Could not create file \"{file}\"" : "Nelze vytvořit soubor \"{file}\"",
- "Could not create file \"{file}\" because it already exists" : "Nelze vytvořit soubor \"{file}\", protože již existuje",
- "Could not create folder \"{dir}\" because it already exists" : "Nelze vytvořit adresář \"{dir}\", protože již existuje",
- "Error deleting file \"{fileName}\"." : "Chyba mazání souboru \"{fileName}\".",
+ "Could not rename \"{fileName}\", it does not exist any more" : "Nelze přejmenovat „{fileName}“, už neexistuje",
+ "The name \"{targetName}\" is already used in the folder \"{dir}\". Please choose a different name." : "Název „{targetName}“ je už použito ve složce „{dir}“. Zvolte jiný název.",
+ "Could not rename \"{fileName}\"" : "Nelze přejmenovat „{fileName}“",
+ "Could not create file \"{file}\"" : "Nelze vytvořit soubor „{file}“",
+ "Could not create file \"{file}\" because it already exists" : "Nelze vytvořit soubor „{file}“, protože už existuje",
+ "Could not create folder \"{dir}\" because it already exists" : "Nelze vytvořit složku „{dir}“, protože už existuje",
+ "Error deleting file \"{fileName}\"." : "Chyba mazání souboru „{fileName}“.",
"No search results in other folders for {tag}{filter}{endtag}" : "Žádné výsledky hledání v ostatních složkách pro {tag}{filter}{endtag}",
"Name" : "Název",
"Size" : "Velikost",
"Modified" : "Upraveno",
- "_%n folder_::_%n folders_" : ["%n adresář","%n adresáře","%n adresářů","%n adresářů"],
+ "_%n folder_::_%n folders_" : ["%n šložka","%n složky","%n složek","%n složky"],
"_%n file_::_%n files_" : ["%n soubor","%n soubory","%n souborů","%n souborů"],
"{dirs} and {files}" : "{dirs} a {files}",
"_including %n hidden_::_including %n hidden_" : ["přidán %n skrytý","přidány %n skryté","přidáno %n skrytých","přidáno %n skrytých"],
"You don’t have permission to upload or create files here" : "Nemáte oprávnění sem nahrávat nebo vytvářet soubory",
- "_Uploading %n file_::_Uploading %n files_" : ["Nahrávám %n soubor","Nahrávám %n soubory","Nahrávám %n souborů","Nahrávám %n souborů"],
+ "_Uploading %n file_::_Uploading %n files_" : ["Nahrává se %n soubor","Nahrávají se %n soubory","Nahrává se %n souborů","Nahrávají se %n soubory"],
"New" : "Nový",
"{used} of {quota} used" : "Využito {used} z {quota} ",
"{used} used" : "{used} Využito",
- "\"{name}\" is an invalid file name." : "\"{name}\" je neplatným názvem souboru.",
- "File name cannot be empty." : "Název souboru nemůže být prázdný řetězec.",
- "\"/\" is not allowed inside a file name." : "\"/\" není povolený znak v názvu souboru",
- "\"{name}\" is not an allowed filetype" : "\"{name}\" není povolený typ souboru",
+ "\"{name}\" is an invalid file name." : "„{name}“ není platným názvem souboru.",
+ "File name cannot be empty." : "Je třeba vyplnit název souboru.",
+ "\"/\" is not allowed inside a file name." : "„/“ není povolený znak v názvu souboru.",
+ "\"{name}\" is not an allowed filetype" : "„{name}“ není povolený typ souboru",
"Storage of {owner} is full, files can not be updated or synced anymore!" : "Úložiště uživatele {owner} je zaplněné, soubory nelze aktualizovat a synchronizovat!",
"Your storage is full, files can not be updated or synced anymore!" : "Vaše úložiště je plné, nelze aktualizovat ani synchronizovat soubory.",
"Storage of {owner} is almost full ({usedSpacePercent}%)" : "Úložiště uživatele {owner} je téměř plné ({usedSpacePercent}%)",
@@ -76,7 +76,7 @@
"View in folder" : "Zobrazit ve složce",
"Copied!" : "Zkopírováno!",
"Copy direct link (only works for users who have access to this file/folder)" : "Zkopírovat přímý odkaz (funguje pouze pro uživatele, kteří mají přístup k tomuto souboru/složce)",
- "Path" : "Cesta",
+ "Path" : "Popis umístění",
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajty","%n bajtů","%n bajtů"],
"Favorited" : "Přidáno k oblíbeným",
"Favorite" : "Oblíbené",
@@ -91,10 +91,10 @@
"You added {file} to your favorites" : "Do svých oblíbených jste přidali {file}",
"You removed {file} from your favorites" : "Odstranili jste {file} ze svých oblíbených",
"File changes" : "Změny souboru",
- "Created by {user}" : "Vytvořil {user}",
- "Changed by {user}" : "Změnil {user}",
- "Deleted by {user}" : "Odstranil {user}",
- "Restored by {user}" : "Obnovil {user}",
+ "Created by {user}" : "Vytvořil(a) {user}",
+ "Changed by {user}" : "Změnil(a) {user}",
+ "Deleted by {user}" : "Odstranil(a) {user}",
+ "Restored by {user}" : "Obnovil(a) {user}",
"Renamed by {user}" : "Přejmenoval(a) {user}",
"Moved by {user}" : "Přesunul(a) {user}",
"\"remote user\"" : "„uživatel na protějšku“",
@@ -106,23 +106,23 @@
"You changed {file}" : "Změnil(a) jste {file}",
"You changed an encrypted file in {file}" : "Změnili jste šifrovaný soubor {file}",
"{user} changed {file}" : "{user} změnil(a) {file}",
- "{user} changed an encrypted file in {file}" : "{user} změnil šifrovaný soubor {file}",
+ "{user} changed an encrypted file in {file}" : "{user} změnil(a) šifrovaný soubor {file}",
"You deleted {file}" : "Odstranil(a) jste {file}",
"You deleted an encrypted file in {file}" : "Smazali jste šifrovaný soubor {file}",
"{user} deleted {file}" : "{user} smazal(a) {file}",
"{user} deleted an encrypted file in {file}" : "{user} smazal šifrovaný soubor {file}",
- "You restored {file}" : "Obnovil(a) jste {file}",
- "{user} restored {file}" : "{user} obnovil {file}",
+ "You restored {file}" : "Obnovili jste {file}",
+ "{user} restored {file}" : "{user} obnovil(a) {file}",
"You renamed {oldfile} to {newfile}" : "Přejmenoval(a) jste {oldfile} na {newfile}",
- "{user} renamed {oldfile} to {newfile}" : "{user} přejmenoval {oldfile} na {newfile}",
+ "{user} renamed {oldfile} to {newfile}" : "{user} přejmenoval(a) {oldfile} na {newfile}",
"You moved {oldfile} to {newfile}" : "{oldfile} jste přesunul(a) do {newfile}",
"{user} moved {oldfile} to {newfile}" : "{user} přesunul(a) {oldfile} do {newfile}",
"A file has been added to or removed from your <strong>favorites</strong>" : "Soubor byl přidán, nebo odstraněn z vašich <strong>oblíbených</strong>",
"A file or folder has been <strong>changed</strong> or <strong>renamed</strong>" : "Soubor nebo adresář byl <strong>změněn</strong> nebo <strong>přejmenován</strong>",
- "A new file or folder has been <strong>created</strong>" : "Byl <strong>vytvořen</strong> nový soubor nebo adresář",
- "A file or folder has been <strong>deleted</strong>" : "Soubor nebo adresář byl <strong>smazán</strong>",
+ "A new file or folder has been <strong>created</strong>" : "Byl <strong>vytvořen</strong> nový soubor nebo složka",
+ "A file or folder has been <strong>deleted</strong>" : "Soubor nebo složka byla <strong>smazána</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Omezovat oznámení o tvorbě a změnách <strong>oblíbených souborů</strong> <em>(Pouze v proudu)</em>",
- "A file or folder has been <strong>restored</strong>" : "Soubor nebo adresář byl <strong>obnoven</strong>",
+ "A file or folder has been <strong>restored</strong>" : "Soubor nebo složka byla <strong>obnovena</strong>",
"Unlimited" : "Neomezeně",
"Upload (max. %s)" : "Nahrát (max. %s)",
"File Management" : "Správa souboru",
@@ -141,12 +141,12 @@
"Cancel upload" : "Zrušit nahrávání",
"No files in here" : "Žádné soubory",
"Upload some content or sync with your devices!" : "Nahrajte nějaký obsah nebo synchronizujte se svými přístroji!",
- "No entries found in this folder" : "V tomto adresáři nebylo nic nalezeno",
+ "No entries found in this folder" : "V této složce nebylo nic nalezeno",
"Select all" : "Vybrat vše",
"Upload too large" : "Odesílaný soubor je příliš velký",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Soubory, které se snažíte odeslat, překračují limit velikosti odesílání na tomto serveru.",
"No favorites yet" : "Zatím nic oblíbeného",
- "Files and folders you mark as favorite will show up here" : "Zde budou zobrazeny soubory a adresáře označené jako oblíbené",
+ "Files and folders you mark as favorite will show up here" : "Zde budou zobrazeny soubory a složky označené jako oblíbené",
"Tags" : "Značky",
"Deleted files" : "Odstraněné soubory",
"Shares" : "Sdílení",
@@ -157,8 +157,8 @@
"Text file" : "Textový soubor",
"New text file.txt" : "Nový textový soubor.txt",
"Move" : "Přesunout",
- "A new file or folder has been <strong>deleted</strong>" : "Nový soubor nebo adresář byl <strong>smazán</strong>",
- "A new file or folder has been <strong>restored</strong>" : "Nový soubor nebo adresář byl <strong>obnoven</strong>",
+ "A new file or folder has been <strong>deleted</strong>" : "Nový soubor nebo složka byla <strong>smazána</strong>",
+ "A new file or folder has been <strong>restored</strong>" : "Nový soubor nebo složka byla <strong>obnovena</strong>",
"Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Použít tuto adresu <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\"> pro přístup k souborům přes WebDAV</a>"
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/files/l10n/fi.js b/apps/files/l10n/fi.js
index 7088d11aa58..74f23d5c758 100644
--- a/apps/files/l10n/fi.js
+++ b/apps/files/l10n/fi.js
@@ -24,6 +24,7 @@ OC.L10N.register(
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize}/{totalSize} ({bitrate})",
"Uploading that item is not supported" : "Kyseisen kohteen lähettäminen ei ole tuettu",
"Target folder does not exist any more" : "Kohdekansiota ei ole enää olemassa",
+ "Error when assembling chunks, status code {status}" : "Virhe koottaessa lohkoja, tilakoodi {status}",
"Actions" : "Toiminnot",
"Rename" : "Nimeä uudelleen",
"Copy" : "Kopioi",
@@ -118,6 +119,7 @@ OC.L10N.register(
"A file or folder has been <strong>restored</strong>" : "Tiedosto tai kansio on <strong>palautettu</strong>",
"Unlimited" : "Rajoittamaton",
"Upload (max. %s)" : "Lähetys (enintään %s)",
+ "File Management" : "Tiedostohallinta",
"File handling" : "Tiedostonhallinta",
"Maximum upload size" : "Lähetettävän tiedoston suurin sallittu koko",
"max. possible: " : "suurin mahdollinen:",
@@ -141,9 +143,11 @@ OC.L10N.register(
"Files and folders you mark as favorite will show up here" : "Suosikeiksi merkitsemäsi tiedostot ja kansiot näkyvät täällä",
"Tags" : "Tunnisteet",
"Deleted files" : "Poistetut tiedostot",
+ "Shares" : "Jaot",
"Shared with others" : "Jaettu muille",
"Shared with you" : "Jaettu kanssasi",
"Shared by link" : "Jaettu linkillä",
+ "Deleted shares" : "Poistetut jaot",
"Text file" : "Tekstitiedosto",
"New text file.txt" : "Uusi tekstitiedosto.txt",
"Move" : "Siirrä",
diff --git a/apps/files/l10n/fi.json b/apps/files/l10n/fi.json
index 3757ac04e6f..61452af6927 100644
--- a/apps/files/l10n/fi.json
+++ b/apps/files/l10n/fi.json
@@ -22,6 +22,7 @@
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize}/{totalSize} ({bitrate})",
"Uploading that item is not supported" : "Kyseisen kohteen lähettäminen ei ole tuettu",
"Target folder does not exist any more" : "Kohdekansiota ei ole enää olemassa",
+ "Error when assembling chunks, status code {status}" : "Virhe koottaessa lohkoja, tilakoodi {status}",
"Actions" : "Toiminnot",
"Rename" : "Nimeä uudelleen",
"Copy" : "Kopioi",
@@ -116,6 +117,7 @@
"A file or folder has been <strong>restored</strong>" : "Tiedosto tai kansio on <strong>palautettu</strong>",
"Unlimited" : "Rajoittamaton",
"Upload (max. %s)" : "Lähetys (enintään %s)",
+ "File Management" : "Tiedostohallinta",
"File handling" : "Tiedostonhallinta",
"Maximum upload size" : "Lähetettävän tiedoston suurin sallittu koko",
"max. possible: " : "suurin mahdollinen:",
@@ -139,9 +141,11 @@
"Files and folders you mark as favorite will show up here" : "Suosikeiksi merkitsemäsi tiedostot ja kansiot näkyvät täällä",
"Tags" : "Tunnisteet",
"Deleted files" : "Poistetut tiedostot",
+ "Shares" : "Jaot",
"Shared with others" : "Jaettu muille",
"Shared with you" : "Jaettu kanssasi",
"Shared by link" : "Jaettu linkillä",
+ "Deleted shares" : "Poistetut jaot",
"Text file" : "Tekstitiedosto",
"New text file.txt" : "Uusi tekstitiedosto.txt",
"Move" : "Siirrä",
diff --git a/apps/files/l10n/nl.js b/apps/files/l10n/nl.js
index 0bc902fb11e..594be556775 100644
--- a/apps/files/l10n/nl.js
+++ b/apps/files/l10n/nl.js
@@ -85,7 +85,7 @@ OC.L10N.register(
"New folder" : "Nieuwe map",
"Upload file" : "Bestand uploaden",
"Not favorited" : "Niet in favorieten",
- "Remove from favorites" : "Verwijder van favorieten",
+ "Remove from favorites" : "Verwijderen uit favorieten",
"Add to favorites" : "Aan favorieten toevoegen",
"An error occurred while trying to update the tags" : "Er trad een fout op bij je poging om de tags bij te werken",
"Added to favorites" : "Toevoegen aan favorieten",
@@ -127,6 +127,7 @@ OC.L10N.register(
"A file or folder has been <strong>restored</strong>" : "Een bestand of een map is <strong>hersteld</strong>",
"Unlimited" : "Ongelimiteerd",
"Upload (max. %s)" : "Upload (max. %s)",
+ "File Management" : "Bestandsbeheer",
"File handling" : "Bestand afhandeling",
"Maximum upload size" : "Maximale bestandsgrootte voor uploads",
"max. possible: " : "max. mogelijk: ",
@@ -150,9 +151,11 @@ OC.L10N.register(
"Files and folders you mark as favorite will show up here" : "Bestanden en mappen die je als favoriet aanmerkt, worden hier getoond",
"Tags" : "Tags",
"Deleted files" : "Verwijderde bestanden",
+ "Shares" : "Shares",
"Shared with others" : "Gedeeld met anderen",
"Shared with you" : "Gedeeld met jou",
"Shared by link" : "Gedeeld via link",
+ "Deleted shares" : "Verwijderde shares",
"Text file" : "Tekstbestand",
"New text file.txt" : "Nieuw tekstbestand.txt",
"Move" : "Verplaatsen",
diff --git a/apps/files/l10n/nl.json b/apps/files/l10n/nl.json
index 54270cfdcec..bae0af42983 100644
--- a/apps/files/l10n/nl.json
+++ b/apps/files/l10n/nl.json
@@ -83,7 +83,7 @@
"New folder" : "Nieuwe map",
"Upload file" : "Bestand uploaden",
"Not favorited" : "Niet in favorieten",
- "Remove from favorites" : "Verwijder van favorieten",
+ "Remove from favorites" : "Verwijderen uit favorieten",
"Add to favorites" : "Aan favorieten toevoegen",
"An error occurred while trying to update the tags" : "Er trad een fout op bij je poging om de tags bij te werken",
"Added to favorites" : "Toevoegen aan favorieten",
@@ -125,6 +125,7 @@
"A file or folder has been <strong>restored</strong>" : "Een bestand of een map is <strong>hersteld</strong>",
"Unlimited" : "Ongelimiteerd",
"Upload (max. %s)" : "Upload (max. %s)",
+ "File Management" : "Bestandsbeheer",
"File handling" : "Bestand afhandeling",
"Maximum upload size" : "Maximale bestandsgrootte voor uploads",
"max. possible: " : "max. mogelijk: ",
@@ -148,9 +149,11 @@
"Files and folders you mark as favorite will show up here" : "Bestanden en mappen die je als favoriet aanmerkt, worden hier getoond",
"Tags" : "Tags",
"Deleted files" : "Verwijderde bestanden",
+ "Shares" : "Shares",
"Shared with others" : "Gedeeld met anderen",
"Shared with you" : "Gedeeld met jou",
"Shared by link" : "Gedeeld via link",
+ "Deleted shares" : "Verwijderde shares",
"Text file" : "Tekstbestand",
"New text file.txt" : "Nieuw tekstbestand.txt",
"Move" : "Verplaatsen",
diff --git a/apps/files/l10n/sk.js b/apps/files/l10n/sk.js
index 1861a347bb1..15c67a5ca32 100644
--- a/apps/files/l10n/sk.js
+++ b/apps/files/l10n/sk.js
@@ -126,6 +126,7 @@ OC.L10N.register(
"A file or folder has been <strong>restored</strong>" : "Súbor alebo priečinok bol <strong>obnovený</strong>",
"Unlimited" : "Neobmedzené",
"Upload (max. %s)" : "Nahrať (max. %s)",
+ "File Management" : "Správa súborov",
"File handling" : "Nastavenie správania sa k súborom",
"Maximum upload size" : "Maximálna veľkosť odosielaného súboru",
"max. possible: " : "najväčšie možné:",
@@ -149,9 +150,11 @@ OC.L10N.register(
"Files and folders you mark as favorite will show up here" : "Súbory a priečinky označené ako obľúbené budú zobrazené tu",
"Tags" : "Štítky",
"Deleted files" : "Zmazané súbory",
+ "Shares" : "Zdieľania",
"Shared with others" : "Sprístupnené ostatným",
"Shared with you" : "Vám sprístupnené",
"Shared by link" : "Sprístupnené prostredníctvom odkazu",
+ "Deleted shares" : "Vymazané zdieľania",
"Text file" : "Textový súbor",
"New text file.txt" : "Nový text file.txt",
"Move" : "Presunúť",
diff --git a/apps/files/l10n/sk.json b/apps/files/l10n/sk.json
index 129c1606d7c..bdcf2a6e207 100644
--- a/apps/files/l10n/sk.json
+++ b/apps/files/l10n/sk.json
@@ -124,6 +124,7 @@
"A file or folder has been <strong>restored</strong>" : "Súbor alebo priečinok bol <strong>obnovený</strong>",
"Unlimited" : "Neobmedzené",
"Upload (max. %s)" : "Nahrať (max. %s)",
+ "File Management" : "Správa súborov",
"File handling" : "Nastavenie správania sa k súborom",
"Maximum upload size" : "Maximálna veľkosť odosielaného súboru",
"max. possible: " : "najväčšie možné:",
@@ -147,9 +148,11 @@
"Files and folders you mark as favorite will show up here" : "Súbory a priečinky označené ako obľúbené budú zobrazené tu",
"Tags" : "Štítky",
"Deleted files" : "Zmazané súbory",
+ "Shares" : "Zdieľania",
"Shared with others" : "Sprístupnené ostatným",
"Shared with you" : "Vám sprístupnené",
"Shared by link" : "Sprístupnené prostredníctvom odkazu",
+ "Deleted shares" : "Vymazané zdieľania",
"Text file" : "Textový súbor",
"New text file.txt" : "Nový text file.txt",
"Move" : "Presunúť",
diff --git a/apps/files/l10n/sl.js b/apps/files/l10n/sl.js
index 40ad52ebe19..5f8390f17bc 100644
--- a/apps/files/l10n/sl.js
+++ b/apps/files/l10n/sl.js
@@ -19,7 +19,7 @@ OC.L10N.register(
"Not enough free space, you are uploading {size1} but only {size2} is left" : "Na voljo ni dovolj prostora. Velikost poslane datoteke je {size1}, na voljo pa je je {size2}.",
"Target folder \"{dir}\" does not exist any more" : "Ciljna mapa \"{dir}\" ne obstaja več",
"Not enough free space" : "Ni dovolj prostora",
- "Uploading …" : "Nalaganje ...",
+ "Uploading …" : "Poteka pošiljanje ...",
"…" : "...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} od {totalSize} ({bitrate})",
"Target folder does not exist any more" : "Ciljna mapa ne obstaja več",
@@ -40,8 +40,8 @@ OC.L10N.register(
"This directory is unavailable, please check the logs or contact the administrator" : "Mapa ni na voljo. Preverite dnevnik in stopite v stik s skrbnikom sistema.",
"Could not move \"{file}\", target exists" : "Datoteke \"{file}\" ni mogoče premakniti, ker cilj že obstaja",
"Could not move \"{file}\"" : "Ni mogoče premakniti \"{file}\"",
- "Could not copy \"{file}\", target exists" : "Datoteke \"{file}\" ni mogoče kopirati, ker cilj že obstaja",
- "Could not copy \"{file}\"" : "Ni mogoče kopirati \"{file}\"",
+ "Could not copy \"{file}\", target exists" : "Datoteke »{file}« ni mogoče kopirati, ker ta že obstaja",
+ "Could not copy \"{file}\"" : "Datoteke »{file}« ni mogoče kopirati.",
"Copied {origin} inside {destination}" : "Kopirano {origin} v {destination}",
"Copied {origin} and {nbfiles} other files inside {destination}" : "Kopirano {origin} in {nbfiles} ostale datoteke v {destination}",
"{newName} already exists" : "{newName} že obstaja",
@@ -83,12 +83,12 @@ OC.L10N.register(
"New folder" : "Nova mapa",
"Upload file" : "Naloži datoteko",
"Not favorited" : "Ni priljubljeno",
- "Remove from favorites" : "Odstrani iz priljubljenega",
- "Add to favorites" : "Dodaj v priljubljeno",
+ "Remove from favorites" : "Odstrani iz priljubljenih",
+ "Add to favorites" : "Dodaj med priljubljene",
"An error occurred while trying to update the tags" : "Prišlo je do napake med posodabljanjem oznak",
"Added to favorites" : "Dodano med priljubljene",
"Removed from favorites" : "Odstranjeno iz priljubljenih",
- "You added {file} to your favorites" : "Dodali ste {file} med priljubljene",
+ "You added {file} to your favorites" : "Med priljubljene je dodana je datoteka {file}",
"You removed {file} from your favorites" : "Odstranili ste {file} od priljubljenih",
"File changes" : "Sprememba datoteke",
"Created by {user}" : "Ustvarjeno od {user}",
@@ -99,7 +99,7 @@ OC.L10N.register(
"Moved by {user}" : "Premaknjeno od {user}",
"\"remote user\"" : "\"oddaljeni uporabnik\"",
"You created {file}" : "Ustvaril(a) si {file}",
- "You created an encrypted file in {file}" : "Ustvaril(a) si kodirano datoteko v {file}",
+ "You created an encrypted file in {file}" : "Ustvarjena je šifrirana datoteka v {file}",
"{user} created {file}" : "{user} ustvaril(a) {file}",
"{user} created an encrypted file in {file}" : "{user} ustvaril(a) kodirano datoteko {file}",
"{file} was created in a public folder" : "{file} ustvarjena je bila v javni mapi",
@@ -114,10 +114,10 @@ OC.L10N.register(
"{user} renamed {oldfile} to {newfile}" : "{user} preimenoval(a) {oldfile} v {newfile}",
"You moved {oldfile} to {newfile}" : "Premaknil(a) si {oldfile} v {newfile}",
"{user} moved {oldfile} to {newfile}" : "{user} premaknil(a) {oldfile} v {newfile}",
- "A file has been added to or removed from your <strong>favorites</strong>" : "Datoteka je bila dodana ali umaknjena iz tvojih <strong>priljubljenih</strong>",
+ "A file has been added to or removed from your <strong>favorites</strong>" : "Datoteka je bila ali dodana ali umaknjena iz <strong>priljubljenih</strong>",
"A file or folder has been <strong>changed</strong> or <strong>renamed</strong>" : "Datoteka ali mapa je bila <strong>spremenjena</strong> ali <strong>preimenovana</strong>",
"A new file or folder has been <strong>created</strong>" : "Nova datoteka ali mapa je <strong>ustvarjena</strong>",
- "A file or folder has been <strong>deleted</strong>" : "Datoteka ali mapa je bila <strong>pobrisana</strong>",
+ "A file or folder has been <strong>deleted</strong>" : "Datoteka ali mapa je bila <strong>izbrisana</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Omeji obvestila o ustvarjanju in spreminjanju <strong>najpogosteje uporabljenih </strong> datotek <em>(omogoči pretok)</em>",
"A file or folder has been <strong>restored</strong>" : "A file or folder has been <strong>restored</strong>",
"Unlimited" : "Neomejeno",
@@ -133,7 +133,8 @@ OC.L10N.register(
"Settings" : "Nastavitve",
"Show hidden files" : "Pokaži skrite datoteke",
"WebDAV" : "WebDAV",
- "Cancel upload" : "Prekini nalaganje",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">access your Files via WebDAV</a>" : "Naslov omogoča dostop do datotek prek <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">WebDAV</a>.",
+ "Cancel upload" : "Prekliči pošiljanje",
"No files in here" : "V mapi ni datotek",
"Upload some content or sync with your devices!" : "Uvozite vsebino ali pa omogočite usklajevanje z napravami!",
"No entries found in this folder" : "V tej mapi ni najdenih predmetov.",
@@ -144,14 +145,16 @@ OC.L10N.register(
"Files and folders you mark as favorite will show up here" : "Datoteke ali mape, ki so označene kot priljubljene, bodo zbrane na tem mestu.",
"Tags" : "Oznake",
"Deleted files" : "Izbrisane datoteke",
+ "Shares" : "Souporaba",
"Shared with others" : "V skupni rabi z ostalimi",
"Shared with you" : "V skupni rabi z vami",
"Shared by link" : "Deljeno s povezavo",
+ "Deleted shares" : "Izbrisane povezave za souporabo",
"Text file" : "Besedilna datoteka",
"New text file.txt" : "Nova datoteka.txt",
"Move" : "Premakni",
"A new file or folder has been <strong>deleted</strong>" : "Nova datoteka ali mapa je bila <strong>izbrisana</strong>",
"A new file or folder has been <strong>restored</strong>" : "Nova datoteka ali mapa je bila <strong>obnovljena</strong>",
- "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Uporabite povezavo za<a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">dostop do datotek preko WebDAV</a>"
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Naslov omogoča dostop do datotek prek<a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">WebDAV</a>."
},
"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);");
diff --git a/apps/files/l10n/sl.json b/apps/files/l10n/sl.json
index 483ae246a87..8c507eb6d2d 100644
--- a/apps/files/l10n/sl.json
+++ b/apps/files/l10n/sl.json
@@ -17,7 +17,7 @@
"Not enough free space, you are uploading {size1} but only {size2} is left" : "Na voljo ni dovolj prostora. Velikost poslane datoteke je {size1}, na voljo pa je je {size2}.",
"Target folder \"{dir}\" does not exist any more" : "Ciljna mapa \"{dir}\" ne obstaja več",
"Not enough free space" : "Ni dovolj prostora",
- "Uploading …" : "Nalaganje ...",
+ "Uploading …" : "Poteka pošiljanje ...",
"…" : "...",
"{loadedSize} of {totalSize} ({bitrate})" : "{loadedSize} od {totalSize} ({bitrate})",
"Target folder does not exist any more" : "Ciljna mapa ne obstaja več",
@@ -38,8 +38,8 @@
"This directory is unavailable, please check the logs or contact the administrator" : "Mapa ni na voljo. Preverite dnevnik in stopite v stik s skrbnikom sistema.",
"Could not move \"{file}\", target exists" : "Datoteke \"{file}\" ni mogoče premakniti, ker cilj že obstaja",
"Could not move \"{file}\"" : "Ni mogoče premakniti \"{file}\"",
- "Could not copy \"{file}\", target exists" : "Datoteke \"{file}\" ni mogoče kopirati, ker cilj že obstaja",
- "Could not copy \"{file}\"" : "Ni mogoče kopirati \"{file}\"",
+ "Could not copy \"{file}\", target exists" : "Datoteke »{file}« ni mogoče kopirati, ker ta že obstaja",
+ "Could not copy \"{file}\"" : "Datoteke »{file}« ni mogoče kopirati.",
"Copied {origin} inside {destination}" : "Kopirano {origin} v {destination}",
"Copied {origin} and {nbfiles} other files inside {destination}" : "Kopirano {origin} in {nbfiles} ostale datoteke v {destination}",
"{newName} already exists" : "{newName} že obstaja",
@@ -81,12 +81,12 @@
"New folder" : "Nova mapa",
"Upload file" : "Naloži datoteko",
"Not favorited" : "Ni priljubljeno",
- "Remove from favorites" : "Odstrani iz priljubljenega",
- "Add to favorites" : "Dodaj v priljubljeno",
+ "Remove from favorites" : "Odstrani iz priljubljenih",
+ "Add to favorites" : "Dodaj med priljubljene",
"An error occurred while trying to update the tags" : "Prišlo je do napake med posodabljanjem oznak",
"Added to favorites" : "Dodano med priljubljene",
"Removed from favorites" : "Odstranjeno iz priljubljenih",
- "You added {file} to your favorites" : "Dodali ste {file} med priljubljene",
+ "You added {file} to your favorites" : "Med priljubljene je dodana je datoteka {file}",
"You removed {file} from your favorites" : "Odstranili ste {file} od priljubljenih",
"File changes" : "Sprememba datoteke",
"Created by {user}" : "Ustvarjeno od {user}",
@@ -97,7 +97,7 @@
"Moved by {user}" : "Premaknjeno od {user}",
"\"remote user\"" : "\"oddaljeni uporabnik\"",
"You created {file}" : "Ustvaril(a) si {file}",
- "You created an encrypted file in {file}" : "Ustvaril(a) si kodirano datoteko v {file}",
+ "You created an encrypted file in {file}" : "Ustvarjena je šifrirana datoteka v {file}",
"{user} created {file}" : "{user} ustvaril(a) {file}",
"{user} created an encrypted file in {file}" : "{user} ustvaril(a) kodirano datoteko {file}",
"{file} was created in a public folder" : "{file} ustvarjena je bila v javni mapi",
@@ -112,10 +112,10 @@
"{user} renamed {oldfile} to {newfile}" : "{user} preimenoval(a) {oldfile} v {newfile}",
"You moved {oldfile} to {newfile}" : "Premaknil(a) si {oldfile} v {newfile}",
"{user} moved {oldfile} to {newfile}" : "{user} premaknil(a) {oldfile} v {newfile}",
- "A file has been added to or removed from your <strong>favorites</strong>" : "Datoteka je bila dodana ali umaknjena iz tvojih <strong>priljubljenih</strong>",
+ "A file has been added to or removed from your <strong>favorites</strong>" : "Datoteka je bila ali dodana ali umaknjena iz <strong>priljubljenih</strong>",
"A file or folder has been <strong>changed</strong> or <strong>renamed</strong>" : "Datoteka ali mapa je bila <strong>spremenjena</strong> ali <strong>preimenovana</strong>",
"A new file or folder has been <strong>created</strong>" : "Nova datoteka ali mapa je <strong>ustvarjena</strong>",
- "A file or folder has been <strong>deleted</strong>" : "Datoteka ali mapa je bila <strong>pobrisana</strong>",
+ "A file or folder has been <strong>deleted</strong>" : "Datoteka ali mapa je bila <strong>izbrisana</strong>",
"Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>" : "Omeji obvestila o ustvarjanju in spreminjanju <strong>najpogosteje uporabljenih </strong> datotek <em>(omogoči pretok)</em>",
"A file or folder has been <strong>restored</strong>" : "A file or folder has been <strong>restored</strong>",
"Unlimited" : "Neomejeno",
@@ -131,7 +131,8 @@
"Settings" : "Nastavitve",
"Show hidden files" : "Pokaži skrite datoteke",
"WebDAV" : "WebDAV",
- "Cancel upload" : "Prekini nalaganje",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">access your Files via WebDAV</a>" : "Naslov omogoča dostop do datotek prek <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">WebDAV</a>.",
+ "Cancel upload" : "Prekliči pošiljanje",
"No files in here" : "V mapi ni datotek",
"Upload some content or sync with your devices!" : "Uvozite vsebino ali pa omogočite usklajevanje z napravami!",
"No entries found in this folder" : "V tej mapi ni najdenih predmetov.",
@@ -142,14 +143,16 @@
"Files and folders you mark as favorite will show up here" : "Datoteke ali mape, ki so označene kot priljubljene, bodo zbrane na tem mestu.",
"Tags" : "Oznake",
"Deleted files" : "Izbrisane datoteke",
+ "Shares" : "Souporaba",
"Shared with others" : "V skupni rabi z ostalimi",
"Shared with you" : "V skupni rabi z vami",
"Shared by link" : "Deljeno s povezavo",
+ "Deleted shares" : "Izbrisane povezave za souporabo",
"Text file" : "Besedilna datoteka",
"New text file.txt" : "Nova datoteka.txt",
"Move" : "Premakni",
"A new file or folder has been <strong>deleted</strong>" : "Nova datoteka ali mapa je bila <strong>izbrisana</strong>",
"A new file or folder has been <strong>restored</strong>" : "Nova datoteka ali mapa je bila <strong>obnovljena</strong>",
- "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Uporabite povezavo za<a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">dostop do datotek preko WebDAV</a>"
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Naslov omogoča dostop do datotek prek<a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">WebDAV</a>."
},"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"
} \ No newline at end of file
diff --git a/apps/files/lib/Controller/ViewController.php b/apps/files/lib/Controller/ViewController.php
index 0655718f8c1..d91d3b9db4c 100644
--- a/apps/files/lib/Controller/ViewController.php
+++ b/apps/files/lib/Controller/ViewController.php
@@ -176,7 +176,6 @@ class ViewController extends Controller {
$currentCount = 0;
foreach ($favElements['folders'] as $dir) {
- $id = substr($dir, strrpos($dir, '/') + 1, strlen($dir));
$link = $this->urlGenerator->linkToRoute('files.view.index', ['dir' => $dir, 'view' => 'files']);
$sortingValue = ++$currentCount;
$element = [
@@ -186,7 +185,7 @@ class ViewController extends Controller {
'dir' => $dir,
'order' => $navBarPositionPosition,
'folderPosition' => $sortingValue,
- 'name' => $id,
+ 'name' => basename($dir),
'icon' => 'files',
'quickaccesselement' => 'true'
];
diff --git a/apps/files/tests/Controller/ViewControllerTest.php b/apps/files/tests/Controller/ViewControllerTest.php
index 7dc99409800..f11a6faf863 100644
--- a/apps/files/tests/Controller/ViewControllerTest.php
+++ b/apps/files/tests/Controller/ViewControllerTest.php
@@ -176,8 +176,53 @@ class ViewControllerTest extends TestCase {
'active' => false,
'icon' => '',
'type' => 'link',
- 'classes' => '',
- 'sublist' => [],
+ 'classes' => 'collapsible',
+ 'sublist' => [
+ [
+ 'id' => '-test1',
+ 'view' => 'files',
+ 'href' => '',
+ 'dir' => '/test1',
+ 'order' => 6,
+ 'folderPosition' => 1,
+ 'name' => 'test1',
+ 'icon' => 'files',
+ 'quickaccesselement' => 'true',
+ ],
+ [
+ 'name' => 'test2',
+ 'id' => '-test2-',
+ 'view' => 'files',
+ 'href' => '',
+ 'dir' => '/test2/',
+ 'order' => 7,
+ 'folderPosition' => 2,
+ 'icon' => 'files',
+ 'quickaccesselement' => 'true',
+ ],
+ [
+ 'name' => 'sub4',
+ 'id' => '-test3-sub4',
+ 'view' => 'files',
+ 'href' => '',
+ 'dir' => '/test3/sub4',
+ 'order' => 8,
+ 'folderPosition' => 3,
+ 'icon' => 'files',
+ 'quickaccesselement' => 'true',
+ ],
+ [
+ 'name' => 'sub6',
+ 'id' => '-test5-sub6-',
+ 'view' => 'files',
+ 'href' => '',
+ 'dir' => '/test5/sub6/',
+ 'order' => 9,
+ 'folderPosition' => 4,
+ 'icon' => 'files',
+ 'quickaccesselement' => 'true',
+ ],
+ ],
'defaultExpandedState' => false,
'expandedState' => 'show_Quick_Access'
],
@@ -303,6 +348,22 @@ class ViewControllerTest extends TestCase {
'id' => 'shareoverview',
'content' => null,
],
+ '-test1' => [
+ 'id' => '-test1',
+ 'content' => '',
+ ],
+ '-test2-' => [
+ 'id' => '-test2-',
+ 'content' => '',
+ ],
+ '-test3-sub4' => [
+ 'id' => '-test3-sub4',
+ 'content' => '',
+ ],
+ '-test5-sub6-' => [
+ 'id' => '-test5-sub6-',
+ 'content' => '',
+ ],
],
'hiddenFields' => [],
]
@@ -315,7 +376,12 @@ class ViewControllerTest extends TestCase {
->with($this->user->getUID())
->willReturn([
'item' => [],
- 'folders' => [],
+ 'folders' => [
+ '/test1',
+ '/test2/',
+ '/test3/sub4',
+ '/test5/sub6/',
+ ],
]);
$this->assertEquals($expected, $this->viewController->index('MyDir', 'MyView'));
diff --git a/apps/files_external/l10n/cs.js b/apps/files_external/l10n/cs.js
index 2f07aca2123..ccb5b92946d 100644
--- a/apps/files_external/l10n/cs.js
+++ b/apps/files_external/l10n/cs.js
@@ -1,12 +1,12 @@
OC.L10N.register(
"files_external",
{
- "External storages" : "Vnější úložiště",
+ "External storages" : "Externí úložiště",
"Personal" : "Osobní",
"System" : "Systém",
"Grant access" : "Povolit přístup",
"Error configuring OAuth1" : "Chyba nastavení OAuth1",
- "Please provide a valid app key and secret." : "Zadejte platný klíč a tajné heslo aplikace.",
+ "Please provide a valid app key and secret." : "Zadejte platný klíč aplikace a tajné heslo.",
"Error configuring OAuth2" : "Chyba nastavení OAuth2",
"Generate keys" : "Vytvořit klíče",
"Error generating key pair" : "Chyba při vytváření páru klíčů",
@@ -20,32 +20,32 @@ OC.L10N.register(
"Saving..." : "Ukládá se…",
"Save" : "Uložit",
"Empty response from the server" : "Prázdná odpověď serveru",
- "Couldn't access. Please log out and in again to activate this mount point" : "Nelze připojit. Pro aktivaci tohoto přípojného bodu se prosím odhlašte a znovu přihlašte",
- "Couldn't get the information from the remote server: {code} {type}" : "Nelze obdržet informaci ze vzdáleného serveru: {code} {type}",
+ "Couldn't access. Please log out and in again to activate this mount point" : "Nelze připojit. Pro aktivaci tohoto přípojného bodu se odhlaste a znovu přihlaste",
+ "Couldn't get the information from the remote server: {code} {type}" : "Nedaří se obdržet informaci ze vzdáleného serveru: {code} {type}",
"Couldn't get the list of external mount points: {type}" : "Nelze obdržet seznam vzdálených přípojných bodů: {type}",
"There was an error with message: " : "Došlo k chybě s tímto hlášením:",
"External mount error" : "Chyba vzdáleného úložiště",
"external-storage" : "external-storage",
- "Couldn't fetch list of Windows network drive mount points: Empty response from server" : "Nelze obdržet seznam síťových úložišť systému Windows: prázdná odpověď serveru",
+ "Couldn't fetch list of Windows network drive mount points: Empty response from server" : "Nepodařilo se obdržet seznam síťových úložišť systému Windows: prázdná odpověď serveru",
"Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Některá z nastavených vzdálených úložišť nejsou připojena. Pro více informací prosím klikněte na červenou šipku(y)",
- "Please enter the credentials for the {mount} mount" : "Zadejte prosím přihlašovací údaje k přípojnému bodu {mount}",
+ "Please enter the credentials for the {mount} mount" : "Zadejte přihlašovací údaje k přípojnému bodu {mount}",
"Username" : "Uživatelské jméno",
"Password" : "Heslo",
"Credentials saved" : "Přihlašovací údaje uloženy",
"Credentials saving failed" : "Uložení přihlašovacích údajů selhalo",
"Credentials required" : "Vyžadovány přihlašovací údaje",
"Storage with ID \"%d\" not found" : "Úložiště s identifikátorem „%d“ nebylo nalezeno",
- "Invalid backend or authentication mechanism class" : "Neplatný backend nebo třída ověřovacího mechanismu",
+ "Invalid backend or authentication mechanism class" : "Neplatná podpůrná vrstva nebo třída ověřovacího mechanismu",
"Invalid mount point" : "Neplatný přípojný bod",
"Objectstore forbidden" : "Úložiště objektů zakázáno",
- "Invalid storage backend \"%s\"" : "Neplatná služba úložiště \"%s\"",
- "Not permitted to use backend \"%s\"" : "Nebylo povoleno použítí služby \"%s\"",
- "Not permitted to use authentication mechanism \"%s\"" : "Nebylo povoleno použití ověřovacího mechanismu \"%s\"",
+ "Invalid storage backend \"%s\"" : "Neplatná služba úložiště „%s“",
+ "Not permitted to use backend \"%s\"" : "Nebylo povoleno použití služby „%s“",
+ "Not permitted to use authentication mechanism \"%s\"" : "Nebylo povoleno použití ověřovacího mechanismu „%s“",
"Unsatisfied backend parameters" : "Neuspokojivé parametry služby",
"Unsatisfied authentication mechanism parameters" : "Neuspokojivé parametry ověřovacího mechanismu",
"Insufficient data: %s" : "Nedostatečná data: %s",
"%s" : "%s",
- "Storage with ID \"%d\" is not user editable" : "Úložiště s ID \"%d\" není uživatelksky upravitelné",
+ "Storage with ID \"%d\" is not user editable" : "Úložiště s identifikátorem „%d“ není uživatelky upravitelné",
"Access key" : "Přístupový klíč",
"Secret key" : "Tajný klíč",
"Builtin" : "Zabudované",
@@ -80,10 +80,10 @@ OC.L10N.register(
"Region" : "Kraj",
"Enable SSL" : "Šifrovat (SSL)",
"Enable Path Style" : "Povolit Path Style",
- "Legacy (v2) authentication" : "Starší (v2) autentizace",
+ "Legacy (v2) authentication" : "Starší (v2) ověřování",
"WebDAV" : "WebDAV",
"URL" : "URL",
- "Remote subfolder" : "Složka na protějšku",
+ "Remote subfolder" : "Podsložka na protějšku",
"Secure https://" : "Zabezpečené https://",
"FTP" : "FTP",
"Host" : "Počítač",
@@ -97,15 +97,16 @@ OC.L10N.register(
"SMB / CIFS" : "SMB / CIFS",
"Share" : "Sdílet",
"SMB / CIFS using OC login" : "SMB / CIFS za použití přihlašovacího jména OC",
- "Username as share" : "Uživatelské jméno jako sdílený adresář",
+ "Username as share" : "Uživatelské jméno jako sdílená složka",
"OpenStack Object Storage" : "OpenStack objektové úložiště",
"Service name" : "Název služby",
- "Request timeout (seconds)" : "Čas vypršení požadavku (sekundy)",
- "The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "cURL podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Prosím požádejte svého správce systému ať ji nainstaluje.",
- "The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Prosím požádejte svého správce systému ať ji nainstaluje.",
+ "Request timeout (seconds)" : "Časový limit požadavku (sekundy)",
+ "The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "cURL podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Požádejte svého správce systému ať ji nainstaluje.",
+ "The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Požádejte svého správce systému ať ji nainstaluje.",
"\"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "„%s“ není nainstalováno. Není možné připojit %s. Požádejte správce systému o instalaci.",
"External storage support" : "Podpora Externího úložiště",
"Adds basic external storage support" : "Přidá základní podporu vnějšího úložiště",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Tato aplikace umožňuje správcům nastavit propojení na poskytovatele vnějších úložišť, jako například FTP servery, S3 nebo SWIFT objektová úložiště, Google Drive, Dropbox, ostatní Nextcloud servery, WebDAV servery a další. Správci mohou zvolit které typy úložiště zapnout a mohou je připojit pro uživatele, skupinu nebo celý systém. Uživatelé uvidí novou složku v jejich kořenové Nextcloud složce, do které mohou přistupovat a používat jako kteroukoli jinou Nextcloud složku. Vnější úložiště také umožňuje uživatelům sdílet na něm uložené soubory. V takových případech jsou použity přihlašovací údaje vlastníka souboru když si příjemce vyžádá soubor z vnějšího úložiště, čímž je zajištěno že příjemce může přistupovat ke sdílenému souboru.\n\nVnější úložiště je možné nastavit pomocí webového rozhraní nebo z příkazového řádku. Tato druhá možnost poskytuje pokročilému uživateli více přizpůsobivosti pro nastavování vícero připojení vnějších úložišť a nastavení priorit připojování. Další informace jsou k dispozici v dokumentaci k vnějším úložištím ve webovém rozhraní a dokumentaci k souboru s nastaveními pro vnější úložiště.",
"No external storage configured or you don't have the permission to configure them" : "Nemáte oprávněni pro nastavení externího úložiště",
"Name" : "Název",
"Storage type" : "Typ úložiště",
@@ -117,15 +118,19 @@ OC.L10N.register(
"Never" : "Nikdy",
"Once every direct access" : "Jednou pro každý přímý přístup",
"Read only" : "Pouze pro čtení",
+ "External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices. You may also allow users to mount their own external storage services." : "Externí úložiště umožňuje připojit úložiště externích služeb a zařízení jako vedlejší úložná zařízení pro Nextcloud. Je také možné umožnit uživatelům připojovat jejich vlastní externí úložiště.",
"Folder name" : "Název adresáře",
"External storage" : "Externí úložiště",
"Authentication" : "Ověření",
"Configuration" : "Nastavení",
"Available for" : "Dostupné pro",
- "Click to recheck the configuration" : "Klikněte pro opětovnou kontrolu konfigurace",
+ "Click to recheck the configuration" : "Klikněte pro opětovnou kontrolu nastavení",
"Add storage" : "Přidat úložiště",
"Advanced settings" : "Pokročilá nastavení",
"Allow users to mount external storage" : "Povolit uživatelům připojení externího úložiště",
+ "Global credentials can be used to authenticate with multiple external storages that have the same credentials." : "Globální přihlašovací údaje je možné použít pro ověření s vícero vnějšími úložišti které mají stejné přihlašovací údaje.",
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Získání přístupových tokenů se nezdařio. Ověřte, že váš aplikační klíč a tajné heslo jsou správné.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Nepodařilo se získat přístupové tokeny. Zkontrolujte správnost aplikačního klíče a tajemství",
"Step 1 failed. Exception: %s" : "První krok se nezdařil. Výjimka: %s",
"Step 2 failed. Exception: %s" : "Druhý krok se nezdařil. Výjimka: %s",
"Dropbox App Configuration" : "Nastavení APP pro Dropbox",
@@ -133,6 +138,7 @@ OC.L10N.register(
"OpenStack" : "OpenStack",
"Dropbox" : "Dropbox",
"Google Drive" : "Disk Google",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, Google Drive, Dropbox, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Tato aplikace umožňuje správcům nastavit propojení na poskytovatele vnějších úložišť, jako například FTP servery, S3 nebo SWIFT objektová úložiště, Google Drive, Dropbox, ostatní Nextcloud servery, WebDAV servery a další. Správci mohou zvolit které typy úložiště zapnout a mohou je připojit pro uživatele, skupinu nebo celý systém. Uživatelé uvidí novou složku v jejich kořenové Nextcloud složce, do které mohou přistupovat a používat jako kteroukoli jinou Nextcloud složku. Vnější úložiště také umožňuje uživatelům sdílet na něm uložené soubory. V takových případech jsou použity přihlašovací údaje vlastníka souboru když si příjemce vyžádá soubor z vnějšího úložiště, čímž je zajištěno že příjemce může přistupovat ke sdílenému souboru.\n\nVnější úložiště je možné nastavit pomocí webového rozhraní nebo z příkazového řádku. Tato druhá možnost poskytuje pokročilému uživateli více přizpůsobivosti pro nastavování vícero připojení vnějších úložišť a nastavení priorit připojování. Další informace jsou k dispozici v dokumentaci k vnějším úložištím ve webovém rozhraní a dokumentaci k souboru s nastaveními pro vnější úložiště.",
"No external storage configured" : "Není nastavené žádné externí úložiště",
"You can add external storages in the personal settings" : "Externí úložiště můžete přidat v osobních nastaveních",
"Delete" : "Smazat",
diff --git a/apps/files_external/l10n/cs.json b/apps/files_external/l10n/cs.json
index b9c6136a49f..aaaf5ade161 100644
--- a/apps/files_external/l10n/cs.json
+++ b/apps/files_external/l10n/cs.json
@@ -1,10 +1,10 @@
{ "translations": {
- "External storages" : "Vnější úložiště",
+ "External storages" : "Externí úložiště",
"Personal" : "Osobní",
"System" : "Systém",
"Grant access" : "Povolit přístup",
"Error configuring OAuth1" : "Chyba nastavení OAuth1",
- "Please provide a valid app key and secret." : "Zadejte platný klíč a tajné heslo aplikace.",
+ "Please provide a valid app key and secret." : "Zadejte platný klíč aplikace a tajné heslo.",
"Error configuring OAuth2" : "Chyba nastavení OAuth2",
"Generate keys" : "Vytvořit klíče",
"Error generating key pair" : "Chyba při vytváření páru klíčů",
@@ -18,32 +18,32 @@
"Saving..." : "Ukládá se…",
"Save" : "Uložit",
"Empty response from the server" : "Prázdná odpověď serveru",
- "Couldn't access. Please log out and in again to activate this mount point" : "Nelze připojit. Pro aktivaci tohoto přípojného bodu se prosím odhlašte a znovu přihlašte",
- "Couldn't get the information from the remote server: {code} {type}" : "Nelze obdržet informaci ze vzdáleného serveru: {code} {type}",
+ "Couldn't access. Please log out and in again to activate this mount point" : "Nelze připojit. Pro aktivaci tohoto přípojného bodu se odhlaste a znovu přihlaste",
+ "Couldn't get the information from the remote server: {code} {type}" : "Nedaří se obdržet informaci ze vzdáleného serveru: {code} {type}",
"Couldn't get the list of external mount points: {type}" : "Nelze obdržet seznam vzdálených přípojných bodů: {type}",
"There was an error with message: " : "Došlo k chybě s tímto hlášením:",
"External mount error" : "Chyba vzdáleného úložiště",
"external-storage" : "external-storage",
- "Couldn't fetch list of Windows network drive mount points: Empty response from server" : "Nelze obdržet seznam síťových úložišť systému Windows: prázdná odpověď serveru",
+ "Couldn't fetch list of Windows network drive mount points: Empty response from server" : "Nepodařilo se obdržet seznam síťových úložišť systému Windows: prázdná odpověď serveru",
"Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Některá z nastavených vzdálených úložišť nejsou připojena. Pro více informací prosím klikněte na červenou šipku(y)",
- "Please enter the credentials for the {mount} mount" : "Zadejte prosím přihlašovací údaje k přípojnému bodu {mount}",
+ "Please enter the credentials for the {mount} mount" : "Zadejte přihlašovací údaje k přípojnému bodu {mount}",
"Username" : "Uživatelské jméno",
"Password" : "Heslo",
"Credentials saved" : "Přihlašovací údaje uloženy",
"Credentials saving failed" : "Uložení přihlašovacích údajů selhalo",
"Credentials required" : "Vyžadovány přihlašovací údaje",
"Storage with ID \"%d\" not found" : "Úložiště s identifikátorem „%d“ nebylo nalezeno",
- "Invalid backend or authentication mechanism class" : "Neplatný backend nebo třída ověřovacího mechanismu",
+ "Invalid backend or authentication mechanism class" : "Neplatná podpůrná vrstva nebo třída ověřovacího mechanismu",
"Invalid mount point" : "Neplatný přípojný bod",
"Objectstore forbidden" : "Úložiště objektů zakázáno",
- "Invalid storage backend \"%s\"" : "Neplatná služba úložiště \"%s\"",
- "Not permitted to use backend \"%s\"" : "Nebylo povoleno použítí služby \"%s\"",
- "Not permitted to use authentication mechanism \"%s\"" : "Nebylo povoleno použití ověřovacího mechanismu \"%s\"",
+ "Invalid storage backend \"%s\"" : "Neplatná služba úložiště „%s“",
+ "Not permitted to use backend \"%s\"" : "Nebylo povoleno použití služby „%s“",
+ "Not permitted to use authentication mechanism \"%s\"" : "Nebylo povoleno použití ověřovacího mechanismu „%s“",
"Unsatisfied backend parameters" : "Neuspokojivé parametry služby",
"Unsatisfied authentication mechanism parameters" : "Neuspokojivé parametry ověřovacího mechanismu",
"Insufficient data: %s" : "Nedostatečná data: %s",
"%s" : "%s",
- "Storage with ID \"%d\" is not user editable" : "Úložiště s ID \"%d\" není uživatelksky upravitelné",
+ "Storage with ID \"%d\" is not user editable" : "Úložiště s identifikátorem „%d“ není uživatelky upravitelné",
"Access key" : "Přístupový klíč",
"Secret key" : "Tajný klíč",
"Builtin" : "Zabudované",
@@ -78,10 +78,10 @@
"Region" : "Kraj",
"Enable SSL" : "Šifrovat (SSL)",
"Enable Path Style" : "Povolit Path Style",
- "Legacy (v2) authentication" : "Starší (v2) autentizace",
+ "Legacy (v2) authentication" : "Starší (v2) ověřování",
"WebDAV" : "WebDAV",
"URL" : "URL",
- "Remote subfolder" : "Složka na protějšku",
+ "Remote subfolder" : "Podsložka na protějšku",
"Secure https://" : "Zabezpečené https://",
"FTP" : "FTP",
"Host" : "Počítač",
@@ -95,15 +95,16 @@
"SMB / CIFS" : "SMB / CIFS",
"Share" : "Sdílet",
"SMB / CIFS using OC login" : "SMB / CIFS za použití přihlašovacího jména OC",
- "Username as share" : "Uživatelské jméno jako sdílený adresář",
+ "Username as share" : "Uživatelské jméno jako sdílená složka",
"OpenStack Object Storage" : "OpenStack objektové úložiště",
"Service name" : "Název služby",
- "Request timeout (seconds)" : "Čas vypršení požadavku (sekundy)",
- "The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "cURL podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Prosím požádejte svého správce systému ať ji nainstaluje.",
- "The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Prosím požádejte svého správce systému ať ji nainstaluje.",
+ "Request timeout (seconds)" : "Časový limit požadavku (sekundy)",
+ "The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "cURL podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Požádejte svého správce systému ať ji nainstaluje.",
+ "The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP podpora v PHP není povolena nebo nainstalována. Není možné připojit %s. Požádejte svého správce systému ať ji nainstaluje.",
"\"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "„%s“ není nainstalováno. Není možné připojit %s. Požádejte správce systému o instalaci.",
"External storage support" : "Podpora Externího úložiště",
"Adds basic external storage support" : "Přidá základní podporu vnějšího úložiště",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Tato aplikace umožňuje správcům nastavit propojení na poskytovatele vnějších úložišť, jako například FTP servery, S3 nebo SWIFT objektová úložiště, Google Drive, Dropbox, ostatní Nextcloud servery, WebDAV servery a další. Správci mohou zvolit které typy úložiště zapnout a mohou je připojit pro uživatele, skupinu nebo celý systém. Uživatelé uvidí novou složku v jejich kořenové Nextcloud složce, do které mohou přistupovat a používat jako kteroukoli jinou Nextcloud složku. Vnější úložiště také umožňuje uživatelům sdílet na něm uložené soubory. V takových případech jsou použity přihlašovací údaje vlastníka souboru když si příjemce vyžádá soubor z vnějšího úložiště, čímž je zajištěno že příjemce může přistupovat ke sdílenému souboru.\n\nVnější úložiště je možné nastavit pomocí webového rozhraní nebo z příkazového řádku. Tato druhá možnost poskytuje pokročilému uživateli více přizpůsobivosti pro nastavování vícero připojení vnějších úložišť a nastavení priorit připojování. Další informace jsou k dispozici v dokumentaci k vnějším úložištím ve webovém rozhraní a dokumentaci k souboru s nastaveními pro vnější úložiště.",
"No external storage configured or you don't have the permission to configure them" : "Nemáte oprávněni pro nastavení externího úložiště",
"Name" : "Název",
"Storage type" : "Typ úložiště",
@@ -115,15 +116,19 @@
"Never" : "Nikdy",
"Once every direct access" : "Jednou pro každý přímý přístup",
"Read only" : "Pouze pro čtení",
+ "External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices. You may also allow users to mount their own external storage services." : "Externí úložiště umožňuje připojit úložiště externích služeb a zařízení jako vedlejší úložná zařízení pro Nextcloud. Je také možné umožnit uživatelům připojovat jejich vlastní externí úložiště.",
"Folder name" : "Název adresáře",
"External storage" : "Externí úložiště",
"Authentication" : "Ověření",
"Configuration" : "Nastavení",
"Available for" : "Dostupné pro",
- "Click to recheck the configuration" : "Klikněte pro opětovnou kontrolu konfigurace",
+ "Click to recheck the configuration" : "Klikněte pro opětovnou kontrolu nastavení",
"Add storage" : "Přidat úložiště",
"Advanced settings" : "Pokročilá nastavení",
"Allow users to mount external storage" : "Povolit uživatelům připojení externího úložiště",
+ "Global credentials can be used to authenticate with multiple external storages that have the same credentials." : "Globální přihlašovací údaje je možné použít pro ověření s vícero vnějšími úložišti které mají stejné přihlašovací údaje.",
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Získání přístupových tokenů se nezdařio. Ověřte, že váš aplikační klíč a tajné heslo jsou správné.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Nepodařilo se získat přístupové tokeny. Zkontrolujte správnost aplikačního klíče a tajemství",
"Step 1 failed. Exception: %s" : "První krok se nezdařil. Výjimka: %s",
"Step 2 failed. Exception: %s" : "Druhý krok se nezdařil. Výjimka: %s",
"Dropbox App Configuration" : "Nastavení APP pro Dropbox",
@@ -131,6 +136,7 @@
"OpenStack" : "OpenStack",
"Dropbox" : "Dropbox",
"Google Drive" : "Disk Google",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, Google Drive, Dropbox, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Tato aplikace umožňuje správcům nastavit propojení na poskytovatele vnějších úložišť, jako například FTP servery, S3 nebo SWIFT objektová úložiště, Google Drive, Dropbox, ostatní Nextcloud servery, WebDAV servery a další. Správci mohou zvolit které typy úložiště zapnout a mohou je připojit pro uživatele, skupinu nebo celý systém. Uživatelé uvidí novou složku v jejich kořenové Nextcloud složce, do které mohou přistupovat a používat jako kteroukoli jinou Nextcloud složku. Vnější úložiště také umožňuje uživatelům sdílet na něm uložené soubory. V takových případech jsou použity přihlašovací údaje vlastníka souboru když si příjemce vyžádá soubor z vnějšího úložiště, čímž je zajištěno že příjemce může přistupovat ke sdílenému souboru.\n\nVnější úložiště je možné nastavit pomocí webového rozhraní nebo z příkazového řádku. Tato druhá možnost poskytuje pokročilému uživateli více přizpůsobivosti pro nastavování vícero připojení vnějších úložišť a nastavení priorit připojování. Další informace jsou k dispozici v dokumentaci k vnějším úložištím ve webovém rozhraní a dokumentaci k souboru s nastaveními pro vnější úložiště.",
"No external storage configured" : "Není nastavené žádné externí úložiště",
"You can add external storages in the personal settings" : "Externí úložiště můžete přidat v osobních nastaveních",
"Delete" : "Smazat",
diff --git a/apps/files_external/l10n/el.js b/apps/files_external/l10n/el.js
index fb5c99ff922..0d99032eddd 100644
--- a/apps/files_external/l10n/el.js
+++ b/apps/files_external/l10n/el.js
@@ -14,6 +14,7 @@ OC.L10N.register(
"(group)" : "(ομάδα)",
"Compatibility with Mac NFD encoding (slow)" : "Συμβατότητα με Mac NFD κωδικόποιηση (αργό) ",
"Admin defined" : "Ορίσθηκε διαχειριστής ",
+ "Delete storage?" : "Διαγραφή αποθηκευτικού χώρου;",
"Saved" : "Αποθηκεύτηκαν",
"Saving..." : "Γίνεται αποθήκευση...",
"Save" : "Αποθήκευση",
diff --git a/apps/files_external/l10n/el.json b/apps/files_external/l10n/el.json
index 9abcf91d40b..d35c430ce6a 100644
--- a/apps/files_external/l10n/el.json
+++ b/apps/files_external/l10n/el.json
@@ -12,6 +12,7 @@
"(group)" : "(ομάδα)",
"Compatibility with Mac NFD encoding (slow)" : "Συμβατότητα με Mac NFD κωδικόποιηση (αργό) ",
"Admin defined" : "Ορίσθηκε διαχειριστής ",
+ "Delete storage?" : "Διαγραφή αποθηκευτικού χώρου;",
"Saved" : "Αποθηκεύτηκαν",
"Saving..." : "Γίνεται αποθήκευση...",
"Save" : "Αποθήκευση",
diff --git a/apps/files_external/l10n/fi.js b/apps/files_external/l10n/fi.js
index fbe5e25efab..da3299d2023 100644
--- a/apps/files_external/l10n/fi.js
+++ b/apps/files_external/l10n/fi.js
@@ -105,6 +105,7 @@ OC.L10N.register(
"The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP tuki PHPsta ei ole aktivoitu tai asennettu. Kohteen %s liittäminen ei ole mahdollista. Ota yhteyttä järjestelmänvalvojaan asentaaksesi puuttuvan osan.",
"\"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "\"%s\" ei ole asennettu. Kohteen %s liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää asentamaan puuttuva kohde.",
"External storage support" : "Erillisen tallennustilan tuki",
+ "Adds basic external storage support" : "Lisää perusmuotoisen tuen erillisille tallennustiloille",
"No external storage configured or you don't have the permission to configure them" : "Erillistä tallennustilaa ei ole määritelty tai sinulla ei ole oikeuksia määrittää erillisiä tallennustiloja",
"Name" : "Nimi",
"Storage type" : "Tallennustilan tyyppi",
diff --git a/apps/files_external/l10n/fi.json b/apps/files_external/l10n/fi.json
index dfb57c7ae0c..a1215071df6 100644
--- a/apps/files_external/l10n/fi.json
+++ b/apps/files_external/l10n/fi.json
@@ -103,6 +103,7 @@
"The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP tuki PHPsta ei ole aktivoitu tai asennettu. Kohteen %s liittäminen ei ole mahdollista. Ota yhteyttä järjestelmänvalvojaan asentaaksesi puuttuvan osan.",
"\"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "\"%s\" ei ole asennettu. Kohteen %s liittäminen ei ole mahdollista. Pyydä järjestelmän ylläpitäjää asentamaan puuttuva kohde.",
"External storage support" : "Erillisen tallennustilan tuki",
+ "Adds basic external storage support" : "Lisää perusmuotoisen tuen erillisille tallennustiloille",
"No external storage configured or you don't have the permission to configure them" : "Erillistä tallennustilaa ei ole määritelty tai sinulla ei ole oikeuksia määrittää erillisiä tallennustiloja",
"Name" : "Nimi",
"Storage type" : "Tallennustilan tyyppi",
diff --git a/apps/files_external/l10n/ja.js b/apps/files_external/l10n/ja.js
index 890b0ecbb45..62d3beac2ca 100644
--- a/apps/files_external/l10n/ja.js
+++ b/apps/files_external/l10n/ja.js
@@ -130,7 +130,7 @@ OC.L10N.register(
"No external storage configured" : "外部ストレージは設定されていません",
"You can add external storages in the personal settings" : "個人設定で外部ストレージを設定することができます。",
"Delete" : "削除",
- "Allow users to mount the following external storage" : "ユーザーに以下の外部ストレージのマウントを許可する",
+ "Allow users to mount the following external storage" : "ユーザーに次の外部ストレージのマウントを許可する",
"Are you sure you want to delete this external storage" : "この外部ストレージを本当に削除しますか?"
},
"nplurals=1; plural=0;");
diff --git a/apps/files_external/l10n/ja.json b/apps/files_external/l10n/ja.json
index 47021855dba..4c74fe624ec 100644
--- a/apps/files_external/l10n/ja.json
+++ b/apps/files_external/l10n/ja.json
@@ -128,7 +128,7 @@
"No external storage configured" : "外部ストレージは設定されていません",
"You can add external storages in the personal settings" : "個人設定で外部ストレージを設定することができます。",
"Delete" : "削除",
- "Allow users to mount the following external storage" : "ユーザーに以下の外部ストレージのマウントを許可する",
+ "Allow users to mount the following external storage" : "ユーザーに次の外部ストレージのマウントを許可する",
"Are you sure you want to delete this external storage" : "この外部ストレージを本当に削除しますか?"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/apps/files_external/l10n/nl.js b/apps/files_external/l10n/nl.js
index 519c3f8f2f1..735d2c08ff9 100644
--- a/apps/files_external/l10n/nl.js
+++ b/apps/files_external/l10n/nl.js
@@ -105,6 +105,8 @@ OC.L10N.register(
"The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP ondersteuning in PHP is niet ingeschakeld of geïnstalleerd. Mounten van %s is niet mogelijk. Vraag je beheerder dit te installeren.",
"\"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "\"%s\" is niet geïnstalleerd. Mounten van %s is niet mogelijk. Vraag je beheerder om dit te installeren.",
"External storage support" : "Externe opslag ondersteuning",
+ "Adds basic external storage support" : "Toevoegen basale ondersteuning voor externe opslag",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Met deze applicatie kunnen beheerders verbindingen met externe opslagproviders configureren, zoals FTP-servers, S3- of SWIFT-objectwinkels, andere Nextcloud-servers, WebDAV-servers en meer. Beheerders kunnen kiezen welke opslagtypen moeten worden ingeschakeld en kunnen deze opslaglocaties koppelen aan een gebruiker, een groep of het hele systeem. Gebruikers zien in hun hoofdmap een nieuwe map verschijnen, die ze kunnen openen en gebruiken zoals elke andere Nextcloud-map. Externe opslag stelt gebruikers ook in staat bestanden te delen die zijn opgeslagen op deze externe locaties. In deze gevallen worden de inloggegevens voor de eigenaar van het bestand gebruikt wanneer de ontvanger ​​vanuit externe opslag het bestand opvraagt, waardoor de ontvanger toegang heeft tot het gedeelde bestand.\n\nExterne opslag kan met behulp van de GUI of via de opdrachtregel worden geconfigureerd. Deze tweede optie biedt de geavanceerde gebruiker meer flexibiliteit bij het configureren van bulk externe opslagaankoppelpunten en het instellen van aankoppel-prioriteiten. Meer informatie is beschikbaar in de GUI-documentatie voor externe opslag en de documentatie voor de configuratie van externe opslag.",
"No external storage configured or you don't have the permission to configure them" : "Geen externe opslag geconfigureerd of je hebt geen toestemming om deze te configureren",
"Name" : "Naam",
"Storage type" : "Opslagtype",
@@ -115,6 +117,8 @@ OC.L10N.register(
"Check for changes" : "Controleren op wijzigingen",
"Never" : "Nooit",
"Once every direct access" : "Een keer bij elke directe toegang",
+ "Read only" : "Alleen lezen",
+ "External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices. You may also allow users to mount their own external storage services." : "Externe opslag laat je externe opslag diensten en apparaten aankoppelen als secundaire Nextcloud opslag. Je kunt ook toestaan dat gebruikers hun eigen externe opslagdiensten aankoppelen.",
"Folder name" : "Mapnaam",
"External storage" : "Externe opslag",
"Authentication" : "Authenticatie",
@@ -124,6 +128,7 @@ OC.L10N.register(
"Add storage" : "Toevoegen opslag",
"Advanced settings" : "Geavanceerde instellingen",
"Allow users to mount external storage" : "Sta gebruikers toe om een externe opslag aan te koppelen",
+ "Global credentials can be used to authenticate with multiple external storages that have the same credentials." : "Globale inloggegevens kunnen worden gebruikt met meerdere externe opslagsystemen met dezelfde inloggegevens.",
"Fetching request tokens failed. Verify that your app key and secret are correct." : "Binnenhalen van de aanvraag token is mislukt. Controleer dat je app sleutel en geheim correct zijn.",
"Fetching access tokens failed. Verify that your app key and secret are correct." : "Binnenhalen van de toegangstoken is mislukt. Controleer dat je app sleutel en geheim correct zijn.",
"Step 1 failed. Exception: %s" : "Stap 1 mislukt. Uitzondering: %s",
@@ -133,6 +138,7 @@ OC.L10N.register(
"OpenStack" : "OpenStack",
"Dropbox" : "Dropbox",
"Google Drive" : "Google Drive",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, Google Drive, Dropbox, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Met deze applicatie kunnen beheerders verbindingen met externe opslagproviders configureren, zoals FTP-servers, S3- of SWIFT-objectwinkels, Google Drive, Dropbox, andere Nextcloud-servers, WebDAV-servers en meer. Beheerders kunnen kiezen welke opslagtypen moeten worden ingeschakeld en kunnen deze opslaglocaties koppelen aan een gebruiker, een groep of het hele systeem. Gebruikers zien in hun hoofdmap een nieuwe map verschijnen, die ze kunnen openen en gebruiken zoals elke andere Nextcloud-map. Externe opslag stelt gebruikers ook in staat bestanden te delen die zijn opgeslagen op deze externe locaties. In deze gevallen worden de inloggegevens voor de eigenaar van het bestand gebruikt wanneer de ontvanger ​​vanuit externe opslag het bestand opvraagt, waardoor de ontvanger toegang heeft tot het gedeelde bestand.\n\nExterne opslag kan met behulp van de GUI of via de opdrachtregel worden geconfigureerd. Deze tweede optie biedt de geavanceerde gebruiker meer flexibiliteit bij het configureren van bulk externe opslagaankoppelpunten en het instellen van aankoppel-prioriteiten. Meer informatie is beschikbaar in de GUI-documentatie voor externe opslag en de documentatie voor de configuratie van externe opslag.",
"No external storage configured" : "Geen externe opslag geconfigureerd",
"You can add external storages in the personal settings" : "Je kunt externe opslag toevoegen in persoonlijke instellingen",
"Delete" : "Verwijder",
diff --git a/apps/files_external/l10n/nl.json b/apps/files_external/l10n/nl.json
index 9cf532f08e7..9ec5bab564a 100644
--- a/apps/files_external/l10n/nl.json
+++ b/apps/files_external/l10n/nl.json
@@ -103,6 +103,8 @@
"The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "FTP ondersteuning in PHP is niet ingeschakeld of geïnstalleerd. Mounten van %s is niet mogelijk. Vraag je beheerder dit te installeren.",
"\"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "\"%s\" is niet geïnstalleerd. Mounten van %s is niet mogelijk. Vraag je beheerder om dit te installeren.",
"External storage support" : "Externe opslag ondersteuning",
+ "Adds basic external storage support" : "Toevoegen basale ondersteuning voor externe opslag",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Met deze applicatie kunnen beheerders verbindingen met externe opslagproviders configureren, zoals FTP-servers, S3- of SWIFT-objectwinkels, andere Nextcloud-servers, WebDAV-servers en meer. Beheerders kunnen kiezen welke opslagtypen moeten worden ingeschakeld en kunnen deze opslaglocaties koppelen aan een gebruiker, een groep of het hele systeem. Gebruikers zien in hun hoofdmap een nieuwe map verschijnen, die ze kunnen openen en gebruiken zoals elke andere Nextcloud-map. Externe opslag stelt gebruikers ook in staat bestanden te delen die zijn opgeslagen op deze externe locaties. In deze gevallen worden de inloggegevens voor de eigenaar van het bestand gebruikt wanneer de ontvanger ​​vanuit externe opslag het bestand opvraagt, waardoor de ontvanger toegang heeft tot het gedeelde bestand.\n\nExterne opslag kan met behulp van de GUI of via de opdrachtregel worden geconfigureerd. Deze tweede optie biedt de geavanceerde gebruiker meer flexibiliteit bij het configureren van bulk externe opslagaankoppelpunten en het instellen van aankoppel-prioriteiten. Meer informatie is beschikbaar in de GUI-documentatie voor externe opslag en de documentatie voor de configuratie van externe opslag.",
"No external storage configured or you don't have the permission to configure them" : "Geen externe opslag geconfigureerd of je hebt geen toestemming om deze te configureren",
"Name" : "Naam",
"Storage type" : "Opslagtype",
@@ -113,6 +115,8 @@
"Check for changes" : "Controleren op wijzigingen",
"Never" : "Nooit",
"Once every direct access" : "Een keer bij elke directe toegang",
+ "Read only" : "Alleen lezen",
+ "External storage enables you to mount external storage services and devices as secondary Nextcloud storage devices. You may also allow users to mount their own external storage services." : "Externe opslag laat je externe opslag diensten en apparaten aankoppelen als secundaire Nextcloud opslag. Je kunt ook toestaan dat gebruikers hun eigen externe opslagdiensten aankoppelen.",
"Folder name" : "Mapnaam",
"External storage" : "Externe opslag",
"Authentication" : "Authenticatie",
@@ -122,6 +126,7 @@
"Add storage" : "Toevoegen opslag",
"Advanced settings" : "Geavanceerde instellingen",
"Allow users to mount external storage" : "Sta gebruikers toe om een externe opslag aan te koppelen",
+ "Global credentials can be used to authenticate with multiple external storages that have the same credentials." : "Globale inloggegevens kunnen worden gebruikt met meerdere externe opslagsystemen met dezelfde inloggegevens.",
"Fetching request tokens failed. Verify that your app key and secret are correct." : "Binnenhalen van de aanvraag token is mislukt. Controleer dat je app sleutel en geheim correct zijn.",
"Fetching access tokens failed. Verify that your app key and secret are correct." : "Binnenhalen van de toegangstoken is mislukt. Controleer dat je app sleutel en geheim correct zijn.",
"Step 1 failed. Exception: %s" : "Stap 1 mislukt. Uitzondering: %s",
@@ -131,6 +136,7 @@
"OpenStack" : "OpenStack",
"Dropbox" : "Dropbox",
"Google Drive" : "Google Drive",
+ "This application enables administrators to configure connections to external storage providers, such as FTP servers, S3 or SWIFT object stores, Google Drive, Dropbox, other Nextcloud servers, WebDAV servers, and more. Administrators can choose which types of storage to enable and can mount these storage locations for a user, a group, or the entire system. Users will see a new folder appear in their root Nextcloud directory, which they can access and use like any other Nextcloud folder. External storage also allows users to share files stored in these external locations. In these cases, the credentials for the owner of the file are used when the recipient requests the file from external storage, thereby ensuring that the recipient can access the shared file.\n\nExternal storage can be configured using the GUI or at the command line. This second option provides the advanced user with more flexibility for configuring bulk external storage mounts and setting mount priorities. More information is available in the external storage GUI documentation and the external storage Configuration File documentation." : "Met deze applicatie kunnen beheerders verbindingen met externe opslagproviders configureren, zoals FTP-servers, S3- of SWIFT-objectwinkels, Google Drive, Dropbox, andere Nextcloud-servers, WebDAV-servers en meer. Beheerders kunnen kiezen welke opslagtypen moeten worden ingeschakeld en kunnen deze opslaglocaties koppelen aan een gebruiker, een groep of het hele systeem. Gebruikers zien in hun hoofdmap een nieuwe map verschijnen, die ze kunnen openen en gebruiken zoals elke andere Nextcloud-map. Externe opslag stelt gebruikers ook in staat bestanden te delen die zijn opgeslagen op deze externe locaties. In deze gevallen worden de inloggegevens voor de eigenaar van het bestand gebruikt wanneer de ontvanger ​​vanuit externe opslag het bestand opvraagt, waardoor de ontvanger toegang heeft tot het gedeelde bestand.\n\nExterne opslag kan met behulp van de GUI of via de opdrachtregel worden geconfigureerd. Deze tweede optie biedt de geavanceerde gebruiker meer flexibiliteit bij het configureren van bulk externe opslagaankoppelpunten en het instellen van aankoppel-prioriteiten. Meer informatie is beschikbaar in de GUI-documentatie voor externe opslag en de documentatie voor de configuratie van externe opslag.",
"No external storage configured" : "Geen externe opslag geconfigureerd",
"You can add external storages in the personal settings" : "Je kunt externe opslag toevoegen in persoonlijke instellingen",
"Delete" : "Verwijder",
diff --git a/apps/files_external/l10n/sl.js b/apps/files_external/l10n/sl.js
index 3351315709d..6475f22c20a 100644
--- a/apps/files_external/l10n/sl.js
+++ b/apps/files_external/l10n/sl.js
@@ -22,7 +22,7 @@ OC.L10N.register(
"There was an error with message: " : "Prišlo je do napake s sporočilom:",
"External mount error" : "Notranja napaka priklopa",
"external-storage" : "zunanja-shramba",
- "Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Nekatere izmed nastavljenih zunanjih priklopnih točk niso povezane. Več podrobnosti je na voljo s klikom na rdeče vrstice.",
+ "Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Nekatere izmed nastavljenih zunanjih priklopnih točk niso povezane. Več podrobnosti se pokaže s klikom na rdeče vrstice.",
"Please enter the credentials for the {mount} mount" : "Vpišite poverila za priklopno točko {mount}",
"Username" : "Uporabniško ime",
"Password" : "Geslo",
diff --git a/apps/files_external/l10n/sl.json b/apps/files_external/l10n/sl.json
index 72d61f8e564..0fe27062be1 100644
--- a/apps/files_external/l10n/sl.json
+++ b/apps/files_external/l10n/sl.json
@@ -20,7 +20,7 @@
"There was an error with message: " : "Prišlo je do napake s sporočilom:",
"External mount error" : "Notranja napaka priklopa",
"external-storage" : "zunanja-shramba",
- "Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Nekatere izmed nastavljenih zunanjih priklopnih točk niso povezane. Več podrobnosti je na voljo s klikom na rdeče vrstice.",
+ "Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Nekatere izmed nastavljenih zunanjih priklopnih točk niso povezane. Več podrobnosti se pokaže s klikom na rdeče vrstice.",
"Please enter the credentials for the {mount} mount" : "Vpišite poverila za priklopno točko {mount}",
"Username" : "Uporabniško ime",
"Password" : "Geslo",
diff --git a/apps/files_sharing/l10n/bg.js b/apps/files_sharing/l10n/bg.js
new file mode 100644
index 00000000000..b85f1ab52d0
--- /dev/null
+++ b/apps/files_sharing/l10n/bg.js
@@ -0,0 +1,72 @@
+OC.L10N.register(
+ "files_sharing",
+ {
+ "Shared with others" : "Споделени с други",
+ "Shared with you" : "Споделени с вас",
+ "Shared by link" : "Споделени с връзка",
+ "Deleted shares" : "Изтрити",
+ "Shares" : "Споделени",
+ "Nothing shared with you yet" : "Няма споделени файлове",
+ "Files and folders others share with you will show up here" : "Файловете и папки, споделени с вас, ще се показват тук",
+ "Nothing shared yet" : "Няма споделени файлове",
+ "Files and folders you share will show up here" : "Файловете и папки, които сте споделили, ще се показват тук",
+ "No shared links" : "Няма споделени връзки",
+ "Files and folders you share by link will show up here" : "Файловете и папки, които споделяте чрез връзки, ще се показват тук",
+ "No deleted shares" : "Няма изтрити споделяния",
+ "Shares you deleted will show up here" : "Изтритите, от вас споделяния, ще се показват тук",
+ "No shares" : "Няма споделяния",
+ "Shares will show up here" : "Споделените елементи ще се показват тук",
+ "Restore share" : "Възстанови споделянето",
+ "Something happened. Unable to restore the share." : "Споделянето не може да бъде възстановено.",
+ "Move or copy" : "Премести или копирай",
+ "Download" : "Изтегли",
+ "Delete" : "Изтрий",
+ "You can upload into this folder" : "Може да качвате в папката",
+ "Invalid server URL" : "Невалиден URL адрес на сървъра",
+ "Share" : "Сподели",
+ "No expiration date set" : "Не е зададен срок на валидност",
+ "Shared by" : "Споделено от",
+ "Sharing" : "Споделяне",
+ "File shares" : "Няма споделяния",
+ "Downloaded by {email}" : "Изтеглен от {email}",
+ "Shared as public link" : "Споделено с публична връзка",
+ "Removed public link" : "Премахни публичната връзка",
+ "You removed public link for {file}" : "Премахнахте публична връзка към файла {file}",
+ "Shared with {user}" : "Споделен с {user}",
+ "{actor} shared with {user}" : "{actor} сподели с {user}",
+ "Shared by {actor}" : "Споделено от {actor}",
+ "You shared {file} with {user}" : "Вие споделихте {file} с {user}",
+ "{actor} shared {file} with you" : "{actor} сподели {file} с вас",
+ "A file or folder was shared from <strong>another server</strong>" : "Споделяне на файл / папка с <strong>друг сървър</strong>",
+ "A file or folder has been <strong>shared</strong>" : "<strong>Споделяне</strong> на файл / папка",
+ "Please specify a file or folder path" : "Моля въведете път до файл или папка",
+ "invalid permissions" : "невалидни права",
+ "Please specify a valid user" : "Моля въведете валиден потребител",
+ "Please specify a valid group" : "Моля въведете валидна група",
+ "Invalid date, date format must be YYYY-MM-DD" : "Невалидна дата, форматът е различен от ГГГГ-ММ-ДД",
+ "Not a directory" : "Не е директория",
+ "shared by %s" : "споделено от %s",
+ "Direct link" : "Директна връзка",
+ "Add to your Nextcloud" : "Добави към Nextcloud",
+ "File sharing" : "Споделяне на файлове",
+ "This application enables users to share files within Nextcloud. If enabled, the admin can choose which groups can share files. The applicable users can then share files and folders with other users and groups within Nextcloud. In addition, if the admin enables the share link feature, an external link can be used to share files with other users outside of Nextcloud. Admins can also enforce passwords, expirations dates, and enable server to server sharing via share links, as well as sharing from mobile devices.\nTurning the feature off removes shared files and folders on the server for all share recipients, and also on the sync clients and mobile apps. More information is available in the Nextcloud Documentation." : "Приложението позволява споделянето на файлове с Nextcloud. Администраторът може да ограничи споделянето само за определени групи. Потретилите с права ще могат да споделят файлове и папки с други потребители и групи от Nextcloud. За споделяне с потребители извън Nextloud администраторът трябва да активира функционалността за споделяне с връзка. Администратора може да наложи ползването на пароли, валидност, споделяне с връзка от сървър към сървър и споделяне от мобилни устройства.\nИзключването на функционалността ще прекрати споделени файлове и папки от сървъра (за потребители, клиенти за синхронизиране и мобилни приложения). Подробна информация ще намерите в документацията на Nextcloud.",
+ "No entries found in this folder" : "Папката е празна",
+ "Name" : "Име",
+ "Share time" : "Споделено на",
+ "Expiration date" : "Валидност",
+ "Sorry, this link doesn’t seem to work anymore." : "Връзката вече не е активна.",
+ "Reasons might be:" : "Причината може да бъде:",
+ "the item was removed" : "елемента е премахнат",
+ "the link expired" : "валидността на връзката е изтекла",
+ "sharing is disabled" : "споделянето е изключено",
+ "For more info, please ask the person who sent this link." : "За повече информация, моля питай човека, който е изпратил връзката.",
+ "Download %s" : "Изтегли %s",
+ "Select or drop files" : "Изберете файл или преместете с мишката",
+ "Uploading files…" : "Качване на файлове…",
+ "Uploaded files:" : "Качени файлове:",
+ "%s is publicly shared" : "%s е публично споделено",
+ "This share is password-protected" : "Тази зона е защитена с парола.",
+ "The password is wrong. Try again." : "Грешна парола. Опитай отново.",
+ "Password" : "Парола"
+},
+"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_sharing/l10n/bg.json b/apps/files_sharing/l10n/bg.json
new file mode 100644
index 00000000000..06b644865d9
--- /dev/null
+++ b/apps/files_sharing/l10n/bg.json
@@ -0,0 +1,70 @@
+{ "translations": {
+ "Shared with others" : "Споделени с други",
+ "Shared with you" : "Споделени с вас",
+ "Shared by link" : "Споделени с връзка",
+ "Deleted shares" : "Изтрити",
+ "Shares" : "Споделени",
+ "Nothing shared with you yet" : "Няма споделени файлове",
+ "Files and folders others share with you will show up here" : "Файловете и папки, споделени с вас, ще се показват тук",
+ "Nothing shared yet" : "Няма споделени файлове",
+ "Files and folders you share will show up here" : "Файловете и папки, които сте споделили, ще се показват тук",
+ "No shared links" : "Няма споделени връзки",
+ "Files and folders you share by link will show up here" : "Файловете и папки, които споделяте чрез връзки, ще се показват тук",
+ "No deleted shares" : "Няма изтрити споделяния",
+ "Shares you deleted will show up here" : "Изтритите, от вас споделяния, ще се показват тук",
+ "No shares" : "Няма споделяния",
+ "Shares will show up here" : "Споделените елементи ще се показват тук",
+ "Restore share" : "Възстанови споделянето",
+ "Something happened. Unable to restore the share." : "Споделянето не може да бъде възстановено.",
+ "Move or copy" : "Премести или копирай",
+ "Download" : "Изтегли",
+ "Delete" : "Изтрий",
+ "You can upload into this folder" : "Може да качвате в папката",
+ "Invalid server URL" : "Невалиден URL адрес на сървъра",
+ "Share" : "Сподели",
+ "No expiration date set" : "Не е зададен срок на валидност",
+ "Shared by" : "Споделено от",
+ "Sharing" : "Споделяне",
+ "File shares" : "Няма споделяния",
+ "Downloaded by {email}" : "Изтеглен от {email}",
+ "Shared as public link" : "Споделено с публична връзка",
+ "Removed public link" : "Премахни публичната връзка",
+ "You removed public link for {file}" : "Премахнахте публична връзка към файла {file}",
+ "Shared with {user}" : "Споделен с {user}",
+ "{actor} shared with {user}" : "{actor} сподели с {user}",
+ "Shared by {actor}" : "Споделено от {actor}",
+ "You shared {file} with {user}" : "Вие споделихте {file} с {user}",
+ "{actor} shared {file} with you" : "{actor} сподели {file} с вас",
+ "A file or folder was shared from <strong>another server</strong>" : "Споделяне на файл / папка с <strong>друг сървър</strong>",
+ "A file or folder has been <strong>shared</strong>" : "<strong>Споделяне</strong> на файл / папка",
+ "Please specify a file or folder path" : "Моля въведете път до файл или папка",
+ "invalid permissions" : "невалидни права",
+ "Please specify a valid user" : "Моля въведете валиден потребител",
+ "Please specify a valid group" : "Моля въведете валидна група",
+ "Invalid date, date format must be YYYY-MM-DD" : "Невалидна дата, форматът е различен от ГГГГ-ММ-ДД",
+ "Not a directory" : "Не е директория",
+ "shared by %s" : "споделено от %s",
+ "Direct link" : "Директна връзка",
+ "Add to your Nextcloud" : "Добави към Nextcloud",
+ "File sharing" : "Споделяне на файлове",
+ "This application enables users to share files within Nextcloud. If enabled, the admin can choose which groups can share files. The applicable users can then share files and folders with other users and groups within Nextcloud. In addition, if the admin enables the share link feature, an external link can be used to share files with other users outside of Nextcloud. Admins can also enforce passwords, expirations dates, and enable server to server sharing via share links, as well as sharing from mobile devices.\nTurning the feature off removes shared files and folders on the server for all share recipients, and also on the sync clients and mobile apps. More information is available in the Nextcloud Documentation." : "Приложението позволява споделянето на файлове с Nextcloud. Администраторът може да ограничи споделянето само за определени групи. Потретилите с права ще могат да споделят файлове и папки с други потребители и групи от Nextcloud. За споделяне с потребители извън Nextloud администраторът трябва да активира функционалността за споделяне с връзка. Администратора може да наложи ползването на пароли, валидност, споделяне с връзка от сървър към сървър и споделяне от мобилни устройства.\nИзключването на функционалността ще прекрати споделени файлове и папки от сървъра (за потребители, клиенти за синхронизиране и мобилни приложения). Подробна информация ще намерите в документацията на Nextcloud.",
+ "No entries found in this folder" : "Папката е празна",
+ "Name" : "Име",
+ "Share time" : "Споделено на",
+ "Expiration date" : "Валидност",
+ "Sorry, this link doesn’t seem to work anymore." : "Връзката вече не е активна.",
+ "Reasons might be:" : "Причината може да бъде:",
+ "the item was removed" : "елемента е премахнат",
+ "the link expired" : "валидността на връзката е изтекла",
+ "sharing is disabled" : "споделянето е изключено",
+ "For more info, please ask the person who sent this link." : "За повече информация, моля питай човека, който е изпратил връзката.",
+ "Download %s" : "Изтегли %s",
+ "Select or drop files" : "Изберете файл или преместете с мишката",
+ "Uploading files…" : "Качване на файлове…",
+ "Uploaded files:" : "Качени файлове:",
+ "%s is publicly shared" : "%s е публично споделено",
+ "This share is password-protected" : "Тази зона е защитена с парола.",
+ "The password is wrong. Try again." : "Грешна парола. Опитай отново.",
+ "Password" : "Парола"
+},"pluralForm" :"nplurals=2; plural=(n != 1);"
+} \ No newline at end of file
diff --git a/apps/files_sharing/l10n/cs.js b/apps/files_sharing/l10n/cs.js
index 8dfe30ac838..14a91ac77c8 100644
--- a/apps/files_sharing/l10n/cs.js
+++ b/apps/files_sharing/l10n/cs.js
@@ -7,7 +7,7 @@ OC.L10N.register(
"Deleted shares" : "Smazat sdílení",
"Shares" : "Sdílení",
"Nothing shared with you yet" : "Zatím s vámi nikdo nic nesdílel",
- "Files and folders others share with you will show up here" : "Zde budou zobrazeny soubory a adresáře, které ostatní sdílí s vámi",
+ "Files and folders others share with you will show up here" : "Zde budou zobrazeny soubory a složky, které ostatní sdílí s vámi",
"Nothing shared yet" : "Zatím není nic sdíleno",
"Files and folders you share will show up here" : "Zde budou zobrazeny vámi sdílené soubory a adresáře",
"No shared links" : "Žádné sdílené odkazy",
@@ -29,7 +29,7 @@ OC.L10N.register(
"No expiration date set" : "Není nastaveno datum vypršení platnosti",
"Shared by" : "Sdílí",
"Sharing" : "Sdílení",
- "File shares" : "Sdílení souboru",
+ "File shares" : "Sdílení souborů",
"Downloaded via public link" : "Staženo pomocí veřejného odkazu",
"Downloaded by {email}" : "Stáhl {email}",
"{file} downloaded via public link" : "{file} stažen pomocí veřejného odkazu",
@@ -59,14 +59,14 @@ OC.L10N.register(
"You received a new remote share {file} from {user}" : "Obdržel(a) jste nové vzdálené sdílení souboru {file} od {user}",
"{user} accepted the remote share of {file}" : "{user} přijal vzdálené sdílení souboru {file}",
"{user} declined the remote share of {file}" : "{user} odmítl(a) vzdálené sdílení {file}",
- "{user} unshared {file} from you" : "{user} s vámi již nesdílí soubor {file}",
+ "{user} unshared {file} from you" : "{user} s vámi už nesdílí soubor {file}",
"Shared with {user}" : "Sdíleno s {user}",
"Removed share for {user}" : "Odstraněno sdílení pro {user}",
"{actor} shared with {user}" : "{actor} sdílel(a) s {user}",
"{actor} removed share for {user}" : "{actor} odstranil(a) sdílení pro {user}",
- "Shared by {actor}" : "Sdílel {actor}",
+ "Shared by {actor}" : "Sdílel(a) {actor}",
"{actor} removed share" : "{actor} odebral(a) sdílení",
- "You shared {file} with {user}" : "Sdílel(a) jste {file} s {user}",
+ "You shared {file} with {user}" : "Sdílíte {file} s {user}",
"You removed {user} from {file}" : "Odstranil(a) jste uživatele {user} z {file}",
"{actor} shared {file} with {user}" : "{actor} s {user} sdílel(a) {file}",
"{actor} removed {user} from {file}" : "{actor} odstranil(a) uživatele {user} z {file}",
@@ -88,35 +88,40 @@ OC.L10N.register(
"Public link sharing is disabled by the administrator" : "Sdílení veřejným odkazem je zakázáno správcem",
"Public upload disabled by the administrator" : "Nahrávání veřejností zakázáno správcem",
"Public upload is only possible for publicly shared folders" : "Veřejné nahrávání je možné pouze do veřejně sdílených šložek",
- "Invalid date, date format must be YYYY-MM-DD" : "Neplatné datum, formát data musí být YYY-MM-DD",
+ "Invalid date, date format must be YYYY-MM-DD" : "Neplatné datum – je třeba, aby jeho formát byl RRRR-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "Sdílení %s se nezdařilo, protože podpůrná vrstva nepodporuje typ sdílení %s",
- "You cannot share to a Circle if the app is not enabled" : "Do kruhu nemůžete sdílet, pokud není aplikace povolena",
- "Please specify a valid circle" : "Zadejte platný kruh",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Sdílení %s posláním hesla přes Nextcloud Talk se nezdařilo, protože Nextcloud Talk není zapnutý",
+ "You cannot share to a Circle if the app is not enabled" : "Do okruhu nemůžete sdílet, pokud není aplikace zapnuta",
+ "Please specify a valid circle" : "Zadejte platný okruh",
+ "Sharing %s failed because the back end does not support room shares" : "Sdílení %s se nezdařilo protože podpůrná vrstva nepodporuje sdílení místností",
"Unknown share type" : "Neznámý typ sdílení",
"Not a directory" : "Není adresář",
"Could not lock path" : "Nepodařilo se uzamknout cestu",
"Wrong or no update parameter given" : "Chyba nebo žádná aktualizace dle zadaných parametrů",
"Can't change permissions for public share links" : "Nelze změnit oprávnění pro veřejně sdílené odkazy",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Sdílení posláním hesla prostřednictvím Nextcloud Talk se nezdařilo protože Nextcloud Talk není zapnutý",
"Cannot increase permissions" : "Nelze navýšit oprávnění",
"shared by %s" : "Sdílel %s",
"Direct link" : "Přímý odkaz",
"Add to your Nextcloud" : "Přidat do Nextcloud",
"Share API is disabled" : "Sdílení API je zakázané",
"File sharing" : "Sdílení souborů",
- "No entries found in this folder" : "V tomto adresáři nebylo nic nalezeno",
+ "This application enables users to share files within Nextcloud. If enabled, the admin can choose which groups can share files. The applicable users can then share files and folders with other users and groups within Nextcloud. In addition, if the admin enables the share link feature, an external link can be used to share files with other users outside of Nextcloud. Admins can also enforce passwords, expirations dates, and enable server to server sharing via share links, as well as sharing from mobile devices.\nTurning the feature off removes shared files and folders on the server for all share recipients, and also on the sync clients and mobile apps. More information is available in the Nextcloud Documentation." : "Tato aplikace uživatelům umožňuje sdílet soubory v rámci Nextcloud. Pokud je zapnutá, správce může zvolit které skupiny mohou sdílet soubory. Pověření uživatelé pak mohou sdílet soubory a složky s ostatními uživateli a skupinami v rámci Nextcloud. Krom toho, pokud správce zapne funkci odkazu sdílení, je možné sdílet soubory i s uživateli mimo Nextcloud a to pomocí externího odkazu. Správci také mohou vynutit používání hesel, datumů expirace a zapnout sdílení server-server pomocí sdílecích odkazů. Stejně tak sdílení z mobilních zařízení.\nVypnutí této funkce odebere sdílené soubory a složky na server pro všechny příjemce sdílení a také na synchronizačních klientech a mobilních aplikacích. Více informací je k dispozici v dokumentaci k Nextcloud.",
+ "No entries found in this folder" : "V této složce nebylo nic nalezeno",
"Name" : "Název",
"Share time" : "Čas sdílení",
- "Expiration date" : "Datum vypršení platnosti",
- "Sorry, this link doesn’t seem to work anymore." : "Je nám líto, ale tento odkaz již není funkční.",
+ "Expiration date" : "Datum skončení platnosti",
+ "Sorry, this link doesn’t seem to work anymore." : "Je nám líto, ale tento odkaz už není funkční.",
"Reasons might be:" : "Možné důvody:",
"the item was removed" : "položka byla odebrána",
- "the link expired" : "platnost odkazu vypršela",
+ "the link expired" : "platnost odkazu skončila",
"sharing is disabled" : "sdílení je zakázané",
"For more info, please ask the person who sent this link." : "Pro více informací kontaktujte osobu, která vám zaslala tento odkaz.",
+ "Share note" : "Sdílet poznámku",
"Download %s" : "Stáhnout %s",
"Upload files to %s" : "Nahrát soubory do %s",
"Select or drop files" : "Vyberte nebo přetáhněte soubory",
- "Uploading files…" : "Probíhá nahrávání souborů...",
+ "Uploading files…" : "Nahrávání souborů…",
"Uploaded files:" : "Nahrané soubory:",
"{actor} removed you from {file}" : "{actor} vás odstranil(a) ze souboru {file}",
"%s is publicly shared" : "%s je veřejně sdíleno",
diff --git a/apps/files_sharing/l10n/cs.json b/apps/files_sharing/l10n/cs.json
index 5159af19936..c76c4b793ed 100644
--- a/apps/files_sharing/l10n/cs.json
+++ b/apps/files_sharing/l10n/cs.json
@@ -5,7 +5,7 @@
"Deleted shares" : "Smazat sdílení",
"Shares" : "Sdílení",
"Nothing shared with you yet" : "Zatím s vámi nikdo nic nesdílel",
- "Files and folders others share with you will show up here" : "Zde budou zobrazeny soubory a adresáře, které ostatní sdílí s vámi",
+ "Files and folders others share with you will show up here" : "Zde budou zobrazeny soubory a složky, které ostatní sdílí s vámi",
"Nothing shared yet" : "Zatím není nic sdíleno",
"Files and folders you share will show up here" : "Zde budou zobrazeny vámi sdílené soubory a adresáře",
"No shared links" : "Žádné sdílené odkazy",
@@ -27,7 +27,7 @@
"No expiration date set" : "Není nastaveno datum vypršení platnosti",
"Shared by" : "Sdílí",
"Sharing" : "Sdílení",
- "File shares" : "Sdílení souboru",
+ "File shares" : "Sdílení souborů",
"Downloaded via public link" : "Staženo pomocí veřejného odkazu",
"Downloaded by {email}" : "Stáhl {email}",
"{file} downloaded via public link" : "{file} stažen pomocí veřejného odkazu",
@@ -57,14 +57,14 @@
"You received a new remote share {file} from {user}" : "Obdržel(a) jste nové vzdálené sdílení souboru {file} od {user}",
"{user} accepted the remote share of {file}" : "{user} přijal vzdálené sdílení souboru {file}",
"{user} declined the remote share of {file}" : "{user} odmítl(a) vzdálené sdílení {file}",
- "{user} unshared {file} from you" : "{user} s vámi již nesdílí soubor {file}",
+ "{user} unshared {file} from you" : "{user} s vámi už nesdílí soubor {file}",
"Shared with {user}" : "Sdíleno s {user}",
"Removed share for {user}" : "Odstraněno sdílení pro {user}",
"{actor} shared with {user}" : "{actor} sdílel(a) s {user}",
"{actor} removed share for {user}" : "{actor} odstranil(a) sdílení pro {user}",
- "Shared by {actor}" : "Sdílel {actor}",
+ "Shared by {actor}" : "Sdílel(a) {actor}",
"{actor} removed share" : "{actor} odebral(a) sdílení",
- "You shared {file} with {user}" : "Sdílel(a) jste {file} s {user}",
+ "You shared {file} with {user}" : "Sdílíte {file} s {user}",
"You removed {user} from {file}" : "Odstranil(a) jste uživatele {user} z {file}",
"{actor} shared {file} with {user}" : "{actor} s {user} sdílel(a) {file}",
"{actor} removed {user} from {file}" : "{actor} odstranil(a) uživatele {user} z {file}",
@@ -86,35 +86,40 @@
"Public link sharing is disabled by the administrator" : "Sdílení veřejným odkazem je zakázáno správcem",
"Public upload disabled by the administrator" : "Nahrávání veřejností zakázáno správcem",
"Public upload is only possible for publicly shared folders" : "Veřejné nahrávání je možné pouze do veřejně sdílených šložek",
- "Invalid date, date format must be YYYY-MM-DD" : "Neplatné datum, formát data musí být YYY-MM-DD",
+ "Invalid date, date format must be YYYY-MM-DD" : "Neplatné datum – je třeba, aby jeho formát byl RRRR-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "Sdílení %s se nezdařilo, protože podpůrná vrstva nepodporuje typ sdílení %s",
- "You cannot share to a Circle if the app is not enabled" : "Do kruhu nemůžete sdílet, pokud není aplikace povolena",
- "Please specify a valid circle" : "Zadejte platný kruh",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Sdílení %s posláním hesla přes Nextcloud Talk se nezdařilo, protože Nextcloud Talk není zapnutý",
+ "You cannot share to a Circle if the app is not enabled" : "Do okruhu nemůžete sdílet, pokud není aplikace zapnuta",
+ "Please specify a valid circle" : "Zadejte platný okruh",
+ "Sharing %s failed because the back end does not support room shares" : "Sdílení %s se nezdařilo protože podpůrná vrstva nepodporuje sdílení místností",
"Unknown share type" : "Neznámý typ sdílení",
"Not a directory" : "Není adresář",
"Could not lock path" : "Nepodařilo se uzamknout cestu",
"Wrong or no update parameter given" : "Chyba nebo žádná aktualizace dle zadaných parametrů",
"Can't change permissions for public share links" : "Nelze změnit oprávnění pro veřejně sdílené odkazy",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Sdílení posláním hesla prostřednictvím Nextcloud Talk se nezdařilo protože Nextcloud Talk není zapnutý",
"Cannot increase permissions" : "Nelze navýšit oprávnění",
"shared by %s" : "Sdílel %s",
"Direct link" : "Přímý odkaz",
"Add to your Nextcloud" : "Přidat do Nextcloud",
"Share API is disabled" : "Sdílení API je zakázané",
"File sharing" : "Sdílení souborů",
- "No entries found in this folder" : "V tomto adresáři nebylo nic nalezeno",
+ "This application enables users to share files within Nextcloud. If enabled, the admin can choose which groups can share files. The applicable users can then share files and folders with other users and groups within Nextcloud. In addition, if the admin enables the share link feature, an external link can be used to share files with other users outside of Nextcloud. Admins can also enforce passwords, expirations dates, and enable server to server sharing via share links, as well as sharing from mobile devices.\nTurning the feature off removes shared files and folders on the server for all share recipients, and also on the sync clients and mobile apps. More information is available in the Nextcloud Documentation." : "Tato aplikace uživatelům umožňuje sdílet soubory v rámci Nextcloud. Pokud je zapnutá, správce může zvolit které skupiny mohou sdílet soubory. Pověření uživatelé pak mohou sdílet soubory a složky s ostatními uživateli a skupinami v rámci Nextcloud. Krom toho, pokud správce zapne funkci odkazu sdílení, je možné sdílet soubory i s uživateli mimo Nextcloud a to pomocí externího odkazu. Správci také mohou vynutit používání hesel, datumů expirace a zapnout sdílení server-server pomocí sdílecích odkazů. Stejně tak sdílení z mobilních zařízení.\nVypnutí této funkce odebere sdílené soubory a složky na server pro všechny příjemce sdílení a také na synchronizačních klientech a mobilních aplikacích. Více informací je k dispozici v dokumentaci k Nextcloud.",
+ "No entries found in this folder" : "V této složce nebylo nic nalezeno",
"Name" : "Název",
"Share time" : "Čas sdílení",
- "Expiration date" : "Datum vypršení platnosti",
- "Sorry, this link doesn’t seem to work anymore." : "Je nám líto, ale tento odkaz již není funkční.",
+ "Expiration date" : "Datum skončení platnosti",
+ "Sorry, this link doesn’t seem to work anymore." : "Je nám líto, ale tento odkaz už není funkční.",
"Reasons might be:" : "Možné důvody:",
"the item was removed" : "položka byla odebrána",
- "the link expired" : "platnost odkazu vypršela",
+ "the link expired" : "platnost odkazu skončila",
"sharing is disabled" : "sdílení je zakázané",
"For more info, please ask the person who sent this link." : "Pro více informací kontaktujte osobu, která vám zaslala tento odkaz.",
+ "Share note" : "Sdílet poznámku",
"Download %s" : "Stáhnout %s",
"Upload files to %s" : "Nahrát soubory do %s",
"Select or drop files" : "Vyberte nebo přetáhněte soubory",
- "Uploading files…" : "Probíhá nahrávání souborů...",
+ "Uploading files…" : "Nahrávání souborů…",
"Uploaded files:" : "Nahrané soubory:",
"{actor} removed you from {file}" : "{actor} vás odstranil(a) ze souboru {file}",
"%s is publicly shared" : "%s je veřejně sdíleno",
diff --git a/apps/files_sharing/l10n/el.js b/apps/files_sharing/l10n/el.js
index 77d04dd7af0..65ec94b56a0 100644
--- a/apps/files_sharing/l10n/el.js
+++ b/apps/files_sharing/l10n/el.js
@@ -4,13 +4,16 @@ OC.L10N.register(
"Shared with others" : "Διαμοιρασμένα με άλλους",
"Shared with you" : "Διαμοιρασμένα με εσάς",
"Shared by link" : "Διαμοιρασμένα μέσω συνδέσμου",
+ "Deleted shares" : "Διαγραμμένα κοινόχρηστα",
"Nothing shared with you yet" : "Κανένα αρχείο δεν έχει διαμοιραστεί ακόμα με εσάς.",
"Files and folders others share with you will show up here" : "Τα αρχεία και οι φάκελοι που άλλοι διαμοιράζονται με εσάς θα εμφανιστούν εδώ",
"Nothing shared yet" : "Δεν έχει διαμοιραστεί τίποτα μέχρι στιγμής",
"Files and folders you share will show up here" : "Τα αρχεία και οι φάκελοι που διαμοιράζεστε θα εμφανιστούν εδώ",
"No shared links" : "Κανένας διαμοιρασμένος σύνδεσμος",
"Files and folders you share by link will show up here" : "Τα αρχεία και οι φάκελοι που διαμοιράζεστε μέσω συνδέσμου θα εμφανιστούνε εδώ",
+ "Move or copy" : "Μετακίνηση ή αντιγραφή",
"Download" : "Λήψη",
+ "Delete" : "Διαγραφή",
"You can upload into this folder" : "Μπορείτε να μεταφορτώσετε σε αυτόν τον φάκελο",
"No compatible server found at {remote}" : "Δεν βρέθηκε συμβατός διακομιστής σε {remote}",
"Invalid server URL" : "Μη έγκυρο URL διακομιστή",
diff --git a/apps/files_sharing/l10n/el.json b/apps/files_sharing/l10n/el.json
index d27ed52bc28..1e3a348bacc 100644
--- a/apps/files_sharing/l10n/el.json
+++ b/apps/files_sharing/l10n/el.json
@@ -2,13 +2,16 @@
"Shared with others" : "Διαμοιρασμένα με άλλους",
"Shared with you" : "Διαμοιρασμένα με εσάς",
"Shared by link" : "Διαμοιρασμένα μέσω συνδέσμου",
+ "Deleted shares" : "Διαγραμμένα κοινόχρηστα",
"Nothing shared with you yet" : "Κανένα αρχείο δεν έχει διαμοιραστεί ακόμα με εσάς.",
"Files and folders others share with you will show up here" : "Τα αρχεία και οι φάκελοι που άλλοι διαμοιράζονται με εσάς θα εμφανιστούν εδώ",
"Nothing shared yet" : "Δεν έχει διαμοιραστεί τίποτα μέχρι στιγμής",
"Files and folders you share will show up here" : "Τα αρχεία και οι φάκελοι που διαμοιράζεστε θα εμφανιστούν εδώ",
"No shared links" : "Κανένας διαμοιρασμένος σύνδεσμος",
"Files and folders you share by link will show up here" : "Τα αρχεία και οι φάκελοι που διαμοιράζεστε μέσω συνδέσμου θα εμφανιστούνε εδώ",
+ "Move or copy" : "Μετακίνηση ή αντιγραφή",
"Download" : "Λήψη",
+ "Delete" : "Διαγραφή",
"You can upload into this folder" : "Μπορείτε να μεταφορτώσετε σε αυτόν τον φάκελο",
"No compatible server found at {remote}" : "Δεν βρέθηκε συμβατός διακομιστής σε {remote}",
"Invalid server URL" : "Μη έγκυρο URL διακομιστή",
diff --git a/apps/files_sharing/l10n/fi.js b/apps/files_sharing/l10n/fi.js
index 571d44b9b4b..809467c0303 100644
--- a/apps/files_sharing/l10n/fi.js
+++ b/apps/files_sharing/l10n/fi.js
@@ -18,7 +18,9 @@ OC.L10N.register(
"Shares will show up here" : "Jaot näkyvät täällä",
"Restore share" : "Palauta jako",
"Something happened. Unable to restore the share." : "Jotain tapahtui. Jakoa ei kyetty palauttamaan.",
+ "Move or copy" : "Siirrä tai kopioi",
"Download" : "Lataa",
+ "Delete" : "Poista",
"You can upload into this folder" : "Voit lähettää tiedostoja tähän kansioon",
"No compatible server found at {remote}" : "Yhteensopivaa palvelinta ei löytynyt osoitteesta {remote}",
"Invalid server URL" : "Virheellinen palvelimen URL",
@@ -69,6 +71,7 @@ OC.L10N.register(
"{actor} shared {file} with {user}" : "{actor} jakoi kohteen {file} käyttäjälle {user}",
"{actor} removed {user} from {file}" : "{actor} poisti käyttäjän {user} kohteen {file} käyttöoikeudet",
"{actor} shared {file} with you" : "{actor} jakoi kohteen {file} kanssasi",
+ "{actor} removed you from the share named {file}" : "{actor} poisti sinut jaosta nimeltä {file}",
"A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Tiedosto tai kansio, joka on jaettu sähköpostitse tai julkisen linkin kautta, on <strong>ladattu</strong>",
"A file or folder was shared from <strong>another server</strong>" : "Tiedosto tai kansio on jaettu <strong>toiselta palvelimelta</strong>",
"A file or folder has been <strong>shared</strong>" : "Tiedosto tai kansio on <strong>jaettu</strong>",
@@ -110,6 +113,7 @@ OC.L10N.register(
"the link expired" : "linkki vanheni",
"sharing is disabled" : "jakaminen on poistettu käytöstä",
"For more info, please ask the person who sent this link." : "Kysy lisätietoja henkilöltä, jolta sait linkin.",
+ "Share note" : "Jaa muistiinpano",
"Download %s" : "Lataa %s",
"Upload files to %s" : "Lähetä tiedostoja käyttäjälle %s",
"Select or drop files" : "Valitse tai pudota tiedostoja",
diff --git a/apps/files_sharing/l10n/fi.json b/apps/files_sharing/l10n/fi.json
index ea7c646a99f..250d9de95dd 100644
--- a/apps/files_sharing/l10n/fi.json
+++ b/apps/files_sharing/l10n/fi.json
@@ -16,7 +16,9 @@
"Shares will show up here" : "Jaot näkyvät täällä",
"Restore share" : "Palauta jako",
"Something happened. Unable to restore the share." : "Jotain tapahtui. Jakoa ei kyetty palauttamaan.",
+ "Move or copy" : "Siirrä tai kopioi",
"Download" : "Lataa",
+ "Delete" : "Poista",
"You can upload into this folder" : "Voit lähettää tiedostoja tähän kansioon",
"No compatible server found at {remote}" : "Yhteensopivaa palvelinta ei löytynyt osoitteesta {remote}",
"Invalid server URL" : "Virheellinen palvelimen URL",
@@ -67,6 +69,7 @@
"{actor} shared {file} with {user}" : "{actor} jakoi kohteen {file} käyttäjälle {user}",
"{actor} removed {user} from {file}" : "{actor} poisti käyttäjän {user} kohteen {file} käyttöoikeudet",
"{actor} shared {file} with you" : "{actor} jakoi kohteen {file} kanssasi",
+ "{actor} removed you from the share named {file}" : "{actor} poisti sinut jaosta nimeltä {file}",
"A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Tiedosto tai kansio, joka on jaettu sähköpostitse tai julkisen linkin kautta, on <strong>ladattu</strong>",
"A file or folder was shared from <strong>another server</strong>" : "Tiedosto tai kansio on jaettu <strong>toiselta palvelimelta</strong>",
"A file or folder has been <strong>shared</strong>" : "Tiedosto tai kansio on <strong>jaettu</strong>",
@@ -108,6 +111,7 @@
"the link expired" : "linkki vanheni",
"sharing is disabled" : "jakaminen on poistettu käytöstä",
"For more info, please ask the person who sent this link." : "Kysy lisätietoja henkilöltä, jolta sait linkin.",
+ "Share note" : "Jaa muistiinpano",
"Download %s" : "Lataa %s",
"Upload files to %s" : "Lähetä tiedostoja käyttäjälle %s",
"Select or drop files" : "Valitse tai pudota tiedostoja",
diff --git a/apps/files_sharing/l10n/hu.js b/apps/files_sharing/l10n/hu.js
index fefd349fcc8..1d412beaa95 100644
--- a/apps/files_sharing/l10n/hu.js
+++ b/apps/files_sharing/l10n/hu.js
@@ -115,10 +115,10 @@ OC.L10N.register(
"For more info, please ask the person who sent this link." : "További információért fordulj ahhoz, aki ezt a linket küldte neked!",
"Share note" : "Jegyzet megosztása",
"Download %s" : "%s letöltése",
- "Upload files to %s" : "Fájlok felöltése ide: %s",
+ "Upload files to %s" : "Fájlok feltöltése ide: %s",
"Select or drop files" : "Válassz ki vagy dobj ide fájlokat",
"Uploading files…" : "Fájlok feltöltése...",
- "Uploaded files:" : "Felöltött fájlok:",
+ "Uploaded files:" : "Feltöltött fájlok:",
"{actor} removed you from {file}" : "{actor} eltávolított innen: {file}",
"%s is publicly shared" : "%s nyilvánosan megosztva",
"This share is password-protected" : "Ez egy jelszóval védett megosztás",
diff --git a/apps/files_sharing/l10n/hu.json b/apps/files_sharing/l10n/hu.json
index a2fee686eb4..14c6895571c 100644
--- a/apps/files_sharing/l10n/hu.json
+++ b/apps/files_sharing/l10n/hu.json
@@ -113,10 +113,10 @@
"For more info, please ask the person who sent this link." : "További információért fordulj ahhoz, aki ezt a linket küldte neked!",
"Share note" : "Jegyzet megosztása",
"Download %s" : "%s letöltése",
- "Upload files to %s" : "Fájlok felöltése ide: %s",
+ "Upload files to %s" : "Fájlok feltöltése ide: %s",
"Select or drop files" : "Válassz ki vagy dobj ide fájlokat",
"Uploading files…" : "Fájlok feltöltése...",
- "Uploaded files:" : "Felöltött fájlok:",
+ "Uploaded files:" : "Feltöltött fájlok:",
"{actor} removed you from {file}" : "{actor} eltávolított innen: {file}",
"%s is publicly shared" : "%s nyilvánosan megosztva",
"This share is password-protected" : "Ez egy jelszóval védett megosztás",
diff --git a/apps/files_sharing/l10n/nl.js b/apps/files_sharing/l10n/nl.js
index 96a00b584fb..69f0b44d8be 100644
--- a/apps/files_sharing/l10n/nl.js
+++ b/apps/files_sharing/l10n/nl.js
@@ -15,8 +15,12 @@ OC.L10N.register(
"No deleted shares" : "Geen verwijderde shares",
"Shares you deleted will show up here" : "Shares die je verwijderde, worden hier getoond",
"No shares" : "Geen shares",
+ "Shares will show up here" : "Shares worden hier getoond",
+ "Restore share" : "Herstel share",
+ "Something happened. Unable to restore the share." : "Er is iets gebeurd. Kan de share niet herstellen.",
"Move or copy" : "Verplaatsen of kopiëren",
"Download" : "Downloaden",
+ "Delete" : "Verwijderen",
"You can upload into this folder" : "Je kunt uploaden naar deze map",
"No compatible server found at {remote}" : "Geen geschikte server gevonden op {remote}",
"Invalid server URL" : "Ongeldig server URL",
@@ -67,6 +71,7 @@ OC.L10N.register(
"{actor} shared {file} with {user}" : "{actor} deelde {file} met {user}",
"{actor} removed {user} from {file}" : "{actor} verwijderde {user} van {file}",
"{actor} shared {file} with you" : "{actor} heeft {file} met je gedeeld",
+ "{actor} removed you from the share named {file}" : "{actor} verwijderde je van share {file}",
"A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Een bestand of map gedeeld via mail of publieke link werd <strong>gedownload</strong>",
"A file or folder was shared from <strong>another server</strong>" : "Een bestand of map werd gedeeld vanaf <strong>een andere server</strong>",
"A file or folder has been <strong>shared</strong>" : "Een bestand of map is <strong>gedeeld</strong>",
@@ -85,19 +90,23 @@ OC.L10N.register(
"Public upload is only possible for publicly shared folders" : "Publieke upload is alleen mogelijk voor publiek gedeelde mappen",
"Invalid date, date format must be YYYY-MM-DD" : "Ongeldige datum, datumnotatie moet in de vorm YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "Delen van %s mislukte omdat de backend het delen van type %s niet ondersteunt",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Delen %s versturen van het wachtwoord via Nextcloud Talk is mislukt omdat Nextcloud Talk niet is ingeschakeld",
"You cannot share to a Circle if the app is not enabled" : "Je kunt niets met een Kring delen als de app niet is ingeschakeld.",
"Please specify a valid circle" : "Geef een geldige kring op",
+ "Sharing %s failed because the back end does not support room shares" : "Delen van %s mislukte omdat de backend het delen in ruimtes niet ondersteunt",
"Unknown share type" : "Onbekend type gedeelde folder",
"Not a directory" : "Geen directory",
"Could not lock path" : "Kan pad niet blokkeren",
"Wrong or no update parameter given" : "Verkeerde of geen update parameter opgegeven",
"Can't change permissions for public share links" : "Kan rechten voor openbaar gedeelde links niet wijzigen",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Delen versturen van het wachtwoord via Nextcloud Talk is mislukt omdat Nextcloud Talk niet is ingeschakeld",
"Cannot increase permissions" : "Kan de rechten niet verruimen",
"shared by %s" : "Gedeeld door %s",
"Direct link" : "Directe link",
"Add to your Nextcloud" : "Toevoegen aan je Nextcloud",
"Share API is disabled" : "Delen API is uitgeschakeld",
"File sharing" : "Bestand delen",
+ "This application enables users to share files within Nextcloud. If enabled, the admin can choose which groups can share files. The applicable users can then share files and folders with other users and groups within Nextcloud. In addition, if the admin enables the share link feature, an external link can be used to share files with other users outside of Nextcloud. Admins can also enforce passwords, expirations dates, and enable server to server sharing via share links, as well as sharing from mobile devices.\nTurning the feature off removes shared files and folders on the server for all share recipients, and also on the sync clients and mobile apps. More information is available in the Nextcloud Documentation." : "Met deze applicatie kunnen gebruikers bestanden delen binnen Nextcloud. Indien ingeschakeld, kan de beheerder kiezen welke groepen bestanden kunnen delen. De betreffende gebruikers kunnen vervolgens bestanden en mappen delen met andere gebruikers en groepen binnen Nextcloud. Als de beheerder de functie voor het delen van koppelingen inschakelt, kan ook een externe koppeling worden gebruikt om bestanden te delen met andere gebruikers buiten Nextcloud. Beheerders kunnen ook wachtwoorden en vervaldatums afdwingen en delen van server-naar-server mogelijk maken via koppelingslinks en evenals delen vanaf mobiele apparaten.\nAls je de functie uitschakelt, worden gedeelde bestanden en mappen op de server verwijderd voor alle ontvangers van shares, en ook voor de synchronisatieclients en mobiele apps. Meer informatie is beschikbaar in de Nextcloud-documentatie.",
"No entries found in this folder" : "Niets gevonden in deze map",
"Name" : "Naam",
"Share time" : "Deel tijd",
@@ -108,6 +117,7 @@ OC.L10N.register(
"the link expired" : "de link is verlopen",
"sharing is disabled" : "delen is uitgeschakeld",
"For more info, please ask the person who sent this link." : "Voor meer informatie, neem contact op met de persoon die u deze link heeft gestuurd.",
+ "Share note" : "Notitie delen",
"Download %s" : "Download %s",
"Upload files to %s" : "Upload bestanden naar %s",
"Select or drop files" : "Selecteer bestanden of sleep ze naar dit venster",
diff --git a/apps/files_sharing/l10n/nl.json b/apps/files_sharing/l10n/nl.json
index f070d811fa7..602ae74cd6a 100644
--- a/apps/files_sharing/l10n/nl.json
+++ b/apps/files_sharing/l10n/nl.json
@@ -13,8 +13,12 @@
"No deleted shares" : "Geen verwijderde shares",
"Shares you deleted will show up here" : "Shares die je verwijderde, worden hier getoond",
"No shares" : "Geen shares",
+ "Shares will show up here" : "Shares worden hier getoond",
+ "Restore share" : "Herstel share",
+ "Something happened. Unable to restore the share." : "Er is iets gebeurd. Kan de share niet herstellen.",
"Move or copy" : "Verplaatsen of kopiëren",
"Download" : "Downloaden",
+ "Delete" : "Verwijderen",
"You can upload into this folder" : "Je kunt uploaden naar deze map",
"No compatible server found at {remote}" : "Geen geschikte server gevonden op {remote}",
"Invalid server URL" : "Ongeldig server URL",
@@ -65,6 +69,7 @@
"{actor} shared {file} with {user}" : "{actor} deelde {file} met {user}",
"{actor} removed {user} from {file}" : "{actor} verwijderde {user} van {file}",
"{actor} shared {file} with you" : "{actor} heeft {file} met je gedeeld",
+ "{actor} removed you from the share named {file}" : "{actor} verwijderde je van share {file}",
"A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Een bestand of map gedeeld via mail of publieke link werd <strong>gedownload</strong>",
"A file or folder was shared from <strong>another server</strong>" : "Een bestand of map werd gedeeld vanaf <strong>een andere server</strong>",
"A file or folder has been <strong>shared</strong>" : "Een bestand of map is <strong>gedeeld</strong>",
@@ -83,19 +88,23 @@
"Public upload is only possible for publicly shared folders" : "Publieke upload is alleen mogelijk voor publiek gedeelde mappen",
"Invalid date, date format must be YYYY-MM-DD" : "Ongeldige datum, datumnotatie moet in de vorm YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "Delen van %s mislukte omdat de backend het delen van type %s niet ondersteunt",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Delen %s versturen van het wachtwoord via Nextcloud Talk is mislukt omdat Nextcloud Talk niet is ingeschakeld",
"You cannot share to a Circle if the app is not enabled" : "Je kunt niets met een Kring delen als de app niet is ingeschakeld.",
"Please specify a valid circle" : "Geef een geldige kring op",
+ "Sharing %s failed because the back end does not support room shares" : "Delen van %s mislukte omdat de backend het delen in ruimtes niet ondersteunt",
"Unknown share type" : "Onbekend type gedeelde folder",
"Not a directory" : "Geen directory",
"Could not lock path" : "Kan pad niet blokkeren",
"Wrong or no update parameter given" : "Verkeerde of geen update parameter opgegeven",
"Can't change permissions for public share links" : "Kan rechten voor openbaar gedeelde links niet wijzigen",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Delen versturen van het wachtwoord via Nextcloud Talk is mislukt omdat Nextcloud Talk niet is ingeschakeld",
"Cannot increase permissions" : "Kan de rechten niet verruimen",
"shared by %s" : "Gedeeld door %s",
"Direct link" : "Directe link",
"Add to your Nextcloud" : "Toevoegen aan je Nextcloud",
"Share API is disabled" : "Delen API is uitgeschakeld",
"File sharing" : "Bestand delen",
+ "This application enables users to share files within Nextcloud. If enabled, the admin can choose which groups can share files. The applicable users can then share files and folders with other users and groups within Nextcloud. In addition, if the admin enables the share link feature, an external link can be used to share files with other users outside of Nextcloud. Admins can also enforce passwords, expirations dates, and enable server to server sharing via share links, as well as sharing from mobile devices.\nTurning the feature off removes shared files and folders on the server for all share recipients, and also on the sync clients and mobile apps. More information is available in the Nextcloud Documentation." : "Met deze applicatie kunnen gebruikers bestanden delen binnen Nextcloud. Indien ingeschakeld, kan de beheerder kiezen welke groepen bestanden kunnen delen. De betreffende gebruikers kunnen vervolgens bestanden en mappen delen met andere gebruikers en groepen binnen Nextcloud. Als de beheerder de functie voor het delen van koppelingen inschakelt, kan ook een externe koppeling worden gebruikt om bestanden te delen met andere gebruikers buiten Nextcloud. Beheerders kunnen ook wachtwoorden en vervaldatums afdwingen en delen van server-naar-server mogelijk maken via koppelingslinks en evenals delen vanaf mobiele apparaten.\nAls je de functie uitschakelt, worden gedeelde bestanden en mappen op de server verwijderd voor alle ontvangers van shares, en ook voor de synchronisatieclients en mobiele apps. Meer informatie is beschikbaar in de Nextcloud-documentatie.",
"No entries found in this folder" : "Niets gevonden in deze map",
"Name" : "Naam",
"Share time" : "Deel tijd",
@@ -106,6 +115,7 @@
"the link expired" : "de link is verlopen",
"sharing is disabled" : "delen is uitgeschakeld",
"For more info, please ask the person who sent this link." : "Voor meer informatie, neem contact op met de persoon die u deze link heeft gestuurd.",
+ "Share note" : "Notitie delen",
"Download %s" : "Download %s",
"Upload files to %s" : "Upload bestanden naar %s",
"Select or drop files" : "Selecteer bestanden of sleep ze naar dit venster",
diff --git a/apps/files_sharing/l10n/pl.js b/apps/files_sharing/l10n/pl.js
index f0d3aa31ef8..eae060f5b86 100644
--- a/apps/files_sharing/l10n/pl.js
+++ b/apps/files_sharing/l10n/pl.js
@@ -4,13 +4,23 @@ OC.L10N.register(
"Shared with others" : "Współdzielony z innymi",
"Shared with you" : "Współdzielony z Tobą",
"Shared by link" : "Współdzielony linkiem",
+ "Deleted shares" : "Usunięte udostępnione udziały",
+ "Shares" : "Udziały",
"Nothing shared with you yet" : "Nie masz jeszcze nic udostępnionego",
"Files and folders others share with you will show up here" : "Tutaj wyświetlą się udostępnione dla Ciebie przez innych pliki i foldery",
"Nothing shared yet" : "Jeszcze nic nie udostępniono",
"Files and folders you share will show up here" : "Tutaj pokażą się pliki i foldery, które udostępniasz",
"No shared links" : "Brak udostępnionych linków",
"Files and folders you share by link will show up here" : "Tutaj pokażą się pliki i foldery, które udostępniasz linkiem",
+ "No deleted shares" : "Brak usuniętych udziałów",
+ "Shares you deleted will show up here" : "Udziały usunięte przez Ciebie pojawią się tutaj",
+ "No shares" : "Brak udziałów",
+ "Shares will show up here" : "Udziały pojawią się tutaj",
+ "Restore share" : "Przywróć udział",
+ "Something happened. Unable to restore the share." : "Coś nie tak. Nie można przywrócić udziału.",
+ "Move or copy" : "Przenieś lub kopiuj",
"Download" : "Pobierz",
+ "Delete" : "Usuń",
"You can upload into this folder" : "Możesz przesłać do tego folderu",
"No compatible server found at {remote}" : "Nie znaleziono kompatybilnego serwera na {remote}",
"Invalid server URL" : "Błędny adres serwera",
@@ -61,6 +71,7 @@ OC.L10N.register(
"{actor} shared {file} with {user}" : "{actor} współdzieli {file} z {user}",
"{actor} removed {user} from {file}" : "{actor} usunął użytkownika {user} z {file}",
"{actor} shared {file} with you" : "{actor} udostępnił ci {file}",
+ "{actor} removed you from the share named {file}" : "{actor} usunął Ciebie z udziału o nazwie {file}",
"A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Plik lub folder udostępniony za pomocą maila lub publicznego łącza został <strong>pobrany</strong>",
"A file or folder was shared from <strong>another server</strong>" : "Plik lub folder został udostępniony z <strong>innego serwera</strong>",
"A file or folder has been <strong>shared</strong>" : "Plik lub folder stał się <strong>współdzielony</strong>",
@@ -79,6 +90,7 @@ OC.L10N.register(
"Public upload is only possible for publicly shared folders" : "Publiczne wczytywanie jest możliwe wyłącznie do katalogów publicznych",
"Invalid date, date format must be YYYY-MM-DD" : "Nieprawidłowa data, format daty musi być w formacie YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "Udostępnienie %s nie powiodło się ponieważ backend nie zezwala na udziały typu %s",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Udostępnianie %s wysyłanie hasła przez Nextcloud Talk nie powiodło się, ponieważ usługa Nextcloud Talk nie jest włączona",
"You cannot share to a Circle if the app is not enabled" : "Nie możesz udostępnić do Kręgów jeśli aplikacja jest wyłączona",
"Please specify a valid circle" : "Proszę podać właściwy krąg",
"Unknown share type" : "Nieznany typ udziału",
@@ -86,6 +98,7 @@ OC.L10N.register(
"Could not lock path" : "Nie udało się zablokować ścieżki",
"Wrong or no update parameter given" : "Brakujący lub błędny parametr aktualizacji",
"Can't change permissions for public share links" : "Nie można zmienić uprawnień dla publicznych udziałów",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Udostępnianie %s wysyłanie hasła przez Nextcloud Talk nie powiodło się, ponieważ usługa Nextcloud Talk nie jest włączona",
"Cannot increase permissions" : "Nie można zwiększyć uprawnień",
"shared by %s" : "udostępnione przez %s",
"Direct link" : "Bezpośredni link",
@@ -102,6 +115,7 @@ OC.L10N.register(
"the link expired" : "link wygasł",
"sharing is disabled" : "udostępnianie jest wyłączone",
"For more info, please ask the person who sent this link." : "Aby uzyskać więcej informacji proszę poprosić osobę, która wysłał ten link.",
+ "Share note" : "Notatka udziału",
"Download %s" : "Pobierz %s",
"Upload files to %s" : "Prześlij pliki do %s",
"Select or drop files" : "Wybierz lub upuść pliki",
diff --git a/apps/files_sharing/l10n/pl.json b/apps/files_sharing/l10n/pl.json
index a87e848fb7e..cdf28cbf289 100644
--- a/apps/files_sharing/l10n/pl.json
+++ b/apps/files_sharing/l10n/pl.json
@@ -2,13 +2,23 @@
"Shared with others" : "Współdzielony z innymi",
"Shared with you" : "Współdzielony z Tobą",
"Shared by link" : "Współdzielony linkiem",
+ "Deleted shares" : "Usunięte udostępnione udziały",
+ "Shares" : "Udziały",
"Nothing shared with you yet" : "Nie masz jeszcze nic udostępnionego",
"Files and folders others share with you will show up here" : "Tutaj wyświetlą się udostępnione dla Ciebie przez innych pliki i foldery",
"Nothing shared yet" : "Jeszcze nic nie udostępniono",
"Files and folders you share will show up here" : "Tutaj pokażą się pliki i foldery, które udostępniasz",
"No shared links" : "Brak udostępnionych linków",
"Files and folders you share by link will show up here" : "Tutaj pokażą się pliki i foldery, które udostępniasz linkiem",
+ "No deleted shares" : "Brak usuniętych udziałów",
+ "Shares you deleted will show up here" : "Udziały usunięte przez Ciebie pojawią się tutaj",
+ "No shares" : "Brak udziałów",
+ "Shares will show up here" : "Udziały pojawią się tutaj",
+ "Restore share" : "Przywróć udział",
+ "Something happened. Unable to restore the share." : "Coś nie tak. Nie można przywrócić udziału.",
+ "Move or copy" : "Przenieś lub kopiuj",
"Download" : "Pobierz",
+ "Delete" : "Usuń",
"You can upload into this folder" : "Możesz przesłać do tego folderu",
"No compatible server found at {remote}" : "Nie znaleziono kompatybilnego serwera na {remote}",
"Invalid server URL" : "Błędny adres serwera",
@@ -59,6 +69,7 @@
"{actor} shared {file} with {user}" : "{actor} współdzieli {file} z {user}",
"{actor} removed {user} from {file}" : "{actor} usunął użytkownika {user} z {file}",
"{actor} shared {file} with you" : "{actor} udostępnił ci {file}",
+ "{actor} removed you from the share named {file}" : "{actor} usunął Ciebie z udziału o nazwie {file}",
"A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Plik lub folder udostępniony za pomocą maila lub publicznego łącza został <strong>pobrany</strong>",
"A file or folder was shared from <strong>another server</strong>" : "Plik lub folder został udostępniony z <strong>innego serwera</strong>",
"A file or folder has been <strong>shared</strong>" : "Plik lub folder stał się <strong>współdzielony</strong>",
@@ -77,6 +88,7 @@
"Public upload is only possible for publicly shared folders" : "Publiczne wczytywanie jest możliwe wyłącznie do katalogów publicznych",
"Invalid date, date format must be YYYY-MM-DD" : "Nieprawidłowa data, format daty musi być w formacie YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "Udostępnienie %s nie powiodło się ponieważ backend nie zezwala na udziały typu %s",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Udostępnianie %s wysyłanie hasła przez Nextcloud Talk nie powiodło się, ponieważ usługa Nextcloud Talk nie jest włączona",
"You cannot share to a Circle if the app is not enabled" : "Nie możesz udostępnić do Kręgów jeśli aplikacja jest wyłączona",
"Please specify a valid circle" : "Proszę podać właściwy krąg",
"Unknown share type" : "Nieznany typ udziału",
@@ -84,6 +96,7 @@
"Could not lock path" : "Nie udało się zablokować ścieżki",
"Wrong or no update parameter given" : "Brakujący lub błędny parametr aktualizacji",
"Can't change permissions for public share links" : "Nie można zmienić uprawnień dla publicznych udziałów",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "Udostępnianie %s wysyłanie hasła przez Nextcloud Talk nie powiodło się, ponieważ usługa Nextcloud Talk nie jest włączona",
"Cannot increase permissions" : "Nie można zwiększyć uprawnień",
"shared by %s" : "udostępnione przez %s",
"Direct link" : "Bezpośredni link",
@@ -100,6 +113,7 @@
"the link expired" : "link wygasł",
"sharing is disabled" : "udostępnianie jest wyłączone",
"For more info, please ask the person who sent this link." : "Aby uzyskać więcej informacji proszę poprosić osobę, która wysłał ten link.",
+ "Share note" : "Notatka udziału",
"Download %s" : "Pobierz %s",
"Upload files to %s" : "Prześlij pliki do %s",
"Select or drop files" : "Wybierz lub upuść pliki",
diff --git a/apps/files_sharing/l10n/sk.js b/apps/files_sharing/l10n/sk.js
index 126e8cdba3a..f53ce7f130e 100644
--- a/apps/files_sharing/l10n/sk.js
+++ b/apps/files_sharing/l10n/sk.js
@@ -116,6 +116,7 @@ OC.L10N.register(
"the link expired" : "linke vypršala platnosť",
"sharing is disabled" : "sprístupňovanie je zakázané",
"For more info, please ask the person who sent this link." : "Pre viac informácií kontaktujte osobu, ktorá vám poslala tento odkaz.",
+ "Share note" : "Poznámka k zdieľaniu",
"Download %s" : "Stiahnuť %s",
"Upload files to %s" : "Nahrať súbory do %s",
"Select or drop files" : "Vyberte alebo položte súbory",
diff --git a/apps/files_sharing/l10n/sk.json b/apps/files_sharing/l10n/sk.json
index 7b1191d5904..d3355c59f3f 100644
--- a/apps/files_sharing/l10n/sk.json
+++ b/apps/files_sharing/l10n/sk.json
@@ -114,6 +114,7 @@
"the link expired" : "linke vypršala platnosť",
"sharing is disabled" : "sprístupňovanie je zakázané",
"For more info, please ask the person who sent this link." : "Pre viac informácií kontaktujte osobu, ktorá vám poslala tento odkaz.",
+ "Share note" : "Poznámka k zdieľaniu",
"Download %s" : "Stiahnuť %s",
"Upload files to %s" : "Nahrať súbory do %s",
"Select or drop files" : "Vyberte alebo položte súbory",
diff --git a/apps/files_sharing/l10n/sl.js b/apps/files_sharing/l10n/sl.js
index 303b3a68682..aa9f18b73fb 100644
--- a/apps/files_sharing/l10n/sl.js
+++ b/apps/files_sharing/l10n/sl.js
@@ -1,25 +1,33 @@
OC.L10N.register(
"files_sharing",
{
- "Shared with you" : "V souporabi z vami",
"Shared with others" : "V souporabi z drugimi",
+ "Shared with you" : "V souporabi z vami",
"Shared by link" : "V souporabi prek povezave",
+ "Deleted shares" : "Izbrisane povezave za souporabo",
+ "Shares" : "Souporaba",
"Nothing shared with you yet" : "Datotek drugih uporabnikov še ni v souporabi",
"Files and folders others share with you will show up here" : "Datoteke in mape, katerih souporabo z vami omogočijo drugi, bodo zbrane na tem mestu.",
"Nothing shared yet" : "Souporabe datotek še niste omogočili",
"Files and folders you share will show up here" : "Datoteke in mape, ki ste jih označili za souporabo z drugimi, bodo zbrane na tem mestu.",
"No shared links" : "Ni povezav za souporabo",
"Files and folders you share by link will show up here" : "Datoteke in mape, ki ste jih označili za souporabo prek povezave, bodo zbrane na tem mestu.",
+ "No deleted shares" : "Ni izbrisanih povezav za souporabo.",
+ "No shares" : "Brez souporabe",
+ "Shares will show up here" : "Predmeti v souporabi bodo prikazani na tem mestu.",
+ "Download" : "Prejmi",
"You can upload into this folder" : "V to mapo je dovoljeno poslati datoteke",
"Invalid server URL" : "Neveljaven URL strežnika",
"Share" : "Souporaba",
"No expiration date set" : "Datum poteka ni določen",
"Shared by" : "V souporabi z",
"Sharing" : "Souporaba",
+ "File shares" : "Datoteke v souporabi",
"Downloaded via public link" : "Prejeto preko javne povezave",
"Removed public link" : "Javno povezava je odstranjena",
"Public link expired" : "Javna povezava je potekla",
- "A file or folder was shared from <strong>another server</strong>" : "Souporaba datoteke ali mape <strong>z drugega strežnika</strong> je omogočena.",
+ "A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Datoteko oziroma mapo v souporabi prek elektronske pošte oziroma javne povezave je uporabnik <strong>prejel na svoj krajevni disk</strong>",
+ "A file or folder was shared from <strong>another server</strong>" : "Datoteka ali mapa je bila dodana v souporabo prek <strong>drugega strežnika</strong>",
"A file or folder has been <strong>shared</strong>" : "Za datoteko ali mapo je omogočena <strong>souporaba</strong>.",
"Wrong share ID, share doesn't exist" : "Napačen ID mesta uporabe; mesto ne obstaja!",
"Could not delete share" : "Tega predmeta v souporabi ni mogoče izbrisati.",
@@ -39,7 +47,6 @@ OC.L10N.register(
"Wrong or no update parameter given" : "Parameter posodobitve ni podan ali pa je navedena napačna vrednost",
"Can't change permissions for public share links" : "Za javne povezave souporabe, spreminjanje dovoljenj ni mogoče.",
"Cannot increase permissions" : "Ni mogoče povišati dovoljenj",
- "Download" : "Prejmi",
"Direct link" : "Neposredna povezava",
"Share API is disabled" : "API za souporabo je izključen",
"No entries found in this folder" : "V tej mapi ni najdenih predmetov.",
@@ -55,7 +62,7 @@ OC.L10N.register(
"Upload files to %s" : "Naloži datoteke v %s",
"Select or drop files" : "Izberi ali povleci datoteke",
"Uploading files…" : "Nalaganje datotek...",
- "Uploaded files:" : "Naložene datoteke:",
+ "Uploaded files:" : "Poslane datoteke:",
"This share is password-protected" : "To mesto je zaščiteno z geslom.",
"The password is wrong. Try again." : "Geslo je napačno. Poskusite znova.",
"Password" : "Geslo"
diff --git a/apps/files_sharing/l10n/sl.json b/apps/files_sharing/l10n/sl.json
index 7da4a7ccb93..5137dcecf83 100644
--- a/apps/files_sharing/l10n/sl.json
+++ b/apps/files_sharing/l10n/sl.json
@@ -1,23 +1,31 @@
{ "translations": {
- "Shared with you" : "V souporabi z vami",
"Shared with others" : "V souporabi z drugimi",
+ "Shared with you" : "V souporabi z vami",
"Shared by link" : "V souporabi prek povezave",
+ "Deleted shares" : "Izbrisane povezave za souporabo",
+ "Shares" : "Souporaba",
"Nothing shared with you yet" : "Datotek drugih uporabnikov še ni v souporabi",
"Files and folders others share with you will show up here" : "Datoteke in mape, katerih souporabo z vami omogočijo drugi, bodo zbrane na tem mestu.",
"Nothing shared yet" : "Souporabe datotek še niste omogočili",
"Files and folders you share will show up here" : "Datoteke in mape, ki ste jih označili za souporabo z drugimi, bodo zbrane na tem mestu.",
"No shared links" : "Ni povezav za souporabo",
"Files and folders you share by link will show up here" : "Datoteke in mape, ki ste jih označili za souporabo prek povezave, bodo zbrane na tem mestu.",
+ "No deleted shares" : "Ni izbrisanih povezav za souporabo.",
+ "No shares" : "Brez souporabe",
+ "Shares will show up here" : "Predmeti v souporabi bodo prikazani na tem mestu.",
+ "Download" : "Prejmi",
"You can upload into this folder" : "V to mapo je dovoljeno poslati datoteke",
"Invalid server URL" : "Neveljaven URL strežnika",
"Share" : "Souporaba",
"No expiration date set" : "Datum poteka ni določen",
"Shared by" : "V souporabi z",
"Sharing" : "Souporaba",
+ "File shares" : "Datoteke v souporabi",
"Downloaded via public link" : "Prejeto preko javne povezave",
"Removed public link" : "Javno povezava je odstranjena",
"Public link expired" : "Javna povezava je potekla",
- "A file or folder was shared from <strong>another server</strong>" : "Souporaba datoteke ali mape <strong>z drugega strežnika</strong> je omogočena.",
+ "A file or folder shared by mail or by public link was <strong>downloaded</strong>" : "Datoteko oziroma mapo v souporabi prek elektronske pošte oziroma javne povezave je uporabnik <strong>prejel na svoj krajevni disk</strong>",
+ "A file or folder was shared from <strong>another server</strong>" : "Datoteka ali mapa je bila dodana v souporabo prek <strong>drugega strežnika</strong>",
"A file or folder has been <strong>shared</strong>" : "Za datoteko ali mapo je omogočena <strong>souporaba</strong>.",
"Wrong share ID, share doesn't exist" : "Napačen ID mesta uporabe; mesto ne obstaja!",
"Could not delete share" : "Tega predmeta v souporabi ni mogoče izbrisati.",
@@ -37,7 +45,6 @@
"Wrong or no update parameter given" : "Parameter posodobitve ni podan ali pa je navedena napačna vrednost",
"Can't change permissions for public share links" : "Za javne povezave souporabe, spreminjanje dovoljenj ni mogoče.",
"Cannot increase permissions" : "Ni mogoče povišati dovoljenj",
- "Download" : "Prejmi",
"Direct link" : "Neposredna povezava",
"Share API is disabled" : "API za souporabo je izključen",
"No entries found in this folder" : "V tej mapi ni najdenih predmetov.",
@@ -53,7 +60,7 @@
"Upload files to %s" : "Naloži datoteke v %s",
"Select or drop files" : "Izberi ali povleci datoteke",
"Uploading files…" : "Nalaganje datotek...",
- "Uploaded files:" : "Naložene datoteke:",
+ "Uploaded files:" : "Poslane datoteke:",
"This share is password-protected" : "To mesto je zaščiteno z geslom.",
"The password is wrong. Try again." : "Geslo je napačno. Poskusite znova.",
"Password" : "Geslo"
diff --git a/apps/files_sharing/l10n/zh_CN.js b/apps/files_sharing/l10n/zh_CN.js
index 40d47da0872..c7f4570287c 100644
--- a/apps/files_sharing/l10n/zh_CN.js
+++ b/apps/files_sharing/l10n/zh_CN.js
@@ -2,15 +2,25 @@ OC.L10N.register(
"files_sharing",
{
"Shared with others" : "您分享的文件",
- "Shared with you" : "收到分享",
+ "Shared with you" : "收到的分享",
"Shared by link" : "分享链接的文件",
+ "Deleted shares" : "已删除的分享",
+ "Shares" : "分享",
"Nothing shared with you yet" : "您还没有收到任何共享的文件",
"Files and folders others share with you will show up here" : "其它人共享给您的文件和文件夹将显示在这里",
"Nothing shared yet" : "还没有共享过文件",
"Files and folders you share will show up here" : "您共享的文件和文件夹将显示在这里",
"No shared links" : "无分享链接",
"Files and folders you share by link will show up here" : "您通过链接共享的文件和文件夹将显示在这里",
+ "No deleted shares" : "没有删除的分享",
+ "Shares you deleted will show up here" : "您删除的分享将在这里显示",
+ "No shares" : "没有分享",
+ "Shares will show up here" : "分享将在这里显示",
+ "Restore share" : "恢复分享",
+ "Something happened. Unable to restore the share." : "发生了问题. 无法恢复该分享.",
+ "Move or copy" : "移动或复制",
"Download" : "下载",
+ "Delete" : "删除",
"You can upload into this folder" : "您可以上传文件至此文件夹",
"No compatible server found at {remote}" : " {remote} 未发现匹配的服务器",
"Invalid server URL" : "无效的服务器地址",
@@ -79,13 +89,16 @@ OC.L10N.register(
"Public upload is only possible for publicly shared folders" : "公共上传仅适用于公共共享文件夹",
"Invalid date, date format must be YYYY-MM-DD" : "无效的日期,日期格式必须是 YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "共享 %s 失败,后端不允许共享 %s 类型",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "由于 Nextcloud Talk 没有启用, 所以通过 Nextcloud Talk 发送 %s 分享密码失败.",
"You cannot share to a Circle if the app is not enabled" : "如果这个应用程序不可用,你不能分享到圈子",
"Please specify a valid circle" : "请指明一个可用圈子",
+ "Sharing %s failed because the back end does not support room shares" : "由于后端不支持房间分享, 所以分享 %s 失败.",
"Unknown share type" : "未知共享类型",
"Not a directory" : "不是一个目录",
"Could not lock path" : "无法锁定路径",
"Wrong or no update parameter given" : "错误或没有更新参数给出",
"Can't change permissions for public share links" : "不能改变公共分享链接权限",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "由于 Nextcloud Talk 没有启用, 所以通过 Nextcloud Talk 发送分享密码失败.",
"Cannot increase permissions" : "不能增加权限",
"shared by %s" : "共享者 %s",
"Direct link" : "直接链接",
@@ -102,6 +115,7 @@ OC.L10N.register(
"the link expired" : "链接过期",
"sharing is disabled" : "已禁用共享",
"For more info, please ask the person who sent this link." : "欲知详情,请联系发给你链接的人。",
+ "Share note" : "分享笔记",
"Download %s" : "下载 %s",
"Upload files to %s" : "上传文件到 %s",
"Select or drop files" : "选择或删除文件",
diff --git a/apps/files_sharing/l10n/zh_CN.json b/apps/files_sharing/l10n/zh_CN.json
index d43abd7ef45..50c5d0509b3 100644
--- a/apps/files_sharing/l10n/zh_CN.json
+++ b/apps/files_sharing/l10n/zh_CN.json
@@ -1,14 +1,24 @@
{ "translations": {
"Shared with others" : "您分享的文件",
- "Shared with you" : "收到分享",
+ "Shared with you" : "收到的分享",
"Shared by link" : "分享链接的文件",
+ "Deleted shares" : "已删除的分享",
+ "Shares" : "分享",
"Nothing shared with you yet" : "您还没有收到任何共享的文件",
"Files and folders others share with you will show up here" : "其它人共享给您的文件和文件夹将显示在这里",
"Nothing shared yet" : "还没有共享过文件",
"Files and folders you share will show up here" : "您共享的文件和文件夹将显示在这里",
"No shared links" : "无分享链接",
"Files and folders you share by link will show up here" : "您通过链接共享的文件和文件夹将显示在这里",
+ "No deleted shares" : "没有删除的分享",
+ "Shares you deleted will show up here" : "您删除的分享将在这里显示",
+ "No shares" : "没有分享",
+ "Shares will show up here" : "分享将在这里显示",
+ "Restore share" : "恢复分享",
+ "Something happened. Unable to restore the share." : "发生了问题. 无法恢复该分享.",
+ "Move or copy" : "移动或复制",
"Download" : "下载",
+ "Delete" : "删除",
"You can upload into this folder" : "您可以上传文件至此文件夹",
"No compatible server found at {remote}" : " {remote} 未发现匹配的服务器",
"Invalid server URL" : "无效的服务器地址",
@@ -77,13 +87,16 @@
"Public upload is only possible for publicly shared folders" : "公共上传仅适用于公共共享文件夹",
"Invalid date, date format must be YYYY-MM-DD" : "无效的日期,日期格式必须是 YYYY-MM-DD",
"Sharing %s failed because the back end does not allow shares from type %s" : "共享 %s 失败,后端不允许共享 %s 类型",
+ "Sharing %s sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "由于 Nextcloud Talk 没有启用, 所以通过 Nextcloud Talk 发送 %s 分享密码失败.",
"You cannot share to a Circle if the app is not enabled" : "如果这个应用程序不可用,你不能分享到圈子",
"Please specify a valid circle" : "请指明一个可用圈子",
+ "Sharing %s failed because the back end does not support room shares" : "由于后端不支持房间分享, 所以分享 %s 失败.",
"Unknown share type" : "未知共享类型",
"Not a directory" : "不是一个目录",
"Could not lock path" : "无法锁定路径",
"Wrong or no update parameter given" : "错误或没有更新参数给出",
"Can't change permissions for public share links" : "不能改变公共分享链接权限",
+ "Sharing sending the password by Nextcloud Talk failed because Nextcloud Talk is not enabled" : "由于 Nextcloud Talk 没有启用, 所以通过 Nextcloud Talk 发送分享密码失败.",
"Cannot increase permissions" : "不能增加权限",
"shared by %s" : "共享者 %s",
"Direct link" : "直接链接",
@@ -100,6 +113,7 @@
"the link expired" : "链接过期",
"sharing is disabled" : "已禁用共享",
"For more info, please ask the person who sent this link." : "欲知详情,请联系发给你链接的人。",
+ "Share note" : "分享笔记",
"Download %s" : "下载 %s",
"Upload files to %s" : "上传文件到 %s",
"Select or drop files" : "选择或删除文件",
diff --git a/apps/files_sharing/lib/Cache.php b/apps/files_sharing/lib/Cache.php
index 352001ecbd4..f3712ead58b 100644
--- a/apps/files_sharing/lib/Cache.php
+++ b/apps/files_sharing/lib/Cache.php
@@ -142,7 +142,7 @@ class Cache extends CacheJail {
} else {
$entry['path'] = $path;
}
- $sharePermissions = $this->storage->getPermissions($path);
+ $sharePermissions = $this->storage->getPermissions($entry['path']);
if (isset($entry['permissions'])) {
$entry['permissions'] &= $sharePermissions;
} else {
diff --git a/apps/files_sharing/lib/SharedStorage.php b/apps/files_sharing/lib/SharedStorage.php
index 2d2f14fc554..34a21fcd637 100644
--- a/apps/files_sharing/lib/SharedStorage.php
+++ b/apps/files_sharing/lib/SharedStorage.php
@@ -195,7 +195,8 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
if (!$this->isValid()) {
return 0;
}
- $permissions = $this->superShare->getPermissions();
+ $permissions = parent::getPermissions($target) & $this->superShare->getPermissions();
+
// part files and the mount point always have delete permissions
if ($target === '' || pathinfo($target, PATHINFO_EXTENSION) === 'part') {
$permissions |= \OCP\Constants::PERMISSION_DELETE;
@@ -257,11 +258,17 @@ class SharedStorage extends \OC\Files\Storage\Wrapper\Jail implements ISharedSto
case 'xb':
case 'a':
case 'ab':
- $creatable = $this->isCreatable($path);
+ $creatable = $this->isCreatable(dirname($path));
$updatable = $this->isUpdatable($path);
// if neither permissions given, no need to continue
if (!$creatable && !$updatable) {
- return false;
+ if (pathinfo($path, PATHINFO_EXTENSION) === 'part') {
+ $updatable = $this->isUpdatable(dirname($path));
+ }
+
+ if (!$updatable) {
+ return false;
+ }
}
$exists = $this->file_exists($path);
diff --git a/apps/files_sharing/tests/PermissionsTest.php b/apps/files_sharing/tests/PermissionsTest.php
index 2eca474e966..5c0086646de 100644
--- a/apps/files_sharing/tests/PermissionsTest.php
+++ b/apps/files_sharing/tests/PermissionsTest.php
@@ -134,14 +134,14 @@ class PermissionsTest extends TestCase {
* Test that the permissions of shared directory are returned correctly
*/
function testGetPermissions() {
- $sharedDirPerms = $this->sharedStorage->getPermissions('shareddir');
+ $sharedDirPerms = $this->sharedStorage->getPermissions('');
$this->assertEquals(31, $sharedDirPerms);
- $sharedDirPerms = $this->sharedStorage->getPermissions('shareddir/textfile.txt');
- $this->assertEquals(31, $sharedDirPerms);
- $sharedDirRestrictedPerms = $this->sharedStorageRestrictedShare->getPermissions('shareddirrestricted');
- $this->assertEquals(7, $sharedDirRestrictedPerms);
- $sharedDirRestrictedPerms = $this->sharedStorageRestrictedShare->getPermissions('shareddirrestricted/textfile.txt');
- $this->assertEquals(7, $sharedDirRestrictedPerms);
+ $sharedDirPerms = $this->sharedStorage->getPermissions('textfile.txt');
+ $this->assertEquals(27, $sharedDirPerms);
+ $sharedDirRestrictedPerms = $this->sharedStorageRestrictedShare->getPermissions('');
+ $this->assertEquals(15, $sharedDirRestrictedPerms);
+ $sharedDirRestrictedPerms = $this->sharedStorageRestrictedShare->getPermissions('textfile1.txt');
+ $this->assertEquals(3, $sharedDirRestrictedPerms);
}
/**
diff --git a/apps/files_trashbin/l10n/bg.js b/apps/files_trashbin/l10n/bg.js
index e21523b6627..a213ea709e6 100644
--- a/apps/files_trashbin/l10n/bg.js
+++ b/apps/files_trashbin/l10n/bg.js
@@ -2,7 +2,7 @@ OC.L10N.register(
"files_trashbin",
{
"Couldn't delete %s permanently" : "Неуспешно безвъзвратно изтриване на %s.",
- "Couldn't restore %s" : "Неуспешно възтановяване на %s.",
+ "Couldn't restore %s" : "Неуспешно възстановяване на %s",
"Deleted files" : "Изтрити файлове",
"Restore" : "Възстановяне",
"Delete" : "Изтрий",
diff --git a/apps/files_trashbin/l10n/bg.json b/apps/files_trashbin/l10n/bg.json
index ee5a21463cb..aed093392b7 100644
--- a/apps/files_trashbin/l10n/bg.json
+++ b/apps/files_trashbin/l10n/bg.json
@@ -1,6 +1,6 @@
{ "translations": {
"Couldn't delete %s permanently" : "Неуспешно безвъзвратно изтриване на %s.",
- "Couldn't restore %s" : "Неуспешно възтановяване на %s.",
+ "Couldn't restore %s" : "Неуспешно възстановяване на %s",
"Deleted files" : "Изтрити файлове",
"Restore" : "Възстановяне",
"Delete" : "Изтрий",
diff --git a/apps/files_trashbin/l10n/cs.js b/apps/files_trashbin/l10n/cs.js
index a507fa94590..ca9b1b0fd40 100644
--- a/apps/files_trashbin/l10n/cs.js
+++ b/apps/files_trashbin/l10n/cs.js
@@ -1,17 +1,18 @@
OC.L10N.register(
"files_trashbin",
{
- "Couldn't delete %s permanently" : "Nelze trvale odstranit %s",
- "Couldn't restore %s" : "Nelze obnovit %s",
+ "Couldn't delete %s permanently" : "%s se nedaří natrvalo smazat",
+ "Couldn't restore %s" : "%s se nedaří obnovit",
"Deleted files" : "Odstraněné soubory",
"Restore" : "Obnovit",
"Delete" : "Smazat",
"Delete permanently" : "Trvale odstranit",
"Error" : "Chyba",
"This operation is forbidden" : "Tato operace je zakázána",
- "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte prosím logy nebo kontaktujte svého správce systému",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte záznamy událostí nebo se obraťte na správce",
"restored" : "obnoveno",
"This application enables users to restore files that were deleted from the system." : "Tato aplikace umožňuje uživatelům obnovovat soubory, které byly ze systému smazány.",
+ "This application enables users to restore files that were deleted from the system. It displays a list of deleted files in the web interface, and has options to restore those deleted files back to the users file directories or remove them permanently from the system. Restoring a file also restores related file versions, if the versions application is enabled. When a file is deleted from a share, it can be restored in the same manner, though it is no longer shared. By default, these files remain in the trash bin for 30 days.\nTo prevent a user from running out of disk space, the Deleted files app will not utilize more than 50% of the currently available free quota for deleted files. If the deleted files exceed this limit, the app deletes the oldest files until it gets below this limit. More information is available in the Deleted Files documentation." : "Tato aplikace uživatelům umožňuje obnovovat soubory, které byly ze systému vymazány. Zobrazí seznam smazaných souborů ve webovém rozhraní a má volby pro obnovení těchto smazaných souborů zpět do adresářů se soubory uživatelů nebo jejich odebrání natrvalo. Obnovení souboru také obnoví související verze souboru, pokud je zapnutá aplikace verzování. Když je soubor smazán ze sdílení, je možné ho obnovit stejným způsobem, ačkoli už není sdílený. Ve výchozím stavu, tyto soubory jsou ponechávány v koši po dobu 30 dnů.\nAby uživatelé nezaplnili celý disk, aplikace Smazané soubory nevyužije více než 50% kvóty pro smazané soubory. Pokud smazané soubory přesahují tento limit, aplikace smaže nejstarší soubory, dokud se nedostane pod limit. Více informací je k dispozici v dokumentaci ke Smazané soubory.",
"No deleted files" : "Žádné smazané soubory",
"You will be able to recover deleted files from here" : "Odtud budete moci obnovovat odstraněné soubory",
"No entries found in this folder" : "V této složce nebylo nic nalezeno",
diff --git a/apps/files_trashbin/l10n/cs.json b/apps/files_trashbin/l10n/cs.json
index 008a55e6e3a..8ab42980625 100644
--- a/apps/files_trashbin/l10n/cs.json
+++ b/apps/files_trashbin/l10n/cs.json
@@ -1,15 +1,16 @@
{ "translations": {
- "Couldn't delete %s permanently" : "Nelze trvale odstranit %s",
- "Couldn't restore %s" : "Nelze obnovit %s",
+ "Couldn't delete %s permanently" : "%s se nedaří natrvalo smazat",
+ "Couldn't restore %s" : "%s se nedaří obnovit",
"Deleted files" : "Odstraněné soubory",
"Restore" : "Obnovit",
"Delete" : "Smazat",
"Delete permanently" : "Trvale odstranit",
"Error" : "Chyba",
"This operation is forbidden" : "Tato operace je zakázána",
- "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte prosím logy nebo kontaktujte svého správce systému",
+ "This directory is unavailable, please check the logs or contact the administrator" : "Tento adresář není dostupný, zkontrolujte záznamy událostí nebo se obraťte na správce",
"restored" : "obnoveno",
"This application enables users to restore files that were deleted from the system." : "Tato aplikace umožňuje uživatelům obnovovat soubory, které byly ze systému smazány.",
+ "This application enables users to restore files that were deleted from the system. It displays a list of deleted files in the web interface, and has options to restore those deleted files back to the users file directories or remove them permanently from the system. Restoring a file also restores related file versions, if the versions application is enabled. When a file is deleted from a share, it can be restored in the same manner, though it is no longer shared. By default, these files remain in the trash bin for 30 days.\nTo prevent a user from running out of disk space, the Deleted files app will not utilize more than 50% of the currently available free quota for deleted files. If the deleted files exceed this limit, the app deletes the oldest files until it gets below this limit. More information is available in the Deleted Files documentation." : "Tato aplikace uživatelům umožňuje obnovovat soubory, které byly ze systému vymazány. Zobrazí seznam smazaných souborů ve webovém rozhraní a má volby pro obnovení těchto smazaných souborů zpět do adresářů se soubory uživatelů nebo jejich odebrání natrvalo. Obnovení souboru také obnoví související verze souboru, pokud je zapnutá aplikace verzování. Když je soubor smazán ze sdílení, je možné ho obnovit stejným způsobem, ačkoli už není sdílený. Ve výchozím stavu, tyto soubory jsou ponechávány v koši po dobu 30 dnů.\nAby uživatelé nezaplnili celý disk, aplikace Smazané soubory nevyužije více než 50% kvóty pro smazané soubory. Pokud smazané soubory přesahují tento limit, aplikace smaže nejstarší soubory, dokud se nedostane pod limit. Více informací je k dispozici v dokumentaci ke Smazané soubory.",
"No deleted files" : "Žádné smazané soubory",
"You will be able to recover deleted files from here" : "Odtud budete moci obnovovat odstraněné soubory",
"No entries found in this folder" : "V této složce nebylo nic nalezeno",
diff --git a/apps/files_trashbin/l10n/el.js b/apps/files_trashbin/l10n/el.js
index d63dc09c745..f29346267d7 100644
--- a/apps/files_trashbin/l10n/el.js
+++ b/apps/files_trashbin/l10n/el.js
@@ -16,6 +16,7 @@ OC.L10N.register(
"No entries found in this folder" : "Δεν βρέθηκαν καταχωρήσεις σε αυτόν το φάκελο",
"Select all" : "Επιλογή όλων",
"Name" : "Όνομα",
+ "Actions" : "Ενέργειες",
"Deleted" : "Διαγραμμένα"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_trashbin/l10n/el.json b/apps/files_trashbin/l10n/el.json
index 5d0ad857d35..086675773cd 100644
--- a/apps/files_trashbin/l10n/el.json
+++ b/apps/files_trashbin/l10n/el.json
@@ -14,6 +14,7 @@
"No entries found in this folder" : "Δεν βρέθηκαν καταχωρήσεις σε αυτόν το φάκελο",
"Select all" : "Επιλογή όλων",
"Name" : "Όνομα",
+ "Actions" : "Ενέργειες",
"Deleted" : "Διαγραμμένα"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files_trashbin/l10n/fi.js b/apps/files_trashbin/l10n/fi.js
index cadb0f58213..e2beb06699d 100644
--- a/apps/files_trashbin/l10n/fi.js
+++ b/apps/files_trashbin/l10n/fi.js
@@ -11,6 +11,7 @@ OC.L10N.register(
"This operation is forbidden" : "Tämä toiminto on kielletty",
"This directory is unavailable, please check the logs or contact the administrator" : "Hakemisto ei ole käytettävissä. Tarkista lokit tai ole yhteydessä ylläpitoon.",
"restored" : "palautettu",
+ "This application enables users to restore files that were deleted from the system." : "Tämä sovellus mahdollistaa käyttäjien palauttaa järjestelmästä poistamiaan tiedostoja.",
"No deleted files" : "Ei poistettuja tiedostoja",
"You will be able to recover deleted files from here" : "Voit palauttaa poistettuja tiedostoja tätä kautta",
"No entries found in this folder" : "Ei kohteita tässä kansiossa",
diff --git a/apps/files_trashbin/l10n/fi.json b/apps/files_trashbin/l10n/fi.json
index 470f28dfe85..2fe9a020a07 100644
--- a/apps/files_trashbin/l10n/fi.json
+++ b/apps/files_trashbin/l10n/fi.json
@@ -9,6 +9,7 @@
"This operation is forbidden" : "Tämä toiminto on kielletty",
"This directory is unavailable, please check the logs or contact the administrator" : "Hakemisto ei ole käytettävissä. Tarkista lokit tai ole yhteydessä ylläpitoon.",
"restored" : "palautettu",
+ "This application enables users to restore files that were deleted from the system." : "Tämä sovellus mahdollistaa käyttäjien palauttaa järjestelmästä poistamiaan tiedostoja.",
"No deleted files" : "Ei poistettuja tiedostoja",
"You will be able to recover deleted files from here" : "Voit palauttaa poistettuja tiedostoja tätä kautta",
"No entries found in this folder" : "Ei kohteita tässä kansiossa",
diff --git a/apps/files_trashbin/l10n/nl.js b/apps/files_trashbin/l10n/nl.js
index e5d4c0d846e..dc47d7ad9f7 100644
--- a/apps/files_trashbin/l10n/nl.js
+++ b/apps/files_trashbin/l10n/nl.js
@@ -11,8 +11,10 @@ OC.L10N.register(
"This operation is forbidden" : "Deze taak is verboden",
"This directory is unavailable, please check the logs or contact the administrator" : "Deze map is niet beschikbaar. Verifieer de logs of neem contact op met de beheerder",
"restored" : "hersteld",
+ "This application enables users to restore files that were deleted from the system." : "Deze applicatie stelt gebruikers in staat om verwijderde bestanden te herstellen.",
+ "This application enables users to restore files that were deleted from the system. It displays a list of deleted files in the web interface, and has options to restore those deleted files back to the users file directories or remove them permanently from the system. Restoring a file also restores related file versions, if the versions application is enabled. When a file is deleted from a share, it can be restored in the same manner, though it is no longer shared. By default, these files remain in the trash bin for 30 days.\nTo prevent a user from running out of disk space, the Deleted files app will not utilize more than 50% of the currently available free quota for deleted files. If the deleted files exceed this limit, the app deletes the oldest files until it gets below this limit. More information is available in the Deleted Files documentation." : "Met deze applicatie kunnen gebruikers bestanden herstellen die uit het systeem zijn verwijderd. Het toont in de webinterface een lijst met verwijderde bestanden en heeft opties om die verwijderde bestanden terug te zetten naar de bestandsmappen van de gebruikers of ze permanent uit het systeem te verwijderen. Het herstellen van een bestand herstelt ook gerelateerde bestandsversies, als de versiebeheer-applicatie is ingeschakeld. Wanneer een bestand uit een share wordt verwijderd, kan het op dezelfde manier worden hersteld, hoewel het niet langer wordt gedeeld. Standaard blijven deze bestanden 30 dagen in de prullenbak staan.\nOm te voorkomen dat een gebruiker onvoldoende schijfruimte heeft, gebruikt de app Verwijderde bestanden niet meer dan 50% van de momenteel beschikbare vrije quota voor verwijderde bestanden. Als de verwijderde bestanden deze limiet overschrijden, verwijdert de app de oudste bestanden totdat deze de limiet is bereikt. Meer informatie is beschikbaar in de documentatie voor Verwijderde bestanden.",
"No deleted files" : "Geen verwijderde bestanden",
- "You will be able to recover deleted files from here" : "Je kunt verwijderde bestanden hier vandaan weer terugzetten",
+ "You will be able to recover deleted files from here" : "Van hieruit kun je verwijderde bestanden terugzetten",
"No entries found in this folder" : "Niets gevonden in deze map",
"Select all" : "Alles selecteren",
"Name" : "Naam",
diff --git a/apps/files_trashbin/l10n/nl.json b/apps/files_trashbin/l10n/nl.json
index eda32da6ee3..223b5c6c04f 100644
--- a/apps/files_trashbin/l10n/nl.json
+++ b/apps/files_trashbin/l10n/nl.json
@@ -9,8 +9,10 @@
"This operation is forbidden" : "Deze taak is verboden",
"This directory is unavailable, please check the logs or contact the administrator" : "Deze map is niet beschikbaar. Verifieer de logs of neem contact op met de beheerder",
"restored" : "hersteld",
+ "This application enables users to restore files that were deleted from the system." : "Deze applicatie stelt gebruikers in staat om verwijderde bestanden te herstellen.",
+ "This application enables users to restore files that were deleted from the system. It displays a list of deleted files in the web interface, and has options to restore those deleted files back to the users file directories or remove them permanently from the system. Restoring a file also restores related file versions, if the versions application is enabled. When a file is deleted from a share, it can be restored in the same manner, though it is no longer shared. By default, these files remain in the trash bin for 30 days.\nTo prevent a user from running out of disk space, the Deleted files app will not utilize more than 50% of the currently available free quota for deleted files. If the deleted files exceed this limit, the app deletes the oldest files until it gets below this limit. More information is available in the Deleted Files documentation." : "Met deze applicatie kunnen gebruikers bestanden herstellen die uit het systeem zijn verwijderd. Het toont in de webinterface een lijst met verwijderde bestanden en heeft opties om die verwijderde bestanden terug te zetten naar de bestandsmappen van de gebruikers of ze permanent uit het systeem te verwijderen. Het herstellen van een bestand herstelt ook gerelateerde bestandsversies, als de versiebeheer-applicatie is ingeschakeld. Wanneer een bestand uit een share wordt verwijderd, kan het op dezelfde manier worden hersteld, hoewel het niet langer wordt gedeeld. Standaard blijven deze bestanden 30 dagen in de prullenbak staan.\nOm te voorkomen dat een gebruiker onvoldoende schijfruimte heeft, gebruikt de app Verwijderde bestanden niet meer dan 50% van de momenteel beschikbare vrije quota voor verwijderde bestanden. Als de verwijderde bestanden deze limiet overschrijden, verwijdert de app de oudste bestanden totdat deze de limiet is bereikt. Meer informatie is beschikbaar in de documentatie voor Verwijderde bestanden.",
"No deleted files" : "Geen verwijderde bestanden",
- "You will be able to recover deleted files from here" : "Je kunt verwijderde bestanden hier vandaan weer terugzetten",
+ "You will be able to recover deleted files from here" : "Van hieruit kun je verwijderde bestanden terugzetten",
"No entries found in this folder" : "Niets gevonden in deze map",
"Select all" : "Alles selecteren",
"Name" : "Naam",
diff --git a/apps/files_trashbin/l10n/pl.js b/apps/files_trashbin/l10n/pl.js
index c085230c252..7e6f4d53e5f 100644
--- a/apps/files_trashbin/l10n/pl.js
+++ b/apps/files_trashbin/l10n/pl.js
@@ -11,11 +11,14 @@ OC.L10N.register(
"This operation is forbidden" : "Ta operacja jest niedozwolona",
"This directory is unavailable, please check the logs or contact the administrator" : "Ten folder jest niedostępny, proszę sprawdzić logi lub skontaktować się z administratorem.",
"restored" : "przywrócony",
+ "This application enables users to restore files that were deleted from the system." : "Ta aplikacja pozwala użytkownikom na przywracanie usuniętych plików z systemu.",
+ "This application enables users to restore files that were deleted from the system. It displays a list of deleted files in the web interface, and has options to restore those deleted files back to the users file directories or remove them permanently from the system. Restoring a file also restores related file versions, if the versions application is enabled. When a file is deleted from a share, it can be restored in the same manner, though it is no longer shared. By default, these files remain in the trash bin for 30 days.\nTo prevent a user from running out of disk space, the Deleted files app will not utilize more than 50% of the currently available free quota for deleted files. If the deleted files exceed this limit, the app deletes the oldest files until it gets below this limit. More information is available in the Deleted Files documentation." : "Ta aplikacja umożliwia przywracanie plików usuniętych z systemu. Wyświetla listę usuniętych plików w interfejsie www i posiada opcje przywracania usuniętych plików z powrotem do katalogów plików użytkowników lub usuwania ich na stałe z systemu. Przywracanie pliku przywraca także powiązane wersje plików, jeśli aplikacja versions jest włączona. Gdy plik zostanie usunięty z udziału, może zostać przywrócony w ten sam sposób, chociaż nie będzie wówczas udostępniony. Domyślnie pliki te pozostają w koszu przez 30 dni. Aby zapobiec brakowi miejsca na dysku przez użytkownika, aplikacja \"Usunięte pliki\" nie będzie wykorzystywać więcej niż 50% dostępnego obecnie wolnego limitu dla usuniętych plików. Jeśli usunięte pliki przekroczą ten limit, aplikacja usuwa najstarsze pliki, dopóki nie osiągnie tego limitu. Więcej informacji można znaleźć w dokumentacji aplikacji.",
"No deleted files" : "Brak skasowanych plików",
"You will be able to recover deleted files from here" : "Możesz stąd przywrócić skasowane pliki",
"No entries found in this folder" : "Brak wpisów w tym folderze",
"Select all" : "Wybierz wszystko",
"Name" : "Nazwa",
+ "Actions" : "Akcje",
"Deleted" : "Usunięte"
},
"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);");
diff --git a/apps/files_trashbin/l10n/pl.json b/apps/files_trashbin/l10n/pl.json
index 85e913f83a0..d8965374915 100644
--- a/apps/files_trashbin/l10n/pl.json
+++ b/apps/files_trashbin/l10n/pl.json
@@ -9,11 +9,14 @@
"This operation is forbidden" : "Ta operacja jest niedozwolona",
"This directory is unavailable, please check the logs or contact the administrator" : "Ten folder jest niedostępny, proszę sprawdzić logi lub skontaktować się z administratorem.",
"restored" : "przywrócony",
+ "This application enables users to restore files that were deleted from the system." : "Ta aplikacja pozwala użytkownikom na przywracanie usuniętych plików z systemu.",
+ "This application enables users to restore files that were deleted from the system. It displays a list of deleted files in the web interface, and has options to restore those deleted files back to the users file directories or remove them permanently from the system. Restoring a file also restores related file versions, if the versions application is enabled. When a file is deleted from a share, it can be restored in the same manner, though it is no longer shared. By default, these files remain in the trash bin for 30 days.\nTo prevent a user from running out of disk space, the Deleted files app will not utilize more than 50% of the currently available free quota for deleted files. If the deleted files exceed this limit, the app deletes the oldest files until it gets below this limit. More information is available in the Deleted Files documentation." : "Ta aplikacja umożliwia przywracanie plików usuniętych z systemu. Wyświetla listę usuniętych plików w interfejsie www i posiada opcje przywracania usuniętych plików z powrotem do katalogów plików użytkowników lub usuwania ich na stałe z systemu. Przywracanie pliku przywraca także powiązane wersje plików, jeśli aplikacja versions jest włączona. Gdy plik zostanie usunięty z udziału, może zostać przywrócony w ten sam sposób, chociaż nie będzie wówczas udostępniony. Domyślnie pliki te pozostają w koszu przez 30 dni. Aby zapobiec brakowi miejsca na dysku przez użytkownika, aplikacja \"Usunięte pliki\" nie będzie wykorzystywać więcej niż 50% dostępnego obecnie wolnego limitu dla usuniętych plików. Jeśli usunięte pliki przekroczą ten limit, aplikacja usuwa najstarsze pliki, dopóki nie osiągnie tego limitu. Więcej informacji można znaleźć w dokumentacji aplikacji.",
"No deleted files" : "Brak skasowanych plików",
"You will be able to recover deleted files from here" : "Możesz stąd przywrócić skasowane pliki",
"No entries found in this folder" : "Brak wpisów w tym folderze",
"Select all" : "Wybierz wszystko",
"Name" : "Nazwa",
+ "Actions" : "Akcje",
"Deleted" : "Usunięte"
},"pluralForm" :"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"
} \ No newline at end of file
diff --git a/apps/files_trashbin/l10n/sl.js b/apps/files_trashbin/l10n/sl.js
index 21482af3e12..913f0ec8763 100644
--- a/apps/files_trashbin/l10n/sl.js
+++ b/apps/files_trashbin/l10n/sl.js
@@ -2,11 +2,11 @@ OC.L10N.register(
"files_trashbin",
{
"Couldn't delete %s permanently" : "Datoteke %s ni mogoče trajno izbrisati.",
- "Couldn't restore %s" : "Ni mogoče obnoviti %s",
+ "Couldn't restore %s" : "Datoteke %s ni mogoče obnoviti.",
"Deleted files" : "Izbrisane datoteke",
"Restore" : "Obnovi",
"Delete" : "Izbriši",
- "Delete permanently" : "Izbriši dokončno",
+ "Delete permanently" : "Trajno izbriši",
"Error" : "Napaka",
"This operation is forbidden" : "To dejanje ni dovoljeno!",
"This directory is unavailable, please check the logs or contact the administrator" : "Mapa ni na voljo. Preverite dnevnik in stopite v stik s skrbnikom sistema.",
@@ -14,8 +14,9 @@ OC.L10N.register(
"No deleted files" : "Ni izbrisanih datotek",
"You will be able to recover deleted files from here" : "Izbrisane datoteke je mogoče povrniti na tem mestu",
"No entries found in this folder" : "V tej mapi ni najdenih predmetov.",
- "Select all" : "izberi vse",
+ "Select all" : "Izberi vse",
"Name" : "Ime",
+ "Actions" : "Dejanja",
"Deleted" : "Izbrisano"
},
"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);");
diff --git a/apps/files_trashbin/l10n/sl.json b/apps/files_trashbin/l10n/sl.json
index 4eee41e0c82..4bb0cbdffee 100644
--- a/apps/files_trashbin/l10n/sl.json
+++ b/apps/files_trashbin/l10n/sl.json
@@ -1,10 +1,10 @@
{ "translations": {
"Couldn't delete %s permanently" : "Datoteke %s ni mogoče trajno izbrisati.",
- "Couldn't restore %s" : "Ni mogoče obnoviti %s",
+ "Couldn't restore %s" : "Datoteke %s ni mogoče obnoviti.",
"Deleted files" : "Izbrisane datoteke",
"Restore" : "Obnovi",
"Delete" : "Izbriši",
- "Delete permanently" : "Izbriši dokončno",
+ "Delete permanently" : "Trajno izbriši",
"Error" : "Napaka",
"This operation is forbidden" : "To dejanje ni dovoljeno!",
"This directory is unavailable, please check the logs or contact the administrator" : "Mapa ni na voljo. Preverite dnevnik in stopite v stik s skrbnikom sistema.",
@@ -12,8 +12,9 @@
"No deleted files" : "Ni izbrisanih datotek",
"You will be able to recover deleted files from here" : "Izbrisane datoteke je mogoče povrniti na tem mestu",
"No entries found in this folder" : "V tej mapi ni najdenih predmetov.",
- "Select all" : "izberi vse",
+ "Select all" : "Izberi vse",
"Name" : "Ime",
+ "Actions" : "Dejanja",
"Deleted" : "Izbrisano"
},"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"
} \ No newline at end of file
diff --git a/apps/files_versions/l10n/cs.js b/apps/files_versions/l10n/cs.js
index 3a5afe8e27c..48c1505fab1 100644
--- a/apps/files_versions/l10n/cs.js
+++ b/apps/files_versions/l10n/cs.js
@@ -3,11 +3,13 @@ OC.L10N.register(
{
"Could not revert: %s" : "Nelze vrátit: %s",
"Versions" : "Verze",
- "Failed to revert {file} to revision {timestamp}." : "Selhalo vrácení souboru {file} na verzi {timestamp}.",
+ "Failed to revert {file} to revision {timestamp}." : "Nepodařilo se vrátit {file} na verzi {timestamp}.",
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajty","%n bajtů","%n bajtů"],
"Restore" : "Obnovit",
"No earlier versions available" : "Nejsou dostupné dřívější verze",
"More versions …" : "Více verzí…",
- "This application automatically maintains older versions of files that are changed." : "Tato aplikace automaticky uchovává starší verze souborů, které se mění."
+ "This application automatically maintains older versions of files that are changed." : "Tato aplikace automaticky uchovává starší verze souborů, které se mění.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\n\t\tIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Tato aplikace automaticky udržuje starší verze souborů, které se změnily. Když je zapnutá, je v každém adresáři uživatele vytvořena složka pro skryté verze a do ní jsou ukládány staré verze souborů. Uživatel se kdykoli může vrátit ke starším verzím prostřednictvím webového rozhraní s tím, že sám nahrazovaný soubor se stane verzí. Aplikace automaticky zpravuje složku s verzemi aby bylo zajištěno, že uživatel kvůli starým verzím nevyčerpá svou kvótu.\n\t\tKrom expirace verzí, aplikace Verze zajišťuje, že nikdy nepoužije více než 50% volného prostoru, který má uživatel k dispozici. Pokud uložené verze přesáhnout tento limit, aplikace smaže nejstarší verze, aby se do tohoto limitu vešla. Více informací je k dispozici v dokumentaci k aplikaci Verze.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\nIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Tato aplikace automaticky udržuje starší verze souborů, které se změnily. Když je zapnutá, je v každém adresáři uživatele vytvořena složka pro skryté verze a do ní jsou ukládány staré verze souborů. Uživatel se kdykoli může vrátit ke starším verzím prostřednictvím webového rozhraní s tím, že sám nahrazovaný soubor se stane verzí. Aplikace automaticky zpravuje složku s verzemi aby bylo zajištěno, že uživatel kvůli starým verzím nevyčerpá svou kvótu.\n\t\tKrom expirace verzí, aplikace Verze zajišťuje, že nikdy nepoužije více než 50% volného prostoru, který má uživatel k dispozici. Pokud uložené verze přesáhnout tento limit, aplikace smaže nejstarší verze, aby se do tohoto limitu vešla. Více informací je k dispozici v dokumentaci k aplikaci Verze."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/files_versions/l10n/cs.json b/apps/files_versions/l10n/cs.json
index 87a50da766a..e4a8ad6aee9 100644
--- a/apps/files_versions/l10n/cs.json
+++ b/apps/files_versions/l10n/cs.json
@@ -1,11 +1,13 @@
{ "translations": {
"Could not revert: %s" : "Nelze vrátit: %s",
"Versions" : "Verze",
- "Failed to revert {file} to revision {timestamp}." : "Selhalo vrácení souboru {file} na verzi {timestamp}.",
+ "Failed to revert {file} to revision {timestamp}." : "Nepodařilo se vrátit {file} na verzi {timestamp}.",
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajty","%n bajtů","%n bajtů"],
"Restore" : "Obnovit",
"No earlier versions available" : "Nejsou dostupné dřívější verze",
"More versions …" : "Více verzí…",
- "This application automatically maintains older versions of files that are changed." : "Tato aplikace automaticky uchovává starší verze souborů, které se mění."
+ "This application automatically maintains older versions of files that are changed." : "Tato aplikace automaticky uchovává starší verze souborů, které se mění.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\n\t\tIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Tato aplikace automaticky udržuje starší verze souborů, které se změnily. Když je zapnutá, je v každém adresáři uživatele vytvořena složka pro skryté verze a do ní jsou ukládány staré verze souborů. Uživatel se kdykoli může vrátit ke starším verzím prostřednictvím webového rozhraní s tím, že sám nahrazovaný soubor se stane verzí. Aplikace automaticky zpravuje složku s verzemi aby bylo zajištěno, že uživatel kvůli starým verzím nevyčerpá svou kvótu.\n\t\tKrom expirace verzí, aplikace Verze zajišťuje, že nikdy nepoužije více než 50% volného prostoru, který má uživatel k dispozici. Pokud uložené verze přesáhnout tento limit, aplikace smaže nejstarší verze, aby se do tohoto limitu vešla. Více informací je k dispozici v dokumentaci k aplikaci Verze.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\nIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Tato aplikace automaticky udržuje starší verze souborů, které se změnily. Když je zapnutá, je v každém adresáři uživatele vytvořena složka pro skryté verze a do ní jsou ukládány staré verze souborů. Uživatel se kdykoli může vrátit ke starším verzím prostřednictvím webového rozhraní s tím, že sám nahrazovaný soubor se stane verzí. Aplikace automaticky zpravuje složku s verzemi aby bylo zajištěno, že uživatel kvůli starým verzím nevyčerpá svou kvótu.\n\t\tKrom expirace verzí, aplikace Verze zajišťuje, že nikdy nepoužije více než 50% volného prostoru, který má uživatel k dispozici. Pokud uložené verze přesáhnout tento limit, aplikace smaže nejstarší verze, aby se do tohoto limitu vešla. Více informací je k dispozici v dokumentaci k aplikaci Verze."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/files_versions/l10n/nl.js b/apps/files_versions/l10n/nl.js
index 83f2de4b365..9abfb274b9b 100644
--- a/apps/files_versions/l10n/nl.js
+++ b/apps/files_versions/l10n/nl.js
@@ -7,6 +7,9 @@ OC.L10N.register(
"_%n byte_::_%n bytes_" : ["%n byte","%n bytes"],
"Restore" : "Herstellen",
"No earlier versions available" : "Geen oudere versies beschikbaar",
- "More versions …" : "Meer versies..."
+ "More versions …" : "Meer versies...",
+ "This application automatically maintains older versions of files that are changed." : "Deze applicatie beheert automatisch oudere versies van gewijzigde bestanden.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\n\t\tIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Deze applicatie onderhoudt automatisch oudere versies van bestanden die zijn gewijzigd. Indien ingeschakeld, wordt een map met verborgen versies geplaatst in de directory van elke gebruiker en wordt deze gebruikt om oude bestandsversies op te slaan. Een gebruiker kan via de webinterface op elk gewenst moment terugkeren naar een oudere versie, waarbij het vervangen bestand de nieuwe versie wordt. De app beheert automatisch de map om ervoor te zorgen dat het quotum niet opraakt vanwege versiebeheer.\n\t\tNaast het beheer van versies, zorgt de app er ook voor dat nooit meer dan 50% van de momenteel beschikbare vrije ruimte van de gebruiker wordt gebruikt. Als opgeslagen versies deze limiet overschrijden, verwijdert de app de oudste versies eerst totdat de limiet is bereikt. Meer informatie is beschikbaar in de documentatie van Versiebeheer.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\nIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Deze applicatie onderhoudt automatisch oudere versies van bestanden die zijn gewijzigd. Indien ingeschakeld, wordt een map met verborgen versies ingericht in de directory van elke gebruiker en wordt deze gebruikt om oude versies van bestanden op te slaan. Een gebruiker kan via de webinterface op elk gewenst moment terugkeren naar een oudere versie, waarbij het vervangende bestand de nieuwe versie wordt. De app beheert automatisch de map om ervoor te zorgen dat het gebruikersquotum niet opraakt door het versiebeheer.\nNaast het beheren van de vervaltermijnen van de versies, zorgt de versiebeheer-app er voor dat nooit meer dan 50% van de momenteel beschikbare vrije ruimte van de gebruiker wordt gebruikt. Als opgeslagen versies deze limiet overschrijden, verwijdert de app de oudste versies eerst totdat deze de limiet is bereikt. Meer informatie is beschikbaar in de documentatie van Versiebeheer."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/files_versions/l10n/nl.json b/apps/files_versions/l10n/nl.json
index 59554c81316..98cd6d83d58 100644
--- a/apps/files_versions/l10n/nl.json
+++ b/apps/files_versions/l10n/nl.json
@@ -5,6 +5,9 @@
"_%n byte_::_%n bytes_" : ["%n byte","%n bytes"],
"Restore" : "Herstellen",
"No earlier versions available" : "Geen oudere versies beschikbaar",
- "More versions …" : "Meer versies..."
+ "More versions …" : "Meer versies...",
+ "This application automatically maintains older versions of files that are changed." : "Deze applicatie beheert automatisch oudere versies van gewijzigde bestanden.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\n\t\tIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Deze applicatie onderhoudt automatisch oudere versies van bestanden die zijn gewijzigd. Indien ingeschakeld, wordt een map met verborgen versies geplaatst in de directory van elke gebruiker en wordt deze gebruikt om oude bestandsversies op te slaan. Een gebruiker kan via de webinterface op elk gewenst moment terugkeren naar een oudere versie, waarbij het vervangen bestand de nieuwe versie wordt. De app beheert automatisch de map om ervoor te zorgen dat het quotum niet opraakt vanwege versiebeheer.\n\t\tNaast het beheer van versies, zorgt de app er ook voor dat nooit meer dan 50% van de momenteel beschikbare vrije ruimte van de gebruiker wordt gebruikt. Als opgeslagen versies deze limiet overschrijden, verwijdert de app de oudste versies eerst totdat de limiet is bereikt. Meer informatie is beschikbaar in de documentatie van Versiebeheer.",
+ "This application automatically maintains older versions of files that are changed. When enabled, a hidden versions folder is provisioned in every user’s directory and is used to store old file versions. A user can revert to an older version through the web interface at any time, with the replaced file becoming a version. The app automatically manages the versions folder to ensure the user doesn’t run out of Quota because of versions.\nIn addition to the expiry of versions, the versions app makes certain never to use more than 50% of the user’s currently available free space. If stored versions exceed this limit, the app will delete the oldest versions first until it meets this limit. More information is available in the Versions documentation." : "Deze applicatie onderhoudt automatisch oudere versies van bestanden die zijn gewijzigd. Indien ingeschakeld, wordt een map met verborgen versies ingericht in de directory van elke gebruiker en wordt deze gebruikt om oude versies van bestanden op te slaan. Een gebruiker kan via de webinterface op elk gewenst moment terugkeren naar een oudere versie, waarbij het vervangende bestand de nieuwe versie wordt. De app beheert automatisch de map om ervoor te zorgen dat het gebruikersquotum niet opraakt door het versiebeheer.\nNaast het beheren van de vervaltermijnen van de versies, zorgt de versiebeheer-app er voor dat nooit meer dan 50% van de momenteel beschikbare vrije ruimte van de gebruiker wordt gebruikt. Als opgeslagen versies deze limiet overschrijden, verwijdert de app de oudste versies eerst totdat deze de limiet is bereikt. Meer informatie is beschikbaar in de documentatie van Versiebeheer."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/files_versions/l10n/sl.js b/apps/files_versions/l10n/sl.js
index 0f045d82eba..2acd2b002c8 100644
--- a/apps/files_versions/l10n/sl.js
+++ b/apps/files_versions/l10n/sl.js
@@ -4,9 +4,9 @@ OC.L10N.register(
"Could not revert: %s" : "Ni mogoče povrniti: %s",
"Versions" : "Različice",
"Failed to revert {file} to revision {timestamp}." : "Povrnitev datoteke {file} na različico {timestamp} je spodletelo.",
- "_%n byte_::_%n bytes_" : ["%n byte","%n byte-a","%n byte-i","%n byte-ov"],
+ "_%n byte_::_%n bytes_" : ["%n bajt","%n bajta","%n bajti","%n bajtov"],
"Restore" : "Obnovi",
- "No earlier versions available" : "Ni starejših različic",
+ "No earlier versions available" : "Ni starejših različic tega dokumenta.",
"More versions …" : "Več različic ..."
},
"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);");
diff --git a/apps/files_versions/l10n/sl.json b/apps/files_versions/l10n/sl.json
index e0be7ad6098..b2323490266 100644
--- a/apps/files_versions/l10n/sl.json
+++ b/apps/files_versions/l10n/sl.json
@@ -2,9 +2,9 @@
"Could not revert: %s" : "Ni mogoče povrniti: %s",
"Versions" : "Različice",
"Failed to revert {file} to revision {timestamp}." : "Povrnitev datoteke {file} na različico {timestamp} je spodletelo.",
- "_%n byte_::_%n bytes_" : ["%n byte","%n byte-a","%n byte-i","%n byte-ov"],
+ "_%n byte_::_%n bytes_" : ["%n bajt","%n bajta","%n bajti","%n bajtov"],
"Restore" : "Obnovi",
- "No earlier versions available" : "Ni starejših različic",
+ "No earlier versions available" : "Ni starejših različic tega dokumenta.",
"More versions …" : "Več različic ..."
},"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"
} \ No newline at end of file
diff --git a/apps/files_versions/l10n/zh_CN.js b/apps/files_versions/l10n/zh_CN.js
index cc269e58af6..a06eee417ca 100644
--- a/apps/files_versions/l10n/zh_CN.js
+++ b/apps/files_versions/l10n/zh_CN.js
@@ -7,6 +7,7 @@ OC.L10N.register(
"_%n byte_::_%n bytes_" : ["%n 比特"],
"Restore" : "恢复",
"No earlier versions available" : "无可用的更早的版本",
- "More versions …" : "更多版本…"
+ "More versions …" : "更多版本…",
+ "This application automatically maintains older versions of files that are changed." : "此应用程序自动维护更改的旧版本文件。"
},
"nplurals=1; plural=0;");
diff --git a/apps/files_versions/l10n/zh_CN.json b/apps/files_versions/l10n/zh_CN.json
index 89e4d02c9c6..e36c70f03d9 100644
--- a/apps/files_versions/l10n/zh_CN.json
+++ b/apps/files_versions/l10n/zh_CN.json
@@ -5,6 +5,7 @@
"_%n byte_::_%n bytes_" : ["%n 比特"],
"Restore" : "恢复",
"No earlier versions available" : "无可用的更早的版本",
- "More versions …" : "更多版本…"
+ "More versions …" : "更多版本…",
+ "This application automatically maintains older versions of files that are changed." : "此应用程序自动维护更改的旧版本文件。"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/apps/oauth2/l10n/cs.js b/apps/oauth2/l10n/cs.js
index e260be6a877..3ab385e94cd 100644
--- a/apps/oauth2/l10n/cs.js
+++ b/apps/oauth2/l10n/cs.js
@@ -1,8 +1,10 @@
OC.L10N.register(
"oauth2",
{
- "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "URL pro přesměrování musí být uvedeno celé, např. https://yourdomain.com/path",
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "URL adresu přesměrování je třeba uvádět celou, např. https://yourdomain.com/umisteni",
"OAuth 2.0" : "OAuth 2.0",
+ "Allows OAuth2 compatible authentication from other web applications." : "Umožní ověřování kompatibilní s OAuth2 z ostatních webových aplikací.",
+ "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "Aplikace OAuth2 umožňuje správcům nastavit vestavěný postup ověřování tak, aby podporoval také OAuth2 kompatibilní ověřování z ostatních webových aplikací.",
"OAuth 2.0 clients" : "OAuth 2.0 klienti",
"Name" : "Název",
"Client Identifier" : "Identifikátor klienta",
diff --git a/apps/oauth2/l10n/cs.json b/apps/oauth2/l10n/cs.json
index e2e4fe21f70..8a1ed5c8e52 100644
--- a/apps/oauth2/l10n/cs.json
+++ b/apps/oauth2/l10n/cs.json
@@ -1,6 +1,8 @@
{ "translations": {
- "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "URL pro přesměrování musí být uvedeno celé, např. https://yourdomain.com/path",
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "URL adresu přesměrování je třeba uvádět celou, např. https://yourdomain.com/umisteni",
"OAuth 2.0" : "OAuth 2.0",
+ "Allows OAuth2 compatible authentication from other web applications." : "Umožní ověřování kompatibilní s OAuth2 z ostatních webových aplikací.",
+ "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "Aplikace OAuth2 umožňuje správcům nastavit vestavěný postup ověřování tak, aby podporoval také OAuth2 kompatibilní ověřování z ostatních webových aplikací.",
"OAuth 2.0 clients" : "OAuth 2.0 klienti",
"Name" : "Název",
"Client Identifier" : "Identifikátor klienta",
diff --git a/apps/oauth2/l10n/ko.js b/apps/oauth2/l10n/ko.js
index c4d2b0be24d..e5366d4b18b 100644
--- a/apps/oauth2/l10n/ko.js
+++ b/apps/oauth2/l10n/ko.js
@@ -1,6 +1,7 @@
OC.L10N.register(
"oauth2",
{
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "리다이렉트 URL은 예시와 같이 완전한 URL으로 이루어져야 합니다. 예시: https://yourdomain.com/path",
"OAuth 2.0 clients" : "OAuth 2.0 클라이언트",
"Name" : "이름",
"Client Identifier" : "클라이언트 식별자",
diff --git a/apps/oauth2/l10n/ko.json b/apps/oauth2/l10n/ko.json
index e9cda5608e0..829e4667f80 100644
--- a/apps/oauth2/l10n/ko.json
+++ b/apps/oauth2/l10n/ko.json
@@ -1,4 +1,5 @@
{ "translations": {
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "리다이렉트 URL은 예시와 같이 완전한 URL으로 이루어져야 합니다. 예시: https://yourdomain.com/path",
"OAuth 2.0 clients" : "OAuth 2.0 클라이언트",
"Name" : "이름",
"Client Identifier" : "클라이언트 식별자",
diff --git a/apps/oauth2/l10n/nl.js b/apps/oauth2/l10n/nl.js
index 930dfe7841b..ed9c5a41930 100644
--- a/apps/oauth2/l10n/nl.js
+++ b/apps/oauth2/l10n/nl.js
@@ -3,6 +3,8 @@ OC.L10N.register(
{
"Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Je doorverwijzings-URL moet een volledige URL zijn, bijvoorbeeld: https://jouwdomein.com/pad",
"OAuth 2.0" : "OAuth 2.0",
+ "Allows OAuth2 compatible authentication from other web applications." : "Staat OAuth2 compatible authenticatie vanaf andere web applicaties toe.",
+ "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "De OAuth2 app laat beheerders de ingebouwde inlog-workflow configureren om ook OAuth2 compatible authenticatie vanaf andere web applicaties mogelijk te maken.",
"OAuth 2.0 clients" : "OAuth 2.0 Clients",
"Name" : "Naam",
"Client Identifier" : "Client identificatie",
diff --git a/apps/oauth2/l10n/nl.json b/apps/oauth2/l10n/nl.json
index 9c84e8b3f24..64d44b4f134 100644
--- a/apps/oauth2/l10n/nl.json
+++ b/apps/oauth2/l10n/nl.json
@@ -1,6 +1,8 @@
{ "translations": {
"Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Je doorverwijzings-URL moet een volledige URL zijn, bijvoorbeeld: https://jouwdomein.com/pad",
"OAuth 2.0" : "OAuth 2.0",
+ "Allows OAuth2 compatible authentication from other web applications." : "Staat OAuth2 compatible authenticatie vanaf andere web applicaties toe.",
+ "The OAuth2 app allows administrators to configure the built-in authentication workflow to also allow OAuth2 compatible authentication from other web applications." : "De OAuth2 app laat beheerders de ingebouwde inlog-workflow configureren om ook OAuth2 compatible authenticatie vanaf andere web applicaties mogelijk te maken.",
"OAuth 2.0 clients" : "OAuth 2.0 Clients",
"Name" : "Naam",
"Client Identifier" : "Client identificatie",
diff --git a/apps/oauth2/l10n/pl.js b/apps/oauth2/l10n/pl.js
index 0b7aa7c5386..aceb6c17c23 100644
--- a/apps/oauth2/l10n/pl.js
+++ b/apps/oauth2/l10n/pl.js
@@ -1,6 +1,7 @@
OC.L10N.register(
"oauth2",
{
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Adres przekierowania musi być pełnym adresem URL, np.: https://twojadomena.com/sciezka",
"OAuth 2.0" : "OAuth 2.0",
"OAuth 2.0 clients" : "Klienci OAuth 2.0",
"Name" : "Nazwa",
diff --git a/apps/oauth2/l10n/pl.json b/apps/oauth2/l10n/pl.json
index 5ca434bb8fd..e354419dac3 100644
--- a/apps/oauth2/l10n/pl.json
+++ b/apps/oauth2/l10n/pl.json
@@ -1,4 +1,5 @@
{ "translations": {
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Adres przekierowania musi być pełnym adresem URL, np.: https://twojadomena.com/sciezka",
"OAuth 2.0" : "OAuth 2.0",
"OAuth 2.0 clients" : "Klienci OAuth 2.0",
"Name" : "Nazwa",
diff --git a/apps/oauth2/l10n/sk.js b/apps/oauth2/l10n/sk.js
index 35a0fe00b13..5d916f78963 100644
--- a/apps/oauth2/l10n/sk.js
+++ b/apps/oauth2/l10n/sk.js
@@ -1,7 +1,9 @@
OC.L10N.register(
"oauth2",
{
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Vaša URL pre presmerovanie musí byť úplná. Napríklad: https://yourdomain.com/path",
"OAuth 2.0" : "OAuth 2.0",
+ "Allows OAuth2 compatible authentication from other web applications." : "Povoliť overenie kompatibilné s OAuth2 iných webových aplikácií.",
"OAuth 2.0 clients" : "klienti OAuth 2.0",
"Name" : "Názov",
"Client Identifier" : "Identifikátor klienta",
diff --git a/apps/oauth2/l10n/sk.json b/apps/oauth2/l10n/sk.json
index f745a19c12d..52e39c67908 100644
--- a/apps/oauth2/l10n/sk.json
+++ b/apps/oauth2/l10n/sk.json
@@ -1,5 +1,7 @@
{ "translations": {
+ "Your redirect URL needs to be a full URL for example: https://yourdomain.com/path" : "Vaša URL pre presmerovanie musí byť úplná. Napríklad: https://yourdomain.com/path",
"OAuth 2.0" : "OAuth 2.0",
+ "Allows OAuth2 compatible authentication from other web applications." : "Povoliť overenie kompatibilné s OAuth2 iných webových aplikácií.",
"OAuth 2.0 clients" : "klienti OAuth 2.0",
"Name" : "Názov",
"Client Identifier" : "Identifikátor klienta",
diff --git a/apps/oauth2/lib/Controller/SettingsController.php b/apps/oauth2/lib/Controller/SettingsController.php
index 499969b93bb..ecf3179e1bc 100644
--- a/apps/oauth2/lib/Controller/SettingsController.php
+++ b/apps/oauth2/lib/Controller/SettingsController.php
@@ -74,7 +74,7 @@ class SettingsController extends Controller {
public function addClient(string $name,
string $redirectUri): JSONResponse {
- if (filter_var($redirectUri, FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED|FILTER_FLAG_HOST_REQUIRED) === false) {
+ if (filter_var($redirectUri, FILTER_VALIDATE_URL) === false) {
return new JSONResponse(['message' => $this->l->t('Your redirect URL needs to be a full URL for example: https://yourdomain.com/path')], Http::STATUS_BAD_REQUEST);
}
diff --git a/apps/oauth2/package-lock.json b/apps/oauth2/package-lock.json
index 4c3b2aa100f..7c011933bc5 100644
--- a/apps/oauth2/package-lock.json
+++ b/apps/oauth2/package-lock.json
@@ -5,9 +5,9 @@
"requires": true,
"dependencies": {
"@vue/component-compiler-utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-2.1.0.tgz",
- "integrity": "sha512-CEAYcnQsO42aKnIOQdzTLonpa936Tl8sJSHciMzNgy/p+tvqycjwK9Knm6vUrkVE/fWV2NVcNWI+fmvUPxkxWQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-2.2.0.tgz",
+ "integrity": "sha512-pS4zlcdD7BvedyB+IfiTfrbi6C977UMIfulSk8r6uL0BU46ZE2+fUj/zbSNSfVxeaj9ElmnSni5OMwF9np+b+w==",
"dev": true,
"requires": {
"consolidate": "^0.15.1",
@@ -16,208 +16,204 @@
"merge-source-map": "^1.1.0",
"postcss": "^6.0.20",
"postcss-selector-parser": "^3.1.1",
- "prettier": "^1.13.7",
+ "prettier": "1.13.7",
"source-map": "^0.5.6",
"vue-template-es2015-compiler": "^1.6.0"
}
},
"@webassemblyjs/ast": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.13.tgz",
- "integrity": "sha512-49nwvW/Hx9i+OYHg+mRhKZfAlqThr11Dqz8TsrvqGKMhdI2ijy3KBJOun2Z4770TPjrIJhR6KxChQIDaz8clDA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.6.tgz",
+ "integrity": "sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ==",
"dev": true,
"requires": {
- "@webassemblyjs/helper-module-context": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/wast-parser": "1.5.13",
- "debug": "^3.1.0",
+ "@webassemblyjs/helper-module-context": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/wast-parser": "1.7.6",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/floating-point-hex-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.13.tgz",
- "integrity": "sha512-vrvvB18Kh4uyghSKb0NTv+2WZx871WL2NzwMj61jcq2bXkyhRC+8Q0oD7JGVf0+5i/fKQYQSBCNMMsDMRVAMqA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz",
+ "integrity": "sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA==",
"dev": true
},
"@webassemblyjs/helper-api-error": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.13.tgz",
- "integrity": "sha512-dBh2CWYqjaDlvMmRP/kudxpdh30uXjIbpkLj9HQe+qtYlwvYjPRjdQXrq1cTAAOUSMTtzqbXIxEdEZmyKfcwsg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz",
+ "integrity": "sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg==",
"dev": true
},
"@webassemblyjs/helper-buffer": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.13.tgz",
- "integrity": "sha512-v7igWf1mHcpJNbn4m7e77XOAWXCDT76Xe7Is1VQFXc4K5jRcFrl9D0NrqM4XifQ0bXiuTSkTKMYqDxu5MhNljA==",
- "dev": true,
- "requires": {
- "debug": "^3.1.0"
- }
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz",
+ "integrity": "sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw==",
+ "dev": true
},
"@webassemblyjs/helper-code-frame": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.13.tgz",
- "integrity": "sha512-yN6ScQQDFCiAXnVctdVO/J5NQRbwyTbQzsGzEgXsAnrxhjp0xihh+nNHQTMrq5UhOqTb5LykpJAvEv9AT0jnAQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz",
+ "integrity": "sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg==",
"dev": true,
"requires": {
- "@webassemblyjs/wast-printer": "1.5.13"
+ "@webassemblyjs/wast-printer": "1.7.6"
}
},
"@webassemblyjs/helper-fsm": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.13.tgz",
- "integrity": "sha512-hSIKzbXjVMRvy3Jzhgu+vDd/aswJ+UMEnLRCkZDdknZO3Z9e6rp1DAs0tdLItjCFqkz9+0BeOPK/mk3eYvVzZg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz",
+ "integrity": "sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw==",
"dev": true
},
"@webassemblyjs/helper-module-context": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.13.tgz",
- "integrity": "sha512-zxJXULGPLB7r+k+wIlvGlXpT4CYppRz8fLUM/xobGHc9Z3T6qlmJD9ySJ2jknuktuuiR9AjnNpKYDECyaiX+QQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz",
+ "integrity": "sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw==",
"dev": true,
"requires": {
- "debug": "^3.1.0",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.13.tgz",
- "integrity": "sha512-0n3SoNGLvbJIZPhtMFq0XmmnA/YmQBXaZKQZcW8maGKwLpVcgjNrxpFZHEOLKjXJYVN5Il8vSfG7nRX50Zn+aw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz",
+ "integrity": "sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q==",
"dev": true
},
"@webassemblyjs/helper-wasm-section": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.13.tgz",
- "integrity": "sha512-IJ/goicOZ5TT1axZFSnlAtz4m8KEjYr12BNOANAwGFPKXM4byEDaMNXYowHMG0yKV9a397eU/NlibFaLwr1fbw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz",
+ "integrity": "sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "debug": "^3.1.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6"
}
},
"@webassemblyjs/ieee754": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.13.tgz",
- "integrity": "sha512-TseswvXEPpG5TCBKoLx9tT7+/GMACjC1ruo09j46ULRZWYm8XHpDWaosOjTnI7kr4SRJFzA6MWoUkAB+YCGKKg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz",
+ "integrity": "sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ==",
"dev": true,
"requires": {
- "ieee754": "^1.1.11"
+ "@xtuc/ieee754": "^1.2.0"
}
},
"@webassemblyjs/leb128": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.13.tgz",
- "integrity": "sha512-0NRMxrL+GG3eISGZBmLBLAVjphbN8Si15s7jzThaw1UE9e5BY1oH49/+MA1xBzxpf1OW5sf9OrPDOclk9wj2yg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.6.tgz",
+ "integrity": "sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ==",
"dev": true,
"requires": {
- "long": "4.0.0"
- },
- "dependencies": {
- "long": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
- "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==",
- "dev": true
- }
+ "@xtuc/long": "4.2.1"
}
},
"@webassemblyjs/utf8": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.5.13.tgz",
- "integrity": "sha512-Ve1ilU2N48Ew0lVGB8FqY7V7hXjaC4+PeZM+vDYxEd+R2iQ0q+Wb3Rw8v0Ri0+rxhoz6gVGsnQNb4FjRiEH/Ng==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.6.tgz",
+ "integrity": "sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw==",
"dev": true
},
"@webassemblyjs/wasm-edit": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.13.tgz",
- "integrity": "sha512-X7ZNW4+Hga4f2NmqENnHke2V/mGYK/xnybJSIXImt1ulxbCOEs/A+ZK/Km2jgihjyVxp/0z0hwIcxC6PrkWtgw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/helper-wasm-section": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "@webassemblyjs/wasm-opt": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
- "@webassemblyjs/wast-printer": "1.5.13",
- "debug": "^3.1.0"
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz",
+ "integrity": "sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg==",
+ "dev": true,
+ "requires": {
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/helper-wasm-section": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6",
+ "@webassemblyjs/wasm-opt": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6",
+ "@webassemblyjs/wast-printer": "1.7.6"
}
},
"@webassemblyjs/wasm-gen": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.13.tgz",
- "integrity": "sha512-yfv94Se8R73zmr8GAYzezFHc3lDwE/lBXQddSiIZEKZFuqy7yWtm3KMwA1uGbv5G1WphimJxboXHR80IgX1hQA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz",
+ "integrity": "sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/ieee754": "1.5.13",
- "@webassemblyjs/leb128": "1.5.13",
- "@webassemblyjs/utf8": "1.5.13"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/ieee754": "1.7.6",
+ "@webassemblyjs/leb128": "1.7.6",
+ "@webassemblyjs/utf8": "1.7.6"
}
},
"@webassemblyjs/wasm-opt": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.13.tgz",
- "integrity": "sha512-IkXSkgzVhQ0QYAdIayuCWMmXSYx0dHGU8Ah/AxJf1gBvstMWVnzJnBwLsXLyD87VSBIcsqkmZ28dVb0mOC3oBg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz",
+ "integrity": "sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
- "debug": "^3.1.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6"
}
},
"@webassemblyjs/wasm-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.13.tgz",
- "integrity": "sha512-XnYoIcu2iqq8/LrtmdnN3T+bRjqYFjRHqWbqK3osD/0r/Fcv4d9ecRzjVtC29ENEuNTK4mQ9yyxCBCbK8S/cpg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz",
+ "integrity": "sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-api-error": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/ieee754": "1.5.13",
- "@webassemblyjs/leb128": "1.5.13",
- "@webassemblyjs/utf8": "1.5.13"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-api-error": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/ieee754": "1.7.6",
+ "@webassemblyjs/leb128": "1.7.6",
+ "@webassemblyjs/utf8": "1.7.6"
}
},
"@webassemblyjs/wast-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.13.tgz",
- "integrity": "sha512-Lbz65T0LQ1LgzKiUytl34CwuhMNhaCLgrh0JW4rJBN6INnBB8NMwUfQM+FxTnLY9qJ+lHJL/gCM5xYhB9oWi4A==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz",
+ "integrity": "sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/floating-point-hex-parser": "1.5.13",
- "@webassemblyjs/helper-api-error": "1.5.13",
- "@webassemblyjs/helper-code-frame": "1.5.13",
- "@webassemblyjs/helper-fsm": "1.5.13",
- "long": "^3.2.0",
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/floating-point-hex-parser": "1.7.6",
+ "@webassemblyjs/helper-api-error": "1.7.6",
+ "@webassemblyjs/helper-code-frame": "1.7.6",
+ "@webassemblyjs/helper-fsm": "1.7.6",
+ "@xtuc/long": "4.2.1",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/wast-printer": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.13.tgz",
- "integrity": "sha512-QcwogrdqcBh8Z+eUF8SG+ag5iwQSXxQJELBEHmLkk790wgQgnIMmntT2sMAMw53GiFNckArf5X0bsCA44j3lWQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz",
+ "integrity": "sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/wast-parser": "1.5.13",
- "long": "^3.2.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/wast-parser": "1.7.6",
+ "@xtuc/long": "4.2.1"
}
},
+ "@xtuc/ieee754": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
+ "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
+ "dev": true
+ },
+ "@xtuc/long": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz",
+ "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==",
+ "dev": true
+ },
"acorn": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz",
- "integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==",
+ "version": "5.7.3",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
+ "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
"dev": true
},
"acorn-dynamic-import": {
@@ -247,12 +243,6 @@
"integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=",
"dev": true
},
- "ansi-escapes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
- "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
- "dev": true
- },
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
@@ -454,9 +444,9 @@
"dev": true
},
"binary-extensions": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
- "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz",
+ "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==",
"dev": true
},
"bluebird": {
@@ -518,7 +508,7 @@
},
"browserify-aes": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
"requires": {
@@ -555,7 +545,7 @@
},
"browserify-rsa": {
"version": "4.0.1",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
+ "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
"dev": true,
"requires": {
@@ -673,12 +663,6 @@
"supports-color": "^2.0.0"
}
},
- "chardet": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.5.0.tgz",
- "integrity": "sha512-9ZTaoBaePSCFvNlNGrsyI8ZVACP2svUtq0DkM7t4K2ClAa96sqOIRjAzDTc8zXzFt1cZR46rRzLTiHFSJ+Qw0g==",
- "dev": true
- },
"chokidar": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz",
@@ -701,9 +685,9 @@
}
},
"chownr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
- "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz",
+ "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==",
"dev": true
},
"chrome-trace-event": {
@@ -748,21 +732,6 @@
}
}
},
- "cli-cursor": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
- "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
- "dev": true,
- "requires": {
- "restore-cursor": "^2.0.0"
- }
- },
- "cli-width": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
- "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
- "dev": true
- },
"cliui": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
@@ -920,7 +889,7 @@
},
"create-hash": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"dev": true,
"requires": {
@@ -933,7 +902,7 @@
},
"create-hmac": {
"version": "1.1.7",
- "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"dev": true,
"requires": {
@@ -1108,7 +1077,7 @@
},
"diffie-hellman": {
"version": "5.0.3",
- "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
"requires": {
@@ -1248,31 +1217,18 @@
}
},
"execa": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
- "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz",
+ "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==",
"dev": true,
"requires": {
- "cross-spawn": "^5.0.1",
+ "cross-spawn": "^6.0.0",
"get-stream": "^3.0.0",
"is-stream": "^1.1.0",
"npm-run-path": "^2.0.0",
"p-finally": "^1.0.0",
"signal-exit": "^3.0.0",
"strip-eof": "^1.0.0"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
- "dev": true,
- "requires": {
- "lru-cache": "^4.0.1",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- }
}
},
"expand-brackets": {
@@ -1340,17 +1296,6 @@
}
}
},
- "external-editor": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.0.tgz",
- "integrity": "sha512-mpkfj0FEdxrIhOC04zk85X7StNtr0yXnG7zCb+8ikO8OJi2jsHh5YGoknNTyXgsbHOf1WOOcVU3kPFWT2WgCkQ==",
- "dev": true,
- "requires": {
- "chardet": "^0.5.0",
- "iconv-lite": "^0.4.22",
- "tmp": "^0.0.33"
- }
- },
"extglob": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
@@ -1434,15 +1379,6 @@
"integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=",
"dev": true
},
- "figures": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
- "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
- "dev": true,
- "requires": {
- "escape-string-regexp": "^1.0.5"
- }
- },
"file-loader": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz",
@@ -2261,15 +2197,6 @@
"integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
"dev": true
},
- "iconv-lite": {
- "version": "0.4.23",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz",
- "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
"icss-replace-symbols": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
@@ -2298,13 +2225,67 @@
"dev": true
},
"import-local": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz",
- "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz",
+ "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==",
"dev": true,
"requires": {
- "pkg-dir": "^2.0.0",
+ "pkg-dir": "^3.0.0",
"resolve-cwd": "^2.0.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-limit": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz",
+ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==",
+ "dev": true,
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "p-try": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
+ "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
+ "dev": true
+ },
+ "pkg-dir": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
+ "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
+ "dev": true,
+ "requires": {
+ "find-up": "^3.0.0"
+ }
+ }
}
},
"imurmurhash": {
@@ -2341,73 +2322,6 @@
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
- "inquirer": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.0.0.tgz",
- "integrity": "sha512-tISQWRwtcAgrz+SHPhTH7d3e73k31gsOy6i1csonLc0u1dVK/wYvuOnFeiWqC5OXFIYbmrIFInef31wbT8MEJg==",
- "dev": true,
- "requires": {
- "ansi-escapes": "^3.0.0",
- "chalk": "^2.0.0",
- "cli-cursor": "^2.1.0",
- "cli-width": "^2.0.0",
- "external-editor": "^3.0.0",
- "figures": "^2.0.0",
- "lodash": "^4.3.0",
- "mute-stream": "0.0.7",
- "run-async": "^2.2.0",
- "rxjs": "^6.1.0",
- "string-width": "^2.1.0",
- "strip-ansi": "^4.0.0",
- "through": "^2.3.6"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
- "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
- "dev": true
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "chalk": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz",
- "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "strip-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
- "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^3.0.0"
- }
- },
- "supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- }
- }
- },
"interpret": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
@@ -2415,9 +2329,9 @@
"dev": true
},
"invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz",
+ "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==",
"dev": true
},
"is-accessor-descriptor": {
@@ -2542,7 +2456,7 @@
},
"is-obj": {
"version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
+ "resolved": "http://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
"integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
"dev": true
},
@@ -2555,12 +2469,6 @@
"isobject": "^3.0.1"
}
},
- "is-promise": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
- "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
- "dev": true
- },
"is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
@@ -2628,18 +2536,18 @@
"dev": true
},
"lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz",
+ "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==",
"dev": true,
"requires": {
- "invert-kv": "^1.0.0"
+ "invert-kv": "^2.0.0"
}
},
"loader-runner": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz",
- "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz",
+ "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==",
"dev": true
},
"loader-utils": {
@@ -2681,12 +2589,6 @@
"integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
"dev": true
},
- "long": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz",
- "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=",
- "dev": true
- },
"lru-cache": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz",
@@ -2712,6 +2614,15 @@
"integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==",
"dev": true
},
+ "map-age-cleaner": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz",
+ "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==",
+ "dev": true,
+ "requires": {
+ "p-defer": "^1.0.0"
+ }
+ },
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
@@ -2738,12 +2649,14 @@
}
},
"mem": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz",
- "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz",
+ "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==",
"dev": true,
"requires": {
- "mimic-fn": "^1.0.0"
+ "map-age-cleaner": "^0.1.1",
+ "mimic-fn": "^1.0.0",
+ "p-is-promise": "^1.1.0"
}
},
"memory-fs": {
@@ -2904,12 +2817,6 @@
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
- "mute-stream": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
- "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=",
- "dev": true
- },
"nan": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz",
@@ -2943,9 +2850,9 @@
"dev": true
},
"nice-try": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz",
- "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
+ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true
},
"node-libs-browser": {
@@ -3069,15 +2976,6 @@
"wrappy": "1"
}
},
- "onetime": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
- "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
- "dev": true,
- "requires": {
- "mimic-fn": "^1.0.0"
- }
- },
"os-browserify": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
@@ -3085,20 +2983,20 @@
"dev": true
},
"os-locale": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz",
- "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz",
+ "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==",
"dev": true,
"requires": {
- "execa": "^0.7.0",
- "lcid": "^1.0.0",
- "mem": "^1.1.0"
+ "execa": "^0.10.0",
+ "lcid": "^2.0.0",
+ "mem": "^4.0.0"
}
},
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
+ "p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
"dev": true
},
"p-finally": {
@@ -3107,6 +3005,12 @@
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
"dev": true
},
+ "p-is-promise": {
+ "version": "1.1.0",
+ "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz",
+ "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=",
+ "dev": true
+ },
"p-limit": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
@@ -3150,7 +3054,7 @@
},
"parse-asn1": {
"version": "5.1.1",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
+ "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
"integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==",
"dev": true,
"requires": {
@@ -3373,7 +3277,7 @@
},
"public-encrypt": {
"version": "4.0.2",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
+ "resolved": "http://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
"integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==",
"dev": true,
"requires": {
@@ -3444,7 +3348,7 @@
},
"readable-stream": {
"version": "2.3.6",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
+ "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@@ -3458,15 +3362,14 @@
}
},
"readdirp": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
- "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.1.2",
- "minimatch": "^3.0.2",
- "readable-stream": "^2.0.2",
- "set-immediate-shim": "^1.0.1"
+ "graceful-fs": "^4.1.11",
+ "micromatch": "^3.1.10",
+ "readable-stream": "^2.0.2"
}
},
"regenerate": {
@@ -3562,16 +3465,6 @@
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
"dev": true
},
- "restore-cursor": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
- "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
- "dev": true,
- "requires": {
- "onetime": "^2.0.0",
- "signal-exit": "^3.0.2"
- }
- },
"ret": {
"version": "0.1.15",
"resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
@@ -3597,15 +3490,6 @@
"inherits": "^2.0.1"
}
},
- "run-async": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
- "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
- "dev": true,
- "requires": {
- "is-promise": "^2.1.0"
- }
- },
"run-queue": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
@@ -3615,15 +3499,6 @@
"aproba": "^1.1.1"
}
},
- "rxjs": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz",
- "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==",
- "dev": true,
- "requires": {
- "tslib": "^1.9.0"
- }
- },
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
@@ -3639,12 +3514,6 @@
"ret": "~0.1.10"
}
},
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
- },
"schema-utils": {
"version": "0.4.5",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz",
@@ -3656,9 +3525,9 @@
}
},
"semver": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
- "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz",
+ "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==",
"dev": true
},
"serialize-javascript": {
@@ -3673,12 +3542,6 @@
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
"dev": true
},
- "set-immediate-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
- "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
- "dev": true
- },
"set-value": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
@@ -3710,7 +3573,7 @@
},
"sha.js": {
"version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+ "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"dev": true,
"requires": {
@@ -4022,15 +3885,9 @@
"dev": true
},
"tapable": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz",
- "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==",
- "dev": true
- },
- "through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz",
+ "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==",
"dev": true
},
"through2": {
@@ -4052,15 +3909,6 @@
"setimmediate": "^1.0.4"
}
},
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "dev": true,
- "requires": {
- "os-tmpdir": "~1.0.2"
- }
- },
"to-arraybuffer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
@@ -4110,9 +3958,9 @@
}
},
"tslib": {
- "version": "1.9.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.2.tgz",
- "integrity": "sha512-AVP5Xol3WivEr7hnssHDsaM+lVrVXWUvd1cfXTRkTj80b//6g2wIFEH6hZG0muGZRnHGrfttpdzRk3YlBkWjKw==",
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz",
+ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==",
"dev": true
},
"tty-browserify": {
@@ -4211,18 +4059,18 @@
"dev": true
},
"unique-filename": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz",
- "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
+ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
"dev": true,
"requires": {
"unique-slug": "^2.0.0"
}
},
"unique-slug": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz",
- "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz",
+ "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==",
"dev": true,
"requires": {
"imurmurhash": "^0.1.4"
@@ -4329,9 +4177,9 @@
"dev": true
},
"v8-compile-cache": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.0.tgz",
- "integrity": "sha512-qNdTUMaCjPs4eEnM3W9H94R3sU70YCuT+/ST7nUf+id1bVOrdjrpUaeZLqPBPRph3hsgn4a4BvwpxhHZx+oSDg==",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz",
+ "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==",
"dev": true
},
"vm-browserify": {
@@ -4349,15 +4197,15 @@
"integrity": "sha512-mFbcWoDIJi0w0Za4emyLiW72Jae0yjANHbCVquMKijcavBGypqlF7zHRgMa5k4sesdv7hv2rB4JPdZfR+TPfhQ=="
},
"vue-hot-reload-api": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.0.tgz",
- "integrity": "sha512-2j/t+wIbyVMP5NvctQoSUvLkYKoWAAk2QlQiilrM2a6/ulzFgdcLUJfTvs4XQ/3eZhHiBmmEojbjmM4AzZj8JA==",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.1.tgz",
+ "integrity": "sha512-AA86yKZ5uOKz87/q1UpngEXhbRkaYg1b7HMMVRobNV1IVKqZe8oLIzo6iMocVwZXnYitlGwf2k4ZRLOZlS8oPQ==",
"dev": true
},
"vue-loader": {
- "version": "15.2.6",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.2.6.tgz",
- "integrity": "sha512-pArIvo89q3rBgYsDzc/EQoqJZH4lTiH5RJa3AguwazdO/+gN7NDyu59UyEdVCc1h+67xZlah2viNAvk3JE3CMw==",
+ "version": "15.4.2",
+ "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.4.2.tgz",
+ "integrity": "sha512-nVV27GNIA9MeoD8yQ3dkUzwlAaAsWeYSWZHsu/K04KCD339lW0Jv2sJWsjj3721SP7sl2lYdPmjcHgkWQSp5bg==",
"dev": true,
"requires": {
"@vue/component-compiler-utils": "^2.0.0",
@@ -4368,9 +4216,9 @@
}
},
"vue-style-loader": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.1.tgz",
- "integrity": "sha512-GD9a3G9k2dIGYl76IgwNQGCos3KnVbOVBIdXEIfjis0jNY34oEB2Tsrq2ZXl/KIzo/5Bdt7qAWjU1y+0TWcvIA==",
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz",
+ "integrity": "sha512-0ip8ge6Gzz/Bk0iHovU9XAUQaFt/G2B61bnWa2tCcqqdgfHs1lF9xXorFbE55Gmy92okFT+8bfmySuUOu13vxQ==",
"dev": true,
"requires": {
"hash-sum": "^1.0.2",
@@ -4405,16 +4253,15 @@
}
},
"webpack": {
- "version": "4.17.2",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.17.2.tgz",
- "integrity": "sha512-hCK8FPco2Paz9FVMlo3ZdVd7Jsr7qxoiEwhd7f4dMaWBLZtc7E+/9QNee4CYHlVSvpmspWBnhFpx4MiWSl3nNg==",
+ "version": "4.19.1",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.19.1.tgz",
+ "integrity": "sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-module-context": "1.5.13",
- "@webassemblyjs/wasm-edit": "1.5.13",
- "@webassemblyjs/wasm-opt": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-module-context": "1.7.6",
+ "@webassemblyjs/wasm-edit": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6",
"acorn": "^5.6.2",
"acorn-dynamic-import": "^3.0.0",
"ajv": "^6.1.0",
@@ -4431,29 +4278,28 @@
"neo-async": "^2.5.0",
"node-libs-browser": "^2.0.0",
"schema-utils": "^0.4.4",
- "tapable": "^1.0.0",
+ "tapable": "^1.1.0",
"uglifyjs-webpack-plugin": "^1.2.4",
"watchpack": "^1.5.0",
"webpack-sources": "^1.2.0"
}
},
"webpack-cli": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.0.tgz",
- "integrity": "sha512-p5NeKDtYwjZozUWq6kGNs9w+Gtw/CPvyuXjXn2HMdz8Tie+krjEg8oAtonvIyITZdvpF7XG9xDHwscLr2c+ugQ==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.1.tgz",
+ "integrity": "sha512-th5EUyVeGcAAVlFOcJg11fapD/xoLRE4j/eSfrmMAo3olPjvB7lgEPUtCbRP0OGmstvnQBl4VZP+zluXWDiBxg==",
"dev": true,
"requires": {
"chalk": "^2.4.1",
"cross-spawn": "^6.0.5",
- "enhanced-resolve": "^4.0.0",
- "global-modules-path": "^2.1.0",
- "import-local": "^1.0.0",
- "inquirer": "^6.0.0",
+ "enhanced-resolve": "^4.1.0",
+ "global-modules-path": "^2.3.0",
+ "import-local": "^2.0.0",
"interpret": "^1.1.0",
"loader-utils": "^1.1.0",
- "supports-color": "^5.4.0",
- "v8-compile-cache": "^2.0.0",
- "yargs": "^12.0.1"
+ "supports-color": "^5.5.0",
+ "v8-compile-cache": "^2.0.2",
+ "yargs": "^12.0.2"
},
"dependencies": {
"ansi-styles": {
@@ -4477,9 +4323,9 @@
}
},
"supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
"requires": {
"has-flag": "^3.0.0"
@@ -4497,9 +4343,9 @@
}
},
"webpack-sources": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz",
- "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==",
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz",
+ "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==",
"dev": true,
"requires": {
"source-list-map": "^2.0.0",
@@ -4540,7 +4386,7 @@
},
"wrap-ansi": {
"version": "2.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
+ "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
"integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
"dev": true,
"requires": {
@@ -4601,16 +4447,16 @@
"dev": true
},
"yargs": {
- "version": "12.0.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.1.tgz",
- "integrity": "sha512-B0vRAp1hRX4jgIOWFtjfNjd9OA9RWYZ6tqGA9/I/IrTMsxmKvtWy+ersM+jzpQqbC3YfLzeABPdeTgcJ9eu1qQ==",
+ "version": "12.0.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz",
+ "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==",
"dev": true,
"requires": {
"cliui": "^4.0.0",
"decamelize": "^2.0.0",
"find-up": "^3.0.0",
"get-caller-file": "^1.0.1",
- "os-locale": "^2.0.0",
+ "os-locale": "^3.0.0",
"require-directory": "^2.1.1",
"require-main-filename": "^1.0.1",
"set-blocking": "^2.0.0",
diff --git a/apps/oauth2/package.json b/apps/oauth2/package.json
index 09913f7f4a2..750a8eb5727 100644
--- a/apps/oauth2/package.json
+++ b/apps/oauth2/package.json
@@ -22,10 +22,10 @@
"devDependencies": {
"css-loader": "^1.0.0",
"file-loader": "^1.1.11",
- "vue-loader": "^15.2.6",
+ "vue-loader": "^15.4.2",
"vue-template-compiler": "^2.5.17",
- "webpack": "^4.17.2",
- "webpack-cli": "^3.1.0",
+ "webpack": "^4.19.1",
+ "webpack-cli": "^3.1.1",
"webpack-merge": "^4.1.4"
}
}
diff --git a/apps/provisioning_api/lib/Controller/AUserData.php b/apps/provisioning_api/lib/Controller/AUserData.php
index f08fef91417..25e5ab5c86d 100644
--- a/apps/provisioning_api/lib/Controller/AUserData.php
+++ b/apps/provisioning_api/lib/Controller/AUserData.php
@@ -74,7 +74,7 @@ abstract class AUserData extends OCSController {
/**
* creates a array with all user data
*
- * @param $userId
+ * @param string $userId
* @return array
* @throws OCSException
*/
diff --git a/apps/provisioning_api/lib/Controller/GroupsController.php b/apps/provisioning_api/lib/Controller/GroupsController.php
index 2dbe2c8502f..e52929df9c6 100644
--- a/apps/provisioning_api/lib/Controller/GroupsController.php
+++ b/apps/provisioning_api/lib/Controller/GroupsController.php
@@ -186,26 +186,25 @@ class GroupsController extends AUserData {
* @throws OCSException
*/
public function getGroupUsersDetails(string $groupId, string $search = '', int $limit = null, int $offset = 0): DataResponse {
- $user = $this->userSession->getUser();
- $isSubadminOfGroup = false;
+ $currentUser = $this->userSession->getUser();
// Check the group exists
$group = $this->groupManager->get($groupId);
if ($group !== null) {
- $isSubadminOfGroup =$this->groupManager->getSubAdmin()->isSubAdminOfGroup($user, $group);
+ $isSubadminOfGroup = $this->groupManager->getSubAdmin()->isSubAdminOfGroup($currentUser, $group);
} else {
throw new OCSException('The requested group could not be found', \OCP\API::RESPOND_NOT_FOUND);
}
// Check subadmin has access to this group
- if($this->groupManager->isAdmin($user->getUID())
- || $isSubadminOfGroup) {
- $users = $this->groupManager->get($groupId)->searchUsers($search, $limit, $offset);
+ if($this->groupManager->isAdmin($currentUser->getUID()) || $isSubadminOfGroup) {
+ $users = $group->searchUsers($search, $limit, $offset);
// Extract required number
- $users = array_keys($users);
$usersDetails = [];
- foreach ($users as $userId) {
+ foreach ($users as $user) {
+ /** @var IUser $user */
+ $userId = (string) $user->getUID();
$userData = $this->getUserData($userId);
// Do not insert empty entry
if(!empty($userData)) {
diff --git a/apps/provisioning_api/lib/Controller/UsersController.php b/apps/provisioning_api/lib/Controller/UsersController.php
index d5e568b9184..9aa32e1186a 100644
--- a/apps/provisioning_api/lib/Controller/UsersController.php
+++ b/apps/provisioning_api/lib/Controller/UsersController.php
@@ -46,6 +46,7 @@ use OCP\IGroup;
use OCP\IGroupManager;
use OCP\ILogger;
use OCP\IRequest;
+use OCP\IUser;
use OCP\IUserManager;
use OCP\IUserSession;
use OCP\L10N\IFactory;
@@ -154,29 +155,31 @@ class UsersController extends AUserData {
* returns a list of users and their data
*/
public function getUsersDetails(string $search = '', $limit = null, $offset = 0): DataResponse {
- $user = $this->userSession->getUser();
+ $currentUser = $this->userSession->getUser();
$users = [];
// Admin? Or SubAdmin?
- $uid = $user->getUID();
+ $uid = $currentUser->getUID();
$subAdminManager = $this->groupManager->getSubAdmin();
if ($this->groupManager->isAdmin($uid)){
$users = $this->userManager->search($search, $limit, $offset);
- } else if ($subAdminManager->isSubAdmin($user)) {
- $subAdminOfGroups = $subAdminManager->getSubAdminsGroups($user);
+ $users = array_keys($users);
+ } else if ($subAdminManager->isSubAdmin($currentUser)) {
+ $subAdminOfGroups = $subAdminManager->getSubAdminsGroups($currentUser);
foreach ($subAdminOfGroups as $key => $group) {
$subAdminOfGroups[$key] = $group->getGID();
}
$users = [];
foreach ($subAdminOfGroups as $group) {
- $users = array_merge($users, $this->groupManager->displayNamesInGroup($group, $search, $limit, $offset));
+ $users[] = array_keys($this->groupManager->displayNamesInGroup($group, $search, $limit, $offset));
}
+ $users = array_merge(...$users);
}
- $users = array_keys($users);
$usersDetails = [];
- foreach ($users as $key => $userId) {
+ foreach ($users as $userId) {
+ $userId = (string) $userId;
$userData = $this->getUserData($userId);
// Do not insert empty entry
if (!empty($userData)) {
diff --git a/apps/sharebymail/l10n/cs.js b/apps/sharebymail/l10n/cs.js
index ed6132ab50e..dac4cb9609d 100644
--- a/apps/sharebymail/l10n/cs.js
+++ b/apps/sharebymail/l10n/cs.js
@@ -8,7 +8,7 @@ OC.L10N.register(
"Password for mail share sent to %1$s" : "Heslo e-mailového sdílení odesláno na %1$s",
"Password for mail share sent to {email}" : "Heslo e-mailového sdílení odesláno na {email}",
"Password for mail share sent to you" : "Heslo e-mailového sdílení vám bylo zasláno",
- "You shared %1$s with %2$s by mail" : "Sdílel(a) jste %1$s e-mailem s %2$s",
+ "You shared %1$s with %2$s by mail" : "Sdíleli jste %1$s e-mailem s %2$s",
"You shared {file} with {email} by mail" : "E-mailem jste s {email} sdíleli {file}",
"%3$s shared %1$s with %2$s by mail" : "%3$s s %2$s sdílel e-mailem %1$s",
"{actor} shared {file} with {email} by mail" : "{actor} sdílel(a) {file} e-mailem s {email}",
@@ -17,25 +17,29 @@ OC.L10N.register(
"Password to access %1$s was sent to you" : "Heslo pro přístup k %1$s vám bylo zasláno",
"Password to access {file} was sent to you" : "Heslo pro přístupu k {file} vám bylo zasláno",
"Sharing %s failed, this item is already shared with %s" : "Sdílení %s se nezdařilo, tato položka je s %s už sdílena",
- "We can't send you the auto-generated password. Please set a valid email address in your personal settings and try again." : "Nemůžeme vám zaslat automaticky vygenerované heslo. Nastavte si v osobním nastavení platnou e-mailovou adresu a zkuste to znovu.",
+ "We can't send you the auto-generated password. Please set a valid email address in your personal settings and try again." : "Nemůžeme vám zaslat automaticky vytvořené heslo. Nastavte si v osobním nastavení platnou e-mailovou adresu a zkuste to znovu.",
"Failed to send share by email" : "Sdílení e-mailem se nezdařilo",
"%s shared »%s« with you" : "%s s vámi sdílel(a) »%s»",
- "%s shared »%s« with you." : "%s s vámi nasdílel(a) »%s«.",
+ "%s shared »%s« with you." : "%s s vámi nasdílel(a) „%s“.",
"Click the button below to open it." : "Pro otevření kliknětena tlačítko níže.",
- "Open »%s«" : "Otevřít »%s«",
+ "Open »%s«" : "Otevřít „%s“",
"%s via %s" : "%s přes %s",
- "%s shared »%s« with you.\nYou should have already received a separate mail with a link to access it.\n" : "%s s vámi sdílel(a) %s.",
- "%s shared »%s« with you. You should have already received a separate mail with a link to access it." : "%s s vámi sdílel(a) »%s«. Již jste měli dostat e-mail s přístupovými údaji.",
- "Password to access »%s« shared to you by %s" : "Heslo pro přístup k »%s« (vám nasdílel(a) %s)",
- "Password to access »%s«" : "Heslo pro přístup k »%s«",
+ "%s shared »%s« with you.\nYou should have already received a separate mail with a link to access it.\n" : "%s s vámi sdílel(a) „%s“. Už jste měli dostat e-mail s přístupovými údaji.\n",
+ "%s shared »%s« with you. You should have already received a separate mail with a link to access it." : "%s s vámi sdílel(a) „%s“. Už jste měli dostat e-mail s přístupovými údaji.",
+ "Password to access »%s« shared to you by %s" : "Heslo pro přístup k „%s“ (vám nasdílel(a) %s)",
+ "Password to access »%s«" : "Heslo pro přístup k „%s “",
"It is protected with the following password: %s" : "Je chráněn následujícím heslem: %s",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s s vámi sdílí „%2$s“ a chce přidat:",
+ "%1$s shared »%2$s« with you and wants to add" : "%1$s s vámi sdílí „%2$s“ a chce přidat",
+ "»%s« added a note to a file shared with you" : "„%s“ přidal(a) poznámku k souboru, který je s vámi sdílený",
"%1$s via %2$s" : "%1$s prostřednictvím %2$s",
"You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Právě jste s »%s» nasdílel(a) %s. Sdílení bylo již příjemci zasláno. Kvůli bezpečnostní politice nastavené administrátorem %s musí být každé sdílení chráněno heslem a toto heslo nemůže být příjemci zasláno přímo. Kvůli tomu ho budete muset manuálně přeposlat.",
- "Password to access »%s« shared with %s" : "Heslo pro přístup k »%s« sdíleno s %s",
+ "Password to access »%s« shared with %s" : "Heslo pro přístup k „%s“ sdíleno s %s",
"This is the password: %s" : "Toto je heslo: %s",
"You can choose a different password at any time in the share dialog." : "V dialogu sdílení můžete kdykoliv vybrat jiné heslo.",
"Could not find share" : "Sdílení se nedaří nalézt",
"Share by mail" : "Sdílet e-mailem",
+ "Share provider which allows you to share files by mail" : "Poskytovatel sdílení umožňuje sdílet soubory pomocí e-mailu",
"Allows users to share a personalized link to a file or folder by putting in an email address." : "Dovoluje uživatelům odeslat personalizovaný odkaz na soubor nebo složku po zadání e-mailové adresy.",
"Send password by mail" : "Odeslat heslo e-mailem",
"Enforce password protection" : "Vynutit ochranu heslem",
diff --git a/apps/sharebymail/l10n/cs.json b/apps/sharebymail/l10n/cs.json
index ea586e9b67b..a5ac8148497 100644
--- a/apps/sharebymail/l10n/cs.json
+++ b/apps/sharebymail/l10n/cs.json
@@ -6,7 +6,7 @@
"Password for mail share sent to %1$s" : "Heslo e-mailového sdílení odesláno na %1$s",
"Password for mail share sent to {email}" : "Heslo e-mailového sdílení odesláno na {email}",
"Password for mail share sent to you" : "Heslo e-mailového sdílení vám bylo zasláno",
- "You shared %1$s with %2$s by mail" : "Sdílel(a) jste %1$s e-mailem s %2$s",
+ "You shared %1$s with %2$s by mail" : "Sdíleli jste %1$s e-mailem s %2$s",
"You shared {file} with {email} by mail" : "E-mailem jste s {email} sdíleli {file}",
"%3$s shared %1$s with %2$s by mail" : "%3$s s %2$s sdílel e-mailem %1$s",
"{actor} shared {file} with {email} by mail" : "{actor} sdílel(a) {file} e-mailem s {email}",
@@ -15,25 +15,29 @@
"Password to access %1$s was sent to you" : "Heslo pro přístup k %1$s vám bylo zasláno",
"Password to access {file} was sent to you" : "Heslo pro přístupu k {file} vám bylo zasláno",
"Sharing %s failed, this item is already shared with %s" : "Sdílení %s se nezdařilo, tato položka je s %s už sdílena",
- "We can't send you the auto-generated password. Please set a valid email address in your personal settings and try again." : "Nemůžeme vám zaslat automaticky vygenerované heslo. Nastavte si v osobním nastavení platnou e-mailovou adresu a zkuste to znovu.",
+ "We can't send you the auto-generated password. Please set a valid email address in your personal settings and try again." : "Nemůžeme vám zaslat automaticky vytvořené heslo. Nastavte si v osobním nastavení platnou e-mailovou adresu a zkuste to znovu.",
"Failed to send share by email" : "Sdílení e-mailem se nezdařilo",
"%s shared »%s« with you" : "%s s vámi sdílel(a) »%s»",
- "%s shared »%s« with you." : "%s s vámi nasdílel(a) »%s«.",
+ "%s shared »%s« with you." : "%s s vámi nasdílel(a) „%s“.",
"Click the button below to open it." : "Pro otevření kliknětena tlačítko níže.",
- "Open »%s«" : "Otevřít »%s«",
+ "Open »%s«" : "Otevřít „%s“",
"%s via %s" : "%s přes %s",
- "%s shared »%s« with you.\nYou should have already received a separate mail with a link to access it.\n" : "%s s vámi sdílel(a) %s.",
- "%s shared »%s« with you. You should have already received a separate mail with a link to access it." : "%s s vámi sdílel(a) »%s«. Již jste měli dostat e-mail s přístupovými údaji.",
- "Password to access »%s« shared to you by %s" : "Heslo pro přístup k »%s« (vám nasdílel(a) %s)",
- "Password to access »%s«" : "Heslo pro přístup k »%s«",
+ "%s shared »%s« with you.\nYou should have already received a separate mail with a link to access it.\n" : "%s s vámi sdílel(a) „%s“. Už jste měli dostat e-mail s přístupovými údaji.\n",
+ "%s shared »%s« with you. You should have already received a separate mail with a link to access it." : "%s s vámi sdílel(a) „%s“. Už jste měli dostat e-mail s přístupovými údaji.",
+ "Password to access »%s« shared to you by %s" : "Heslo pro přístup k „%s“ (vám nasdílel(a) %s)",
+ "Password to access »%s«" : "Heslo pro přístup k „%s “",
"It is protected with the following password: %s" : "Je chráněn následujícím heslem: %s",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s s vámi sdílí „%2$s“ a chce přidat:",
+ "%1$s shared »%2$s« with you and wants to add" : "%1$s s vámi sdílí „%2$s“ a chce přidat",
+ "»%s« added a note to a file shared with you" : "„%s“ přidal(a) poznámku k souboru, který je s vámi sdílený",
"%1$s via %2$s" : "%1$s prostřednictvím %2$s",
"You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Právě jste s »%s» nasdílel(a) %s. Sdílení bylo již příjemci zasláno. Kvůli bezpečnostní politice nastavené administrátorem %s musí být každé sdílení chráněno heslem a toto heslo nemůže být příjemci zasláno přímo. Kvůli tomu ho budete muset manuálně přeposlat.",
- "Password to access »%s« shared with %s" : "Heslo pro přístup k »%s« sdíleno s %s",
+ "Password to access »%s« shared with %s" : "Heslo pro přístup k „%s“ sdíleno s %s",
"This is the password: %s" : "Toto je heslo: %s",
"You can choose a different password at any time in the share dialog." : "V dialogu sdílení můžete kdykoliv vybrat jiné heslo.",
"Could not find share" : "Sdílení se nedaří nalézt",
"Share by mail" : "Sdílet e-mailem",
+ "Share provider which allows you to share files by mail" : "Poskytovatel sdílení umožňuje sdílet soubory pomocí e-mailu",
"Allows users to share a personalized link to a file or folder by putting in an email address." : "Dovoluje uživatelům odeslat personalizovaný odkaz na soubor nebo složku po zadání e-mailové adresy.",
"Send password by mail" : "Odeslat heslo e-mailem",
"Enforce password protection" : "Vynutit ochranu heslem",
diff --git a/apps/sharebymail/l10n/nl.js b/apps/sharebymail/l10n/nl.js
index 3adc9e797bc..93df458c017 100644
--- a/apps/sharebymail/l10n/nl.js
+++ b/apps/sharebymail/l10n/nl.js
@@ -31,12 +31,15 @@ OC.L10N.register(
"It is protected with the following password: %s" : "Het is beveiligd met het volgende wachtwoord: %s",
"%1$s shared »%2$s« with you and wants to add:" : "%1$s deelde »%2$s« met jou en wil toevoegen:",
"%1$s shared »%2$s« with you and wants to add" : "%1$s deelde »%2$s« met jou en wil toevoegen",
+ "»%s« added a note to a file shared with you" : "»%s« voegde een notitie toe aan een bestand dat met jou is gedeeld",
+ "%1$s via %2$s" : "%1$s via %2$s",
"You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Je deelde »%s« met %s. De link is al gestuurd naar de geadresseerde. Vanwege de beveiligingsinstellingen, zoals ingesteld door de beheerder van %s, moet het delen worden beveiligd met een wachtwoord en is het niet toegestaan het wachtwoord rechtstreeks naar de ontvanger te versturen. Hierdoor moet je het wachtwoord zelf handmatig naar de ontvanger sturen.",
"Password to access »%s« shared with %s" : "Wachtwoord voor toegang »%s« gedeeld met %s",
"This is the password: %s" : "Dit is het wachtwoord: %s",
"You can choose a different password at any time in the share dialog." : "Je kunt in de Delen-dialoog altijd een ander wachtwoord kiezen.",
"Could not find share" : "Kon gedeeld niet vinden",
"Share by mail" : "Delen via email",
+ "Share provider which allows you to share files by mail" : "Share provider waarmee je bestanden via de mail kunt delen",
"Allows users to share a personalized link to a file or folder by putting in an email address." : "Staat gebruikers toe om een gepersonaliseerde link of map te delen door een e-mailadres op te geven.",
"Send password by mail" : "Wachtwoord per email verzenden",
"Enforce password protection" : "Wachtwoord-beveiliging afdwingen",
diff --git a/apps/sharebymail/l10n/nl.json b/apps/sharebymail/l10n/nl.json
index 33ce0439d3f..9d67989daf7 100644
--- a/apps/sharebymail/l10n/nl.json
+++ b/apps/sharebymail/l10n/nl.json
@@ -29,12 +29,15 @@
"It is protected with the following password: %s" : "Het is beveiligd met het volgende wachtwoord: %s",
"%1$s shared »%2$s« with you and wants to add:" : "%1$s deelde »%2$s« met jou en wil toevoegen:",
"%1$s shared »%2$s« with you and wants to add" : "%1$s deelde »%2$s« met jou en wil toevoegen",
+ "»%s« added a note to a file shared with you" : "»%s« voegde een notitie toe aan een bestand dat met jou is gedeeld",
+ "%1$s via %2$s" : "%1$s via %2$s",
"You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Je deelde »%s« met %s. De link is al gestuurd naar de geadresseerde. Vanwege de beveiligingsinstellingen, zoals ingesteld door de beheerder van %s, moet het delen worden beveiligd met een wachtwoord en is het niet toegestaan het wachtwoord rechtstreeks naar de ontvanger te versturen. Hierdoor moet je het wachtwoord zelf handmatig naar de ontvanger sturen.",
"Password to access »%s« shared with %s" : "Wachtwoord voor toegang »%s« gedeeld met %s",
"This is the password: %s" : "Dit is het wachtwoord: %s",
"You can choose a different password at any time in the share dialog." : "Je kunt in de Delen-dialoog altijd een ander wachtwoord kiezen.",
"Could not find share" : "Kon gedeeld niet vinden",
"Share by mail" : "Delen via email",
+ "Share provider which allows you to share files by mail" : "Share provider waarmee je bestanden via de mail kunt delen",
"Allows users to share a personalized link to a file or folder by putting in an email address." : "Staat gebruikers toe om een gepersonaliseerde link of map te delen door een e-mailadres op te geven.",
"Send password by mail" : "Wachtwoord per email verzenden",
"Enforce password protection" : "Wachtwoord-beveiliging afdwingen",
diff --git a/apps/sharebymail/l10n/pl.js b/apps/sharebymail/l10n/pl.js
index 0692ed37d26..0c08d470694 100644
--- a/apps/sharebymail/l10n/pl.js
+++ b/apps/sharebymail/l10n/pl.js
@@ -29,6 +29,7 @@ OC.L10N.register(
"Password to access »%s« shared to you by %s" : "Hasło dostępu do »%s« jest udostępnione Tobie przez %s",
"Password to access »%s«" : "Hasło do dostępu »%s«",
"It is protected with the following password: %s" : "To jest chronione następującym hasłem: %s",
+ "%1$s via %2$s" : "%1$s przez %2$s",
"You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Właśnie udostępniono »%s« użytkownikowi %s. Udostępniony udział został już wysłany do odbiorcy, jednak zgodnie z polityką bezpieczeństwa ustanowioną przez administratora %s każdy udział musi zostać zabezpieczony hasłem. Wysyłanie hasła bezpośrednio do odbiorcy jest zabronione, dlatego też musisz mu je przekazać w klasyczny sposób.",
"Password to access »%s« shared with %s" : "Hasło dostępu do »%s« zostało udostępnione %s",
"This is the password: %s" : "To jest hasło: %s",
diff --git a/apps/sharebymail/l10n/pl.json b/apps/sharebymail/l10n/pl.json
index d7aacbc8e54..ef85eed1822 100644
--- a/apps/sharebymail/l10n/pl.json
+++ b/apps/sharebymail/l10n/pl.json
@@ -27,6 +27,7 @@
"Password to access »%s« shared to you by %s" : "Hasło dostępu do »%s« jest udostępnione Tobie przez %s",
"Password to access »%s«" : "Hasło do dostępu »%s«",
"It is protected with the following password: %s" : "To jest chronione następującym hasłem: %s",
+ "%1$s via %2$s" : "%1$s przez %2$s",
"You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Właśnie udostępniono »%s« użytkownikowi %s. Udostępniony udział został już wysłany do odbiorcy, jednak zgodnie z polityką bezpieczeństwa ustanowioną przez administratora %s każdy udział musi zostać zabezpieczony hasłem. Wysyłanie hasła bezpośrednio do odbiorcy jest zabronione, dlatego też musisz mu je przekazać w klasyczny sposób.",
"Password to access »%s« shared with %s" : "Hasło dostępu do »%s« zostało udostępnione %s",
"This is the password: %s" : "To jest hasło: %s",
diff --git a/apps/systemtags/l10n/bg.js b/apps/systemtags/l10n/bg.js
index 2c1508f8e6c..128e2a2b8d9 100644
--- a/apps/systemtags/l10n/bg.js
+++ b/apps/systemtags/l10n/bg.js
@@ -6,39 +6,39 @@ OC.L10N.register(
"Create" : "Създай",
"Select tag…" : "Изберете етикет...",
"Tagged files" : "Отбелязани файлове",
- "Select tags to filter by" : "Моля изберете таг по който да филтрирате",
+ "Select tags to filter by" : "Филтриране по етикет",
"No tags found" : "Няма открити етикети",
- "Please select tags to filter by" : "Моля изберете таг за филтриране",
- "No files found for the selected tags" : "Няма намерени файлове за избраните тагове",
- "Added system tag %1$s" : "Добавен системен таг %1$s",
- "Added system tag {systemtag}" : "Добавен системен таг {systemtag}",
- "%1$s added system tag %2$s" : "%1$s добави системен таг %2$s",
- "{actor} added system tag {systemtag}" : "{actor} добави системен таг {systemtag}",
- "Removed system tag %1$s" : "Премахнат системен таг %1$s",
- "Removed system tag {systemtag}" : "Премахнат системен таг {systemtag}",
- "%1$s removed system tag %2$s" : "%1$s премахна системен таг %2$s",
- "{actor} removed system tag {systemtag}" : "{actor} премахна системен таг {systemtag}",
- "You created system tag %1$s" : "Създадохте системен таг %1$s",
- "You created system tag {systemtag}" : "Създадохте системен таг {systemtag}",
- "%1$s created system tag %2$s" : "%1$s създаде системен таг %2$s",
- "{actor} created system tag {systemtag}" : "{actor} създаде системен таг {systemtag}",
- "You deleted system tag %1$s" : "Изтрихте системен таг %1$s",
- "You deleted system tag {systemtag}" : "Изтрихте системен таг {systemtag}",
- "%1$s deleted system tag %2$s" : "%1$s изтри системен таг %2$s",
- "{actor} deleted system tag {systemtag}" : "{actor} изтри системен таг {systemtag}",
- "You updated system tag %2$s to %1$s" : "Актуализирахте системен таг %2$s на %1$s",
- "You updated system tag {oldsystemtag} to {newsystemtag}" : "Актуализирахте системен таг {oldsystemtag} на {newsystemtag}",
- "%1$s updated system tag %3$s to %2$s" : "%1$s акутализиран системен таг %3$s на %2$s",
- "{actor} updated system tag {oldsystemtag} to {newsystemtag}" : "{actor} Актуализира системен таг {oldsystemtag} на {newsystemtag}",
- "You added system tag %2$s to %1$s" : "Добавихте системен таг %2$s на %1$s",
- "You added system tag {systemtag} to {file}" : "Добавихте системен таг {systemtag} на {file}",
- "%1$s added system tag %3$s to %2$s" : "%1$s добави системен таг %3$s на %2$s",
- "{actor} added system tag {systemtag} to {file}" : "{actor} добави системен таг {systemtag} на {file}",
- "You removed system tag %2$s from %1$s" : "Премахнахте системен таг %2$s от %1$s",
- "You removed system tag {systemtag} from {file}" : "Премахнахте системен таг {systemtag} от {file}",
- "%1$s removed system tag %3$s from %2$s" : "%1$s премахна системни таг %3$s от %2$s",
- "{actor} removed system tag {systemtag} from {file}" : "{actor} премахна системен таг {systemtag} от {file}",
- "<strong>System tags</strong> for a file have been modified" : "Промяна на <strong>системни тагове</strong> за файл",
+ "Please select tags to filter by" : "Филтриране по етикет",
+ "No files found for the selected tags" : "Няма намерени файлове за избраните етикети",
+ "Added system tag %1$s" : "Добавен системен етикет %1$s",
+ "Added system tag {systemtag}" : "Добавен системен етикет {systemtag}",
+ "%1$s added system tag %2$s" : "%1$s добави системен етикет %2$s",
+ "{actor} added system tag {systemtag}" : "{actor} добави системен етикет {systemtag}",
+ "Removed system tag %1$s" : "Премахнат системен етикет %1$s",
+ "Removed system tag {systemtag}" : "Премахнат системен етикет {systemtag}",
+ "%1$s removed system tag %2$s" : "%1$s премахна системен етикет %2$s",
+ "{actor} removed system tag {systemtag}" : "{actor} премахна системен етикет {systemtag}",
+ "You created system tag %1$s" : "Създадохте системен етикет %1$s",
+ "You created system tag {systemtag}" : "Създадохте системен етикет {systemtag}",
+ "%1$s created system tag %2$s" : "%1$s създаде системен етикет %2$s",
+ "{actor} created system tag {systemtag}" : "{actor} създаде системен етикет {systemtag}",
+ "You deleted system tag %1$s" : "Изтрихте системен етикет %1$s",
+ "You deleted system tag {systemtag}" : "Изтрихте системен етикет {systemtag}",
+ "%1$s deleted system tag %2$s" : "%1$s изтри системен етикет %2$s",
+ "{actor} deleted system tag {systemtag}" : "{actor} изтри системен етикет {systemtag}",
+ "You updated system tag %2$s to %1$s" : "Актуализирахте системен етикет %2$s на %1$s",
+ "You updated system tag {oldsystemtag} to {newsystemtag}" : "Актуализирахте системен етикет {oldsystemtag} на {newsystemtag}",
+ "%1$s updated system tag %3$s to %2$s" : "%1$s акутализиран системен етикет %3$s на %2$s",
+ "{actor} updated system tag {oldsystemtag} to {newsystemtag}" : "{actor} Актуализира системен етикет {oldsystemtag} на {newsystemtag}",
+ "You added system tag %2$s to %1$s" : "Добавихте системен етикет %2$s на %1$s",
+ "You added system tag {systemtag} to {file}" : "Добавихте системен етикет {systemtag} на {file}",
+ "%1$s added system tag %3$s to %2$s" : "%1$s добави системен етикет %3$s на %2$s",
+ "{actor} added system tag {systemtag} to {file}" : "{actor} добави системен етикет {systemtag} на {file}",
+ "You removed system tag %2$s from %1$s" : "Премахнахте системен етикет %2$s от %1$s",
+ "You removed system tag {systemtag} from {file}" : "Премахнахте системен етикет {systemtag} от {file}",
+ "%1$s removed system tag %3$s from %2$s" : "%1$s премахна системни етикет %3$s от %2$s",
+ "{actor} removed system tag {systemtag} from {file}" : "{actor} премахна системен етикет {systemtag} от {file}",
+ "<strong>System tags</strong> for a file have been modified" : "Промяна на <strong>системни етикети</strong> за файл",
"Name" : "Име",
"Public" : "Публичен",
"Restricted" : "Ограничен",
diff --git a/apps/systemtags/l10n/bg.json b/apps/systemtags/l10n/bg.json
index 732da7f6b88..8123859ce1f 100644
--- a/apps/systemtags/l10n/bg.json
+++ b/apps/systemtags/l10n/bg.json
@@ -4,39 +4,39 @@
"Create" : "Създай",
"Select tag…" : "Изберете етикет...",
"Tagged files" : "Отбелязани файлове",
- "Select tags to filter by" : "Моля изберете таг по който да филтрирате",
+ "Select tags to filter by" : "Филтриране по етикет",
"No tags found" : "Няма открити етикети",
- "Please select tags to filter by" : "Моля изберете таг за филтриране",
- "No files found for the selected tags" : "Няма намерени файлове за избраните тагове",
- "Added system tag %1$s" : "Добавен системен таг %1$s",
- "Added system tag {systemtag}" : "Добавен системен таг {systemtag}",
- "%1$s added system tag %2$s" : "%1$s добави системен таг %2$s",
- "{actor} added system tag {systemtag}" : "{actor} добави системен таг {systemtag}",
- "Removed system tag %1$s" : "Премахнат системен таг %1$s",
- "Removed system tag {systemtag}" : "Премахнат системен таг {systemtag}",
- "%1$s removed system tag %2$s" : "%1$s премахна системен таг %2$s",
- "{actor} removed system tag {systemtag}" : "{actor} премахна системен таг {systemtag}",
- "You created system tag %1$s" : "Създадохте системен таг %1$s",
- "You created system tag {systemtag}" : "Създадохте системен таг {systemtag}",
- "%1$s created system tag %2$s" : "%1$s създаде системен таг %2$s",
- "{actor} created system tag {systemtag}" : "{actor} създаде системен таг {systemtag}",
- "You deleted system tag %1$s" : "Изтрихте системен таг %1$s",
- "You deleted system tag {systemtag}" : "Изтрихте системен таг {systemtag}",
- "%1$s deleted system tag %2$s" : "%1$s изтри системен таг %2$s",
- "{actor} deleted system tag {systemtag}" : "{actor} изтри системен таг {systemtag}",
- "You updated system tag %2$s to %1$s" : "Актуализирахте системен таг %2$s на %1$s",
- "You updated system tag {oldsystemtag} to {newsystemtag}" : "Актуализирахте системен таг {oldsystemtag} на {newsystemtag}",
- "%1$s updated system tag %3$s to %2$s" : "%1$s акутализиран системен таг %3$s на %2$s",
- "{actor} updated system tag {oldsystemtag} to {newsystemtag}" : "{actor} Актуализира системен таг {oldsystemtag} на {newsystemtag}",
- "You added system tag %2$s to %1$s" : "Добавихте системен таг %2$s на %1$s",
- "You added system tag {systemtag} to {file}" : "Добавихте системен таг {systemtag} на {file}",
- "%1$s added system tag %3$s to %2$s" : "%1$s добави системен таг %3$s на %2$s",
- "{actor} added system tag {systemtag} to {file}" : "{actor} добави системен таг {systemtag} на {file}",
- "You removed system tag %2$s from %1$s" : "Премахнахте системен таг %2$s от %1$s",
- "You removed system tag {systemtag} from {file}" : "Премахнахте системен таг {systemtag} от {file}",
- "%1$s removed system tag %3$s from %2$s" : "%1$s премахна системни таг %3$s от %2$s",
- "{actor} removed system tag {systemtag} from {file}" : "{actor} премахна системен таг {systemtag} от {file}",
- "<strong>System tags</strong> for a file have been modified" : "Промяна на <strong>системни тагове</strong> за файл",
+ "Please select tags to filter by" : "Филтриране по етикет",
+ "No files found for the selected tags" : "Няма намерени файлове за избраните етикети",
+ "Added system tag %1$s" : "Добавен системен етикет %1$s",
+ "Added system tag {systemtag}" : "Добавен системен етикет {systemtag}",
+ "%1$s added system tag %2$s" : "%1$s добави системен етикет %2$s",
+ "{actor} added system tag {systemtag}" : "{actor} добави системен етикет {systemtag}",
+ "Removed system tag %1$s" : "Премахнат системен етикет %1$s",
+ "Removed system tag {systemtag}" : "Премахнат системен етикет {systemtag}",
+ "%1$s removed system tag %2$s" : "%1$s премахна системен етикет %2$s",
+ "{actor} removed system tag {systemtag}" : "{actor} премахна системен етикет {systemtag}",
+ "You created system tag %1$s" : "Създадохте системен етикет %1$s",
+ "You created system tag {systemtag}" : "Създадохте системен етикет {systemtag}",
+ "%1$s created system tag %2$s" : "%1$s създаде системен етикет %2$s",
+ "{actor} created system tag {systemtag}" : "{actor} създаде системен етикет {systemtag}",
+ "You deleted system tag %1$s" : "Изтрихте системен етикет %1$s",
+ "You deleted system tag {systemtag}" : "Изтрихте системен етикет {systemtag}",
+ "%1$s deleted system tag %2$s" : "%1$s изтри системен етикет %2$s",
+ "{actor} deleted system tag {systemtag}" : "{actor} изтри системен етикет {systemtag}",
+ "You updated system tag %2$s to %1$s" : "Актуализирахте системен етикет %2$s на %1$s",
+ "You updated system tag {oldsystemtag} to {newsystemtag}" : "Актуализирахте системен етикет {oldsystemtag} на {newsystemtag}",
+ "%1$s updated system tag %3$s to %2$s" : "%1$s акутализиран системен етикет %3$s на %2$s",
+ "{actor} updated system tag {oldsystemtag} to {newsystemtag}" : "{actor} Актуализира системен етикет {oldsystemtag} на {newsystemtag}",
+ "You added system tag %2$s to %1$s" : "Добавихте системен етикет %2$s на %1$s",
+ "You added system tag {systemtag} to {file}" : "Добавихте системен етикет {systemtag} на {file}",
+ "%1$s added system tag %3$s to %2$s" : "%1$s добави системен етикет %3$s на %2$s",
+ "{actor} added system tag {systemtag} to {file}" : "{actor} добави системен етикет {systemtag} на {file}",
+ "You removed system tag %2$s from %1$s" : "Премахнахте системен етикет %2$s от %1$s",
+ "You removed system tag {systemtag} from {file}" : "Премахнахте системен етикет {systemtag} от {file}",
+ "%1$s removed system tag %3$s from %2$s" : "%1$s премахна системни етикет %3$s от %2$s",
+ "{actor} removed system tag {systemtag} from {file}" : "{actor} премахна системен етикет {systemtag} от {file}",
+ "<strong>System tags</strong> for a file have been modified" : "Промяна на <strong>системни етикети</strong> за файл",
"Name" : "Име",
"Public" : "Публичен",
"Restricted" : "Ограничен",
diff --git a/apps/systemtags/l10n/cs.js b/apps/systemtags/l10n/cs.js
index aee25321a72..76ba2a08568 100644
--- a/apps/systemtags/l10n/cs.js
+++ b/apps/systemtags/l10n/cs.js
@@ -1,32 +1,32 @@
OC.L10N.register(
"systemtags",
{
- "Tags" : "Značky",
+ "Tags" : "Štítky",
"Update" : "Aktualizovat",
"Create" : "Vytvořit",
- "Select tag…" : "Zvolit značku…",
- "Tagged files" : "Označkované soubory soubory",
- "Select tags to filter by" : "Vybrat tagy pro filtr",
- "No tags found" : "Nebyly nalezeny žádné tagy",
+ "Select tag…" : "Zvolit štítek…",
+ "Tagged files" : "Oštítkované soubory",
+ "Select tags to filter by" : "Vybrat štítky pro filtr",
+ "No tags found" : "Nebyly nalezeny žádné štítky",
"Please select tags to filter by" : "Vyberte prosím tagy pro filtrování",
- "No files found for the selected tags" : "Nebyly nalezeny žádné soubory s vybranými tagy",
+ "No files found for the selected tags" : "Nebyly nalezeny žádné soubory s vybranými štítky",
"Added system tag %1$s" : "Přidán systémový tag %1$s",
- "Added system tag {systemtag}" : "Přidán systémový tag {systemtag}",
+ "Added system tag {systemtag}" : "Přidán systémový štítek {systemtag}",
"%1$s added system tag %2$s" : "%1$s přidal(a) systémový tag %2$s",
- "{actor} added system tag {systemtag}" : "{actor} přidal(a) systémový tag {systemtag}",
- "Removed system tag %1$s" : "Odstraněn systémový tag %1$s",
- "Removed system tag {systemtag}" : "Odstraněn systémový tag {systemtag}",
+ "{actor} added system tag {systemtag}" : "{actor} přidal(a) systémový štítek {systemtag}",
+ "Removed system tag %1$s" : "Odstraněn systémový štítek %1$s",
+ "Removed system tag {systemtag}" : "Odstraněn systémový štítek {systemtag}",
"%1$s removed system tag %2$s" : "%1$s odstranil systémový tag %2$s",
"{actor} removed system tag {systemtag}" : "{actor} odstranil systémový tag {systemtag}",
- "You created system tag %1$s" : "Vytvořil(a) jste systémový tag %1$s",
+ "You created system tag %1$s" : "Vytvořili jste systémový štítek %1$s",
"You created system tag {systemtag}" : "Vytvořili jste systémový tag {systemtag}",
"%1$s created system tag %2$s" : "%1$s vytvořil systémový tag %2$s",
- "{actor} created system tag {systemtag}" : "{actor} vytvořil(a) systémový tag {systemtag}",
+ "{actor} created system tag {systemtag}" : "{actor} vytvořil(a) systémový štítek {systemtag}",
"You deleted system tag %1$s" : "Odstranil(a) jste systémový tag %1$s",
- "You deleted system tag {systemtag}" : "Odstranil(a) jste systémový tag {systemtag}",
- "%1$s deleted system tag %2$s" : "%1$s smazal systémový tag %2$s",
+ "You deleted system tag {systemtag}" : "Odstranili jste systémový štítek {systemtag}",
+ "%1$s deleted system tag %2$s" : "%1$s smazal(a) systémový štítek %2$s",
"{actor} deleted system tag {systemtag}" : "{actor} odstranil(a) systémový tag {systemtag}",
- "You updated system tag %2$s to %1$s" : "Aktualizoval(a) jste systémový tag %2$s na %1$s",
+ "You updated system tag %2$s to %1$s" : "Aktualizoval(a) jste systémový štítek %2$s na %1$s",
"You updated system tag {oldsystemtag} to {newsystemtag}" : "Aktualizoval(a) jste systémový tag {oldsystemtag} na {newsystemtag}",
"%1$s updated system tag %3$s to %2$s" : "%1$s aktualizoval systémový tag %3$s na %2$s",
"{actor} updated system tag {oldsystemtag} to {newsystemtag}" : "{actor} aktualizoval(a) systémový tag {oldsystemtag} na { newsystemtag}",
@@ -35,13 +35,16 @@ OC.L10N.register(
"%1$s added system tag %3$s to %2$s" : "%1$s k %2$s přidal systémový štítek %3$s",
"{actor} added system tag {systemtag} to {file}" : "{actor} přidal(a) systémový tag {systemtag} k {file}",
"You removed system tag %2$s from %1$s" : "Z %2$s jste odstranil(a) systémový tag %1$s",
- "You removed system tag {systemtag} from {file}" : "Z {file} jste odstranil(a) systémový tag {systemtag}",
- "%1$s removed system tag %3$s from %2$s" : "%1$s odstranil systémový štítek %3$s z %2$s",
+ "You removed system tag {systemtag} from {file}" : "Ze {file} jste odstranili systémový štítek {systemtag}",
+ "%1$s removed system tag %3$s from %2$s" : "%1$s odstranil(a) systémový štítek %3$s z %2$s",
"{actor} removed system tag {systemtag} from {file}" : "{actor} odstranil(a) systémotý tag {systemtag} z {file}",
"%s (restricted)" : "%s (omezeno)",
"%s (invisible)" : "%s (neviditelný)",
- "<strong>System tags</strong> for a file have been modified" : "<strong>Systémové tagy</strong> souboru byly upraveny",
+ "<strong>System tags</strong> for a file have been modified" : "<strong>Systémové štítky</strong> souboru byly upraveny",
"Collaborative tags" : "Značky pro spolupráci",
+ "Collaborative tagging functionality which shares tags among users." : "Funkce pro spolupráci při opatřování štítky, sdílenými mezi uživateli.",
+ "Collaborative tagging functionality which shares tags among users. Great for teams.\n\t(If you are a provider with a multi-tenancy installation, it is advised to deactivate this app as tags are shared.)" : "Funkce pro spolupráci při opatřování štítky, sdílenými mezi uživateli. Skvělé pro týmy.\n\t(Pokud jste poskytovatel instalace, sloužící více subjektům, je doporučeno tuto aplikaci vypnout, protože štítky jsou sdílené.)",
+ "Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them." : "Štítky pro spolupráci jsou k dispozici všem uživatelům. Omezené štítky jsou uživatelům viditelné, ale nemohou je přiřazovat.\nNeviditelné štítky jsou pro vnitřní potřebu, protože uživatelé je nemohou vidět ani je přiřazovat.",
"Select tag …" : "Vyberte štítek…",
"Create a new tag" : "Vytvořit nový štítek",
"Name" : "Název",
diff --git a/apps/systemtags/l10n/cs.json b/apps/systemtags/l10n/cs.json
index 399a2c06dc4..e9ebc4e090f 100644
--- a/apps/systemtags/l10n/cs.json
+++ b/apps/systemtags/l10n/cs.json
@@ -1,30 +1,30 @@
{ "translations": {
- "Tags" : "Značky",
+ "Tags" : "Štítky",
"Update" : "Aktualizovat",
"Create" : "Vytvořit",
- "Select tag…" : "Zvolit značku…",
- "Tagged files" : "Označkované soubory soubory",
- "Select tags to filter by" : "Vybrat tagy pro filtr",
- "No tags found" : "Nebyly nalezeny žádné tagy",
+ "Select tag…" : "Zvolit štítek…",
+ "Tagged files" : "Oštítkované soubory",
+ "Select tags to filter by" : "Vybrat štítky pro filtr",
+ "No tags found" : "Nebyly nalezeny žádné štítky",
"Please select tags to filter by" : "Vyberte prosím tagy pro filtrování",
- "No files found for the selected tags" : "Nebyly nalezeny žádné soubory s vybranými tagy",
+ "No files found for the selected tags" : "Nebyly nalezeny žádné soubory s vybranými štítky",
"Added system tag %1$s" : "Přidán systémový tag %1$s",
- "Added system tag {systemtag}" : "Přidán systémový tag {systemtag}",
+ "Added system tag {systemtag}" : "Přidán systémový štítek {systemtag}",
"%1$s added system tag %2$s" : "%1$s přidal(a) systémový tag %2$s",
- "{actor} added system tag {systemtag}" : "{actor} přidal(a) systémový tag {systemtag}",
- "Removed system tag %1$s" : "Odstraněn systémový tag %1$s",
- "Removed system tag {systemtag}" : "Odstraněn systémový tag {systemtag}",
+ "{actor} added system tag {systemtag}" : "{actor} přidal(a) systémový štítek {systemtag}",
+ "Removed system tag %1$s" : "Odstraněn systémový štítek %1$s",
+ "Removed system tag {systemtag}" : "Odstraněn systémový štítek {systemtag}",
"%1$s removed system tag %2$s" : "%1$s odstranil systémový tag %2$s",
"{actor} removed system tag {systemtag}" : "{actor} odstranil systémový tag {systemtag}",
- "You created system tag %1$s" : "Vytvořil(a) jste systémový tag %1$s",
+ "You created system tag %1$s" : "Vytvořili jste systémový štítek %1$s",
"You created system tag {systemtag}" : "Vytvořili jste systémový tag {systemtag}",
"%1$s created system tag %2$s" : "%1$s vytvořil systémový tag %2$s",
- "{actor} created system tag {systemtag}" : "{actor} vytvořil(a) systémový tag {systemtag}",
+ "{actor} created system tag {systemtag}" : "{actor} vytvořil(a) systémový štítek {systemtag}",
"You deleted system tag %1$s" : "Odstranil(a) jste systémový tag %1$s",
- "You deleted system tag {systemtag}" : "Odstranil(a) jste systémový tag {systemtag}",
- "%1$s deleted system tag %2$s" : "%1$s smazal systémový tag %2$s",
+ "You deleted system tag {systemtag}" : "Odstranili jste systémový štítek {systemtag}",
+ "%1$s deleted system tag %2$s" : "%1$s smazal(a) systémový štítek %2$s",
"{actor} deleted system tag {systemtag}" : "{actor} odstranil(a) systémový tag {systemtag}",
- "You updated system tag %2$s to %1$s" : "Aktualizoval(a) jste systémový tag %2$s na %1$s",
+ "You updated system tag %2$s to %1$s" : "Aktualizoval(a) jste systémový štítek %2$s na %1$s",
"You updated system tag {oldsystemtag} to {newsystemtag}" : "Aktualizoval(a) jste systémový tag {oldsystemtag} na {newsystemtag}",
"%1$s updated system tag %3$s to %2$s" : "%1$s aktualizoval systémový tag %3$s na %2$s",
"{actor} updated system tag {oldsystemtag} to {newsystemtag}" : "{actor} aktualizoval(a) systémový tag {oldsystemtag} na { newsystemtag}",
@@ -33,13 +33,16 @@
"%1$s added system tag %3$s to %2$s" : "%1$s k %2$s přidal systémový štítek %3$s",
"{actor} added system tag {systemtag} to {file}" : "{actor} přidal(a) systémový tag {systemtag} k {file}",
"You removed system tag %2$s from %1$s" : "Z %2$s jste odstranil(a) systémový tag %1$s",
- "You removed system tag {systemtag} from {file}" : "Z {file} jste odstranil(a) systémový tag {systemtag}",
- "%1$s removed system tag %3$s from %2$s" : "%1$s odstranil systémový štítek %3$s z %2$s",
+ "You removed system tag {systemtag} from {file}" : "Ze {file} jste odstranili systémový štítek {systemtag}",
+ "%1$s removed system tag %3$s from %2$s" : "%1$s odstranil(a) systémový štítek %3$s z %2$s",
"{actor} removed system tag {systemtag} from {file}" : "{actor} odstranil(a) systémotý tag {systemtag} z {file}",
"%s (restricted)" : "%s (omezeno)",
"%s (invisible)" : "%s (neviditelný)",
- "<strong>System tags</strong> for a file have been modified" : "<strong>Systémové tagy</strong> souboru byly upraveny",
+ "<strong>System tags</strong> for a file have been modified" : "<strong>Systémové štítky</strong> souboru byly upraveny",
"Collaborative tags" : "Značky pro spolupráci",
+ "Collaborative tagging functionality which shares tags among users." : "Funkce pro spolupráci při opatřování štítky, sdílenými mezi uživateli.",
+ "Collaborative tagging functionality which shares tags among users. Great for teams.\n\t(If you are a provider with a multi-tenancy installation, it is advised to deactivate this app as tags are shared.)" : "Funkce pro spolupráci při opatřování štítky, sdílenými mezi uživateli. Skvělé pro týmy.\n\t(Pokud jste poskytovatel instalace, sloužící více subjektům, je doporučeno tuto aplikaci vypnout, protože štítky jsou sdílené.)",
+ "Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them." : "Štítky pro spolupráci jsou k dispozici všem uživatelům. Omezené štítky jsou uživatelům viditelné, ale nemohou je přiřazovat.\nNeviditelné štítky jsou pro vnitřní potřebu, protože uživatelé je nemohou vidět ani je přiřazovat.",
"Select tag …" : "Vyberte štítek…",
"Create a new tag" : "Vytvořit nový štítek",
"Name" : "Název",
diff --git a/apps/systemtags/l10n/he.js b/apps/systemtags/l10n/he.js
index 99f203f6d7c..dc051a6a23b 100644
--- a/apps/systemtags/l10n/he.js
+++ b/apps/systemtags/l10n/he.js
@@ -42,6 +42,7 @@ OC.L10N.register(
"%s (invisible)" : "%s (נסתר)",
"<strong>System tags</strong> for a file have been modified" : "<strong>תגיות מערכת</strong> שהשתנו עבור קובץ",
"Collaborative tags" : "תגיות שיתופיות",
+ "Collaborative tagging functionality which shares tags among users." : "תכונת תיוג שיתופים שמשתפת תגיות בין המשתמשים.",
"Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them." : "תגיות שיתופיות זמינות לכל המשתמשים. תגיות מוגבלות חשופות למשתמשים אך אין להם אפשרות להקצות אותן. תגיות בלתי נראות הן לשימוש פנימי כיוון שמשתמשים לא יכולים לראות אות להקצות אותן.",
"Select tag …" : "מחיקת תגית…",
"Create a new tag" : "יצירת תגית חדשה",
diff --git a/apps/systemtags/l10n/he.json b/apps/systemtags/l10n/he.json
index 6e83da5b26f..6e06f2d9f45 100644
--- a/apps/systemtags/l10n/he.json
+++ b/apps/systemtags/l10n/he.json
@@ -40,6 +40,7 @@
"%s (invisible)" : "%s (נסתר)",
"<strong>System tags</strong> for a file have been modified" : "<strong>תגיות מערכת</strong> שהשתנו עבור קובץ",
"Collaborative tags" : "תגיות שיתופיות",
+ "Collaborative tagging functionality which shares tags among users." : "תכונת תיוג שיתופים שמשתפת תגיות בין המשתמשים.",
"Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them." : "תגיות שיתופיות זמינות לכל המשתמשים. תגיות מוגבלות חשופות למשתמשים אך אין להם אפשרות להקצות אותן. תגיות בלתי נראות הן לשימוש פנימי כיוון שמשתמשים לא יכולים לראות אות להקצות אותן.",
"Select tag …" : "מחיקת תגית…",
"Create a new tag" : "יצירת תגית חדשה",
diff --git a/apps/systemtags/l10n/nl.js b/apps/systemtags/l10n/nl.js
index bd481cdc8dc..14f21b23d67 100644
--- a/apps/systemtags/l10n/nl.js
+++ b/apps/systemtags/l10n/nl.js
@@ -42,6 +42,9 @@ OC.L10N.register(
"%s (invisible)" : "%s (onzichtbaar)",
"<strong>System tags</strong> for a file have been modified" : "<strong>Systeemmarkeringen</strong> voor een bestand zijn gewijzigd",
"Collaborative tags" : "Systeemtags",
+ "Collaborative tagging functionality which shares tags among users." : "Samenwerkings tagfunctionaliteit, waardoor je tags kunt delen onder gebruikers.",
+ "Collaborative tagging functionality which shares tags among users. Great for teams.\n\t(If you are a provider with a multi-tenancy installation, it is advised to deactivate this app as tags are shared.)" : "Samenwerkings tagfunctionaliteit, waardoor je tags kunt delen onder gebruikers. Perfect voor teams\n(als je een provider met een multi-tenancy installatie bent, adviseren we om deze app uit te schakelen omdat tags worden gedeeld.)",
+ "Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them." : "Samenwerkingstags zijn beschikbaar voor alle gebruikers. Beperkte tags zijn zichtbaar voor gebruikers, maar kunnen niet door hen worden toegewezen. Onzichtbare tags zijn er alleen voor intern gebruik, aangezien gebruikers ze niet kunnen zien of toewijzen.",
"Select tag …" : "Selecteer tag …",
"Create a new tag" : "Creëren nieuw tag",
"Name" : "Tag",
diff --git a/apps/systemtags/l10n/nl.json b/apps/systemtags/l10n/nl.json
index 151e3783cb5..86ca68b626d 100644
--- a/apps/systemtags/l10n/nl.json
+++ b/apps/systemtags/l10n/nl.json
@@ -40,6 +40,9 @@
"%s (invisible)" : "%s (onzichtbaar)",
"<strong>System tags</strong> for a file have been modified" : "<strong>Systeemmarkeringen</strong> voor een bestand zijn gewijzigd",
"Collaborative tags" : "Systeemtags",
+ "Collaborative tagging functionality which shares tags among users." : "Samenwerkings tagfunctionaliteit, waardoor je tags kunt delen onder gebruikers.",
+ "Collaborative tagging functionality which shares tags among users. Great for teams.\n\t(If you are a provider with a multi-tenancy installation, it is advised to deactivate this app as tags are shared.)" : "Samenwerkings tagfunctionaliteit, waardoor je tags kunt delen onder gebruikers. Perfect voor teams\n(als je een provider met een multi-tenancy installatie bent, adviseren we om deze app uit te schakelen omdat tags worden gedeeld.)",
+ "Collaborative tags are available for all users. Restricted tags are visible to users but cannot be assigned by them. Invisible tags are for internal use, since users cannot see or assign them." : "Samenwerkingstags zijn beschikbaar voor alle gebruikers. Beperkte tags zijn zichtbaar voor gebruikers, maar kunnen niet door hen worden toegewezen. Onzichtbare tags zijn er alleen voor intern gebruik, aangezien gebruikers ze niet kunnen zien of toewijzen.",
"Select tag …" : "Selecteer tag …",
"Create a new tag" : "Creëren nieuw tag",
"Name" : "Tag",
diff --git a/apps/theming/css/theming.scss b/apps/theming/css/theming.scss
index 4a5b0e1aa27..f12ce4d907f 100644
--- a/apps/theming/css/theming.scss
+++ b/apps/theming/css/theming.scss
@@ -56,7 +56,7 @@
label,
p,
#alternative-logins legend {
- color: $color-primary-text !important;
+ color: var(--color-primary-text);
}
input[type='checkbox'].checkbox--white + label:before {
border-color: nc-darken($color-primary-element, 40%) !important;
@@ -171,7 +171,7 @@ input.primary,
#body-login {
a, label, p {
- color: $color-primary-text !important;
+ color: var(--color-primary-text);
}
}
diff --git a/apps/theming/l10n/cs.js b/apps/theming/l10n/cs.js
index 1f6ddfdd7c1..3fdde0e0031 100644
--- a/apps/theming/l10n/cs.js
+++ b/apps/theming/l10n/cs.js
@@ -8,6 +8,8 @@ OC.L10N.register(
"Name cannot be empty" : "Je třeba zadat název",
"The given name is too long" : "Zadaný název je příliš dlouhý",
"The given web address is too long" : "Zadaná webová adresa je příliš dlouhá",
+ "The given legal notice address is too long" : "Daná adresa právního upozornění je příliš dlouhá",
+ "The given privacy policy address is too long" : "Daná adresa zásad ochrany soukromí je příliš dlouhá",
"The given slogan is too long" : "Zadaný slogan je příliš dlouhý",
"The given color is invalid" : "Zadaná barva není platná",
"The file was uploaded" : "Soubor byl nahrán",
@@ -20,7 +22,9 @@ OC.L10N.register(
"A PHP extension stopped the file upload" : "PHP rozšíření zastavilo nahrávání souboru",
"No file uploaded" : "Nenahrán žádný soubor",
"Unsupported image type" : "Nepodporovaný typ obrázku",
+ "You are already using a custom theme. Theming app settings might be overwritten by that." : "Už používáte svůj vlastní motiv vzhledu. Nastavení aplikace pro změnu motivu vzhledu tím mohou být přepsána.",
"Theming" : "Motivy",
+ "Legal notice" : "Právní upozornění",
"Privacy policy" : "Zásady soukromí",
"Adjust the Nextcloud theme" : "Upravit motiv vzhledu Nextcloud",
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "Motivy umožňují jednoduché přizpůsobení vzhledu vaší instance a podporovaných klientů. Tato přizpůsobení uvidí všichni uživatelé.",
@@ -36,6 +40,7 @@ OC.L10N.register(
"Upload new login background" : "Nahrát nové přihlašovací pozadí",
"Remove background image" : "Odebrat obrázek pozadí",
"Advanced options" : "Pokročilé předvolby",
+ "Legal notice link" : "Odkaz na právní upozornění",
"Privacy policy link" : "Odkaz na zásady ochrany osobních údajů",
"Header logo" : "Logo v záhlaví",
"Upload new header logo" : "Nahrát nové logo do hlavičky",
@@ -47,8 +52,8 @@ OC.L10N.register(
"Web address" : "Webová adresa",
"Web address https://…" : "Webová adresa https://",
"There is no error, the file uploaded with success" : "Nenastala žádná chyba, soubor byl úspěšně nahrán",
- "The uploaded file was only partially uploaded" : "Nahraný soubor byl nahrán pouze částečně",
- "Failed to write file to disk." : "Selhal zápis na disk",
+ "The uploaded file was only partially uploaded" : "Soubor byl nahrán pouze částečně",
+ "Failed to write file to disk." : "Zápis na disk se nezdařil.",
"A PHP extension stopped the file upload." : "Rozšíření PHP zastavilo nahrávání souboru."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/theming/l10n/cs.json b/apps/theming/l10n/cs.json
index 4bc148a6e08..adef65a92f7 100644
--- a/apps/theming/l10n/cs.json
+++ b/apps/theming/l10n/cs.json
@@ -6,6 +6,8 @@
"Name cannot be empty" : "Je třeba zadat název",
"The given name is too long" : "Zadaný název je příliš dlouhý",
"The given web address is too long" : "Zadaná webová adresa je příliš dlouhá",
+ "The given legal notice address is too long" : "Daná adresa právního upozornění je příliš dlouhá",
+ "The given privacy policy address is too long" : "Daná adresa zásad ochrany soukromí je příliš dlouhá",
"The given slogan is too long" : "Zadaný slogan je příliš dlouhý",
"The given color is invalid" : "Zadaná barva není platná",
"The file was uploaded" : "Soubor byl nahrán",
@@ -18,7 +20,9 @@
"A PHP extension stopped the file upload" : "PHP rozšíření zastavilo nahrávání souboru",
"No file uploaded" : "Nenahrán žádný soubor",
"Unsupported image type" : "Nepodporovaný typ obrázku",
+ "You are already using a custom theme. Theming app settings might be overwritten by that." : "Už používáte svůj vlastní motiv vzhledu. Nastavení aplikace pro změnu motivu vzhledu tím mohou být přepsána.",
"Theming" : "Motivy",
+ "Legal notice" : "Právní upozornění",
"Privacy policy" : "Zásady soukromí",
"Adjust the Nextcloud theme" : "Upravit motiv vzhledu Nextcloud",
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "Motivy umožňují jednoduché přizpůsobení vzhledu vaší instance a podporovaných klientů. Tato přizpůsobení uvidí všichni uživatelé.",
@@ -34,6 +38,7 @@
"Upload new login background" : "Nahrát nové přihlašovací pozadí",
"Remove background image" : "Odebrat obrázek pozadí",
"Advanced options" : "Pokročilé předvolby",
+ "Legal notice link" : "Odkaz na právní upozornění",
"Privacy policy link" : "Odkaz na zásady ochrany osobních údajů",
"Header logo" : "Logo v záhlaví",
"Upload new header logo" : "Nahrát nové logo do hlavičky",
@@ -45,8 +50,8 @@
"Web address" : "Webová adresa",
"Web address https://…" : "Webová adresa https://",
"There is no error, the file uploaded with success" : "Nenastala žádná chyba, soubor byl úspěšně nahrán",
- "The uploaded file was only partially uploaded" : "Nahraný soubor byl nahrán pouze částečně",
- "Failed to write file to disk." : "Selhal zápis na disk",
+ "The uploaded file was only partially uploaded" : "Soubor byl nahrán pouze částečně",
+ "Failed to write file to disk." : "Zápis na disk se nezdařil.",
"A PHP extension stopped the file upload." : "Rozšíření PHP zastavilo nahrávání souboru."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/theming/l10n/el.js b/apps/theming/l10n/el.js
index 3913562af57..780f2ad0b1a 100644
--- a/apps/theming/l10n/el.js
+++ b/apps/theming/l10n/el.js
@@ -20,6 +20,7 @@ OC.L10N.register(
"No file uploaded" : "Δεν έχει μεταφορτωθεί αρχείο",
"Unsupported image type" : "Μη υποστηριζόμενος τύπος εικόνας",
"Theming" : "Προσαρμογή θέματος",
+ "Legal notice" : "Νομική ειδοποίηση",
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "Η προσαρμογή θέματος καθιστά δυνατή την εύκολη προσαρμογή της εμφάνισης της εμφάνισης της εγκατάστασής σας καθώς και των υποστηριζόμενων πελατών. Αυτή θα είναι ορατή για όλους τους χρήστες.",
"Name" : "Όνομα",
"Reset to default" : "Επαναφορά στα προεπιλεγμένα",
diff --git a/apps/theming/l10n/el.json b/apps/theming/l10n/el.json
index 91f6661e015..c98aaaeadda 100644
--- a/apps/theming/l10n/el.json
+++ b/apps/theming/l10n/el.json
@@ -18,6 +18,7 @@
"No file uploaded" : "Δεν έχει μεταφορτωθεί αρχείο",
"Unsupported image type" : "Μη υποστηριζόμενος τύπος εικόνας",
"Theming" : "Προσαρμογή θέματος",
+ "Legal notice" : "Νομική ειδοποίηση",
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "Η προσαρμογή θέματος καθιστά δυνατή την εύκολη προσαρμογή της εμφάνισης της εμφάνισης της εγκατάστασής σας καθώς και των υποστηριζόμενων πελατών. Αυτή θα είναι ορατή για όλους τους χρήστες.",
"Name" : "Όνομα",
"Reset to default" : "Επαναφορά στα προεπιλεγμένα",
diff --git a/apps/theming/l10n/hu.js b/apps/theming/l10n/hu.js
index d48f941f10c..274b963e84b 100644
--- a/apps/theming/l10n/hu.js
+++ b/apps/theming/l10n/hu.js
@@ -20,6 +20,7 @@ OC.L10N.register(
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "A témák lehetőve teszik, hogy könnyedén személyre szabja a kinézetét az oldalnak, és a támogatott klienseknek. Ez minden felhasználó számára látható lesz.",
"Name" : "Név",
"Reset to default" : "Visszaállítás eredetire",
+ "https://…" : "https://...",
"Slogan" : "Szlogen",
"Color" : "Szín",
"Logo" : "Logó",
@@ -27,6 +28,7 @@ OC.L10N.register(
"Login image" : "Bejelentkező kép",
"Upload new login background" : "Új bejelentkező kép feltöltése",
"Remove background image" : "Háttérkép eltávolítása",
+ "Advanced options" : "Haladó beállítások",
"Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Telepítsd az Imagemagick PHP kiterjesztést SVG kép támogatással a feltöltött logóból és színből való automatikus favikon generáláshoz.",
"You are already using a custom theme" : "Már egyedi témát használ",
"reset to default" : "Visszaállítás alapértelmezettre",
diff --git a/apps/theming/l10n/hu.json b/apps/theming/l10n/hu.json
index b4832fed153..d5dc8883c08 100644
--- a/apps/theming/l10n/hu.json
+++ b/apps/theming/l10n/hu.json
@@ -18,6 +18,7 @@
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "A témák lehetőve teszik, hogy könnyedén személyre szabja a kinézetét az oldalnak, és a támogatott klienseknek. Ez minden felhasználó számára látható lesz.",
"Name" : "Név",
"Reset to default" : "Visszaállítás eredetire",
+ "https://…" : "https://...",
"Slogan" : "Szlogen",
"Color" : "Szín",
"Logo" : "Logó",
@@ -25,6 +26,7 @@
"Login image" : "Bejelentkező kép",
"Upload new login background" : "Új bejelentkező kép feltöltése",
"Remove background image" : "Háttérkép eltávolítása",
+ "Advanced options" : "Haladó beállítások",
"Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Telepítsd az Imagemagick PHP kiterjesztést SVG kép támogatással a feltöltött logóból és színből való automatikus favikon generáláshoz.",
"You are already using a custom theme" : "Már egyedi témát használ",
"reset to default" : "Visszaállítás alapértelmezettre",
diff --git a/apps/theming/l10n/ja.js b/apps/theming/l10n/ja.js
index ca9019a5872..5b7676b3136 100644
--- a/apps/theming/l10n/ja.js
+++ b/apps/theming/l10n/ja.js
@@ -5,6 +5,7 @@ OC.L10N.register(
"Saved" : "保存済み",
"Admin" : "管理者",
"a safe home for all your data" : "あなたのデータを安全に保管するプラットフォーム",
+ "Name cannot be empty" : "名前は空にできません",
"The given name is too long" : "名前が長すぎます",
"The given web address is too long" : "Webアドレスが長すぎます",
"The given slogan is too long" : "スローガンが長すぎます",
@@ -15,7 +16,7 @@ OC.L10N.register(
"No file uploaded" : "ファイルがアップロードされていません",
"Unsupported image type" : "サポートされていない画像形式です",
"Theming" : "テーマ",
- "Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "テーマではあなたのインスタンスとサポートされたクライアントのルック&フィールを簡単に変更できます。この変更はすべてのユーザーが対象となります。",
+ "Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "テーマでは、あなたのインスタンスとサポートされたクライアントのルック&フィールを簡単に変更できます。この変更はすべてのユーザーが対象となります。",
"Name" : "名前",
"Reset to default" : "デフォルトに戻す",
"Web link" : "Webリンク",
@@ -28,7 +29,7 @@ OC.L10N.register(
"Remove background image" : "背景画像を削除",
"Legal notice link" : "法的通知のリンク",
"Privacy policy link" : "プライバシーポリシーのリンク",
- "Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "アップロードしたロゴと色に基づいてfaviconを自動的に生成するには、SVG画像をサポートしたimagemagick PHP拡張をインストールしてください。",
+ "Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "アップロードしたロゴと色に基づいてfaviconを自動的に生成するには、SVG画像をサポートしているimagemagick PHP拡張をインストールしてください。",
"You are already using a custom theme" : "すでにカスタムテーマを利用しています",
"reset to default" : "デフォルトに戻す",
"Web address" : "Webアドレス",
diff --git a/apps/theming/l10n/ja.json b/apps/theming/l10n/ja.json
index 859d1c586df..67c5a911679 100644
--- a/apps/theming/l10n/ja.json
+++ b/apps/theming/l10n/ja.json
@@ -3,6 +3,7 @@
"Saved" : "保存済み",
"Admin" : "管理者",
"a safe home for all your data" : "あなたのデータを安全に保管するプラットフォーム",
+ "Name cannot be empty" : "名前は空にできません",
"The given name is too long" : "名前が長すぎます",
"The given web address is too long" : "Webアドレスが長すぎます",
"The given slogan is too long" : "スローガンが長すぎます",
@@ -13,7 +14,7 @@
"No file uploaded" : "ファイルがアップロードされていません",
"Unsupported image type" : "サポートされていない画像形式です",
"Theming" : "テーマ",
- "Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "テーマではあなたのインスタンスとサポートされたクライアントのルック&フィールを簡単に変更できます。この変更はすべてのユーザーが対象となります。",
+ "Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "テーマでは、あなたのインスタンスとサポートされたクライアントのルック&フィールを簡単に変更できます。この変更はすべてのユーザーが対象となります。",
"Name" : "名前",
"Reset to default" : "デフォルトに戻す",
"Web link" : "Webリンク",
@@ -26,7 +27,7 @@
"Remove background image" : "背景画像を削除",
"Legal notice link" : "法的通知のリンク",
"Privacy policy link" : "プライバシーポリシーのリンク",
- "Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "アップロードしたロゴと色に基づいてfaviconを自動的に生成するには、SVG画像をサポートしたimagemagick PHP拡張をインストールしてください。",
+ "Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "アップロードしたロゴと色に基づいてfaviconを自動的に生成するには、SVG画像をサポートしているimagemagick PHP拡張をインストールしてください。",
"You are already using a custom theme" : "すでにカスタムテーマを利用しています",
"reset to default" : "デフォルトに戻す",
"Web address" : "Webアドレス",
diff --git a/apps/theming/l10n/pl.js b/apps/theming/l10n/pl.js
index db512664949..67e75cfa988 100644
--- a/apps/theming/l10n/pl.js
+++ b/apps/theming/l10n/pl.js
@@ -8,18 +8,29 @@ OC.L10N.register(
"Name cannot be empty" : "Nazwa nie może być pusta.",
"The given name is too long" : "Wpisana nazwa jest zbyt długi",
"The given web address is too long" : "Wpisany adres internetowy jest zbyt długi",
+ "The given legal notice address is too long" : "Podana nota prawna jest zbyt długa",
+ "The given privacy policy address is too long" : "Podana polityka prywatności jest zbyt długa",
"The given slogan is too long" : "Wpisany slogan jest zbyt długi",
"The given color is invalid" : "Podany kolor jest nieprawidłowy",
+ "The file was uploaded" : "Plik został wysłany",
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Wgrany plik przekracza wartość upload_max_filesize zdefiniowaną w php.ini",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Wysłany plik przekracza wielkość dyrektywy MAX_FILE_SIZE określonej w formularzu HTML",
+ "The file was only partially uploaded" : "Załadowany plik został wysłany tylko częściowo.",
"No file was uploaded" : "Nie wysłano żadnego pliku",
"Missing a temporary folder" : "Brak folderu tymczasowego",
+ "Could not write file to disk" : "Nie można zapisać pliku na dysk",
+ "A PHP extension stopped the file upload" : "Rozszerzenie PHP zatrzymało wysyłanie pliku",
"No file uploaded" : "Nie wysłano pliku",
"Unsupported image type" : "Nieobsługiwany typ zdjęcia",
+ "You are already using a custom theme. Theming app settings might be overwritten by that." : "Używasz już niestandardowego motywu. Ustawienia aplikacji Theming mogą przez to zostać nadpisane.",
"Theming" : "Motyw",
+ "Legal notice" : "Nota prawna",
+ "Privacy policy" : "Polityka prywatności",
+ "Adjust the Nextcloud theme" : "Dostosuj motyw Nextcloud",
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "Motywy pozwalają na łatwą personalizację wyglądu Twojej instancji i wspieranych klientów. Efekty będą widoczne dla wszystkich użytkowników.",
"Name" : "Nazwa",
"Reset to default" : "Przywróć domyślne",
+ "Web link" : "Link",
"https://…" : "https://…",
"Slogan" : "Slogan",
"Color" : "Kolor",
@@ -28,7 +39,13 @@ OC.L10N.register(
"Login image" : "Obraz logowania",
"Upload new login background" : "Wyślij nowe tło ekranu logowania",
"Remove background image" : "Usuń obraz tła",
+ "Advanced options" : "Opcje zaawansowane",
+ "Legal notice link" : "Link noty prawnej",
+ "Privacy policy link" : "Link polityki prywatności",
+ "Header logo" : "Logo nagłówka",
+ "Upload new header logo" : "Wyślij logo nagłówka",
"Favicon" : "Favicon",
+ "Upload new favicon" : "Wyślij nową fav ikonę",
"Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Aby wygenerować favicon oparte o wysłane logo i kolor, zainstaluj rozszerzenie PHP Imagemagick z obsługą SVG.",
"You are already using a custom theme" : "Używasz już motywu niestandarowego",
"reset to default" : "przywróć domyślne",
diff --git a/apps/theming/l10n/pl.json b/apps/theming/l10n/pl.json
index 73920d59e67..3b18acf44a6 100644
--- a/apps/theming/l10n/pl.json
+++ b/apps/theming/l10n/pl.json
@@ -6,18 +6,29 @@
"Name cannot be empty" : "Nazwa nie może być pusta.",
"The given name is too long" : "Wpisana nazwa jest zbyt długi",
"The given web address is too long" : "Wpisany adres internetowy jest zbyt długi",
+ "The given legal notice address is too long" : "Podana nota prawna jest zbyt długa",
+ "The given privacy policy address is too long" : "Podana polityka prywatności jest zbyt długa",
"The given slogan is too long" : "Wpisany slogan jest zbyt długi",
"The given color is invalid" : "Podany kolor jest nieprawidłowy",
+ "The file was uploaded" : "Plik został wysłany",
"The uploaded file exceeds the upload_max_filesize directive in php.ini" : "Wgrany plik przekracza wartość upload_max_filesize zdefiniowaną w php.ini",
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Wysłany plik przekracza wielkość dyrektywy MAX_FILE_SIZE określonej w formularzu HTML",
+ "The file was only partially uploaded" : "Załadowany plik został wysłany tylko częściowo.",
"No file was uploaded" : "Nie wysłano żadnego pliku",
"Missing a temporary folder" : "Brak folderu tymczasowego",
+ "Could not write file to disk" : "Nie można zapisać pliku na dysk",
+ "A PHP extension stopped the file upload" : "Rozszerzenie PHP zatrzymało wysyłanie pliku",
"No file uploaded" : "Nie wysłano pliku",
"Unsupported image type" : "Nieobsługiwany typ zdjęcia",
+ "You are already using a custom theme. Theming app settings might be overwritten by that." : "Używasz już niestandardowego motywu. Ustawienia aplikacji Theming mogą przez to zostać nadpisane.",
"Theming" : "Motyw",
+ "Legal notice" : "Nota prawna",
+ "Privacy policy" : "Polityka prywatności",
+ "Adjust the Nextcloud theme" : "Dostosuj motyw Nextcloud",
"Theming makes it possible to easily customize the look and feel of your instance and supported clients. This will be visible for all users." : "Motywy pozwalają na łatwą personalizację wyglądu Twojej instancji i wspieranych klientów. Efekty będą widoczne dla wszystkich użytkowników.",
"Name" : "Nazwa",
"Reset to default" : "Przywróć domyślne",
+ "Web link" : "Link",
"https://…" : "https://…",
"Slogan" : "Slogan",
"Color" : "Kolor",
@@ -26,7 +37,13 @@
"Login image" : "Obraz logowania",
"Upload new login background" : "Wyślij nowe tło ekranu logowania",
"Remove background image" : "Usuń obraz tła",
+ "Advanced options" : "Opcje zaawansowane",
+ "Legal notice link" : "Link noty prawnej",
+ "Privacy policy link" : "Link polityki prywatności",
+ "Header logo" : "Logo nagłówka",
+ "Upload new header logo" : "Wyślij logo nagłówka",
"Favicon" : "Favicon",
+ "Upload new favicon" : "Wyślij nową fav ikonę",
"Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Aby wygenerować favicon oparte o wysłane logo i kolor, zainstaluj rozszerzenie PHP Imagemagick z obsługą SVG.",
"You are already using a custom theme" : "Używasz już motywu niestandarowego",
"reset to default" : "przywróć domyślne",
diff --git a/apps/theming/lib/ThemingDefaults.php b/apps/theming/lib/ThemingDefaults.php
index fe1b1d4c17f..1df7a9f17bb 100644
--- a/apps/theming/lib/ThemingDefaults.php
+++ b/apps/theming/lib/ThemingDefaults.php
@@ -174,9 +174,7 @@ class ThemingDefaults extends \OC_Defaults {
$legalLinks = ''; $divider = '';
foreach($links as $link) {
if($link['url'] !== ''
- && filter_var($link['url'], FILTER_VALIDATE_URL, [
- 'flags' => FILTER_FLAG_SCHEME_REQUIRED | FILTER_FLAG_HOST_REQUIRED
- ])
+ && filter_var($link['url'], FILTER_VALIDATE_URL)
) {
$legalLinks .= $divider . '<a href="' . $link['url'] . '" class="legal" target="_blank"' .
' rel="noreferrer noopener">' . $link['text'] . '</a>';
@@ -339,7 +337,7 @@ class ThemingDefaults extends \OC_Defaults {
}
return false;
}
-
+
/**
* Increases the cache buster key
*/
diff --git a/apps/twofactor_backupcodes/l10n/cs.js b/apps/twofactor_backupcodes/l10n/cs.js
index e24c835c307..70022a23399 100644
--- a/apps/twofactor_backupcodes/l10n/cs.js
+++ b/apps/twofactor_backupcodes/l10n/cs.js
@@ -3,11 +3,11 @@ OC.L10N.register(
{
"Generate backup codes" : "Vytvořit záložní kódy",
"Backup codes have been generated. {{used}} of {{total}} codes have been used." : "Záložní kódy byly vytvořeny. {{used}} z {{total}} kódů bylo využito.",
- "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later" : "Zde jsou vaše záložní kódy. Kódy si prosím uložte a/nebo vytiskněte, protože je nebude možné později zobrazit.",
+ "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later" : "Zde jsou vaše záložní kódy. Kódy si uložte a/nebo vytiskněte, protože už je nebude možné zobrazit znovu.",
"Save backup codes" : "Uložit záložní kódy",
"Print backup codes" : "Vytisknout záložní kódy",
"Regenerate backup codes" : "Vytvořit nové záložní kódy",
- "If you regenerate backup codes, you automatically invalidate old codes." : "Pokud vytvoříte nové záložní kódy, staré budou automaticky zrušeny.",
+ "If you regenerate backup codes, you automatically invalidate old codes." : "Pokud necháte vytvořit nové záložní kódy, staré budou automaticky zneplatněny.",
"An error occurred while generating your backup codes" : "Při pokusu o vytvoření záložních kódů nastala chyba.",
"Nextcloud backup codes" : "Nextcloud záložní kódy",
"You created two-factor backup codes for your account" : "Vytvořil(a) jste záložní kódy dvoufázové autentizace pro váš účet",
diff --git a/apps/twofactor_backupcodes/l10n/cs.json b/apps/twofactor_backupcodes/l10n/cs.json
index 717bbd45bdc..a445d236216 100644
--- a/apps/twofactor_backupcodes/l10n/cs.json
+++ b/apps/twofactor_backupcodes/l10n/cs.json
@@ -1,11 +1,11 @@
{ "translations": {
"Generate backup codes" : "Vytvořit záložní kódy",
"Backup codes have been generated. {{used}} of {{total}} codes have been used." : "Záložní kódy byly vytvořeny. {{used}} z {{total}} kódů bylo využito.",
- "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later" : "Zde jsou vaše záložní kódy. Kódy si prosím uložte a/nebo vytiskněte, protože je nebude možné později zobrazit.",
+ "These are your backup codes. Please save and/or print them as you will not be able to read the codes again later" : "Zde jsou vaše záložní kódy. Kódy si uložte a/nebo vytiskněte, protože už je nebude možné zobrazit znovu.",
"Save backup codes" : "Uložit záložní kódy",
"Print backup codes" : "Vytisknout záložní kódy",
"Regenerate backup codes" : "Vytvořit nové záložní kódy",
- "If you regenerate backup codes, you automatically invalidate old codes." : "Pokud vytvoříte nové záložní kódy, staré budou automaticky zrušeny.",
+ "If you regenerate backup codes, you automatically invalidate old codes." : "Pokud necháte vytvořit nové záložní kódy, staré budou automaticky zneplatněny.",
"An error occurred while generating your backup codes" : "Při pokusu o vytvoření záložních kódů nastala chyba.",
"Nextcloud backup codes" : "Nextcloud záložní kódy",
"You created two-factor backup codes for your account" : "Vytvořil(a) jste záložní kódy dvoufázové autentizace pro váš účet",
diff --git a/apps/updatenotification/js/updatenotification.js b/apps/updatenotification/js/updatenotification.js
index 5aa9b51c276..3122ccd4879 100644
--- a/apps/updatenotification/js/updatenotification.js
+++ b/apps/updatenotification/js/updatenotification.js
@@ -4,7 +4,7 @@
* (c) 2014-2018 Evan You
* Released under the MIT License.
*/
-var r=Object.freeze({});function i(e){return void 0===e||null===e}function o(e){return void 0!==e&&null!==e}function a(e){return!0===e}function s(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function c(e){return null!==e&&"object"==typeof e}var u=Object.prototype.toString;function l(e){return"[object Object]"===u.call(e)}function f(e){return"[object RegExp]"===u.call(e)}function p(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function d(e){return null==e?"":"object"==typeof e?JSON.stringify(e,null,2):String(e)}function h(e){var t=parseFloat(e);return isNaN(t)?e:t}function v(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var m=v("slot,component",!0),g=v("key,ref,slot,slot-scope,is");function y(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var _=Object.prototype.hasOwnProperty;function b(e,t){return _.call(e,t)}function w(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var x=/-(\w)/g,C=w(function(e){return e.replace(x,function(e,t){return t?t.toUpperCase():""})}),O=w(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),k=/\B([A-Z])/g,$=w(function(e){return e.replace(k,"-$1").toLowerCase()});var S=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function A(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function T(e,t){for(var n in t)e[n]=t[n];return e}function E(e){for(var t={},n=0;n<e.length;n++)e[n]&&T(t,e[n]);return t}function L(e,t,n){}var M=function(e,t,n){return!1},j=function(e){return e};function P(e,t){if(e===t)return!0;var n=c(e),r=c(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),o=Array.isArray(t);if(i&&o)return e.length===t.length&&e.every(function(e,n){return P(e,t[n])});if(i||o)return!1;var a=Object.keys(e),s=Object.keys(t);return a.length===s.length&&a.every(function(n){return P(e[n],t[n])})}catch(e){return!1}}function N(e,t){for(var n=0;n<e.length;n++)if(P(e[n],t))return n;return-1}function I(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var D="data-server-rendered",U=["component","directive","filter"],R=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured"],F={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:M,isReservedAttr:M,isUnknownElement:M,getTagNamespace:L,parsePlatformTagName:j,mustUseProp:M,_lifecycleHooks:R};function V(e){var t=(e+"").charCodeAt(0);return 36===t||95===t}function B(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var H=/[^\w.$]/;var W,z="__proto__"in{},K="undefined"!=typeof window,G="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,J=G&&WXEnvironment.platform.toLowerCase(),q=K&&window.navigator.userAgent.toLowerCase(),X=q&&/msie|trident/.test(q),Z=q&&q.indexOf("msie 9.0")>0,Y=q&&q.indexOf("edge/")>0,Q=(q&&q.indexOf("android"),q&&/iphone|ipad|ipod|ios/.test(q)||"ios"===J),ee=(q&&/chrome\/\d+/.test(q),{}.watch),te=!1;if(K)try{var ne={};Object.defineProperty(ne,"passive",{get:function(){te=!0}}),window.addEventListener("test-passive",null,ne)}catch(e){}var re=function(){return void 0===W&&(W=!K&&!G&&void 0!==e&&"server"===e.process.env.VUE_ENV),W},ie=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function oe(e){return"function"==typeof e&&/native code/.test(e.toString())}var ae,se="undefined"!=typeof Symbol&&oe(Symbol)&&"undefined"!=typeof Reflect&&oe(Reflect.ownKeys);ae="undefined"!=typeof Set&&oe(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ce=L,ue=0,le=function(){this.id=ue++,this.subs=[]};le.prototype.addSub=function(e){this.subs.push(e)},le.prototype.removeSub=function(e){y(this.subs,e)},le.prototype.depend=function(){le.target&&le.target.addDep(this)},le.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t<n;t++)e[t].update()},le.target=null;var fe=[];function pe(e){le.target&&fe.push(le.target),le.target=e}function de(){le.target=fe.pop()}var he=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},ve={child:{configurable:!0}};ve.child.get=function(){return this.componentInstance},Object.defineProperties(he.prototype,ve);var me=function(e){void 0===e&&(e="");var t=new he;return t.text=e,t.isComment=!0,t};function ge(e){return new he(void 0,void 0,void 0,String(e))}function ye(e){var t=new he(e.tag,e.data,e.children,e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.isCloned=!0,t}var _e=Array.prototype,be=Object.create(_e);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(e){var t=_e[e];B(be,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var we=Object.getOwnPropertyNames(be),xe=!0;function Ce(e){xe=e}var Oe=function(e){(this.value=e,this.dep=new le,this.vmCount=0,B(e,"__ob__",this),Array.isArray(e))?((z?ke:$e)(e,be,we),this.observeArray(e)):this.walk(e)};function ke(e,t,n){e.__proto__=t}function $e(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];B(e,o,t[o])}}function Se(e,t){var n;if(c(e)&&!(e instanceof he))return b(e,"__ob__")&&e.__ob__ instanceof Oe?n=e.__ob__:xe&&!re()&&(Array.isArray(e)||l(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new Oe(e)),t&&n&&n.vmCount++,n}function Ae(e,t,n,r,i){var o=new le,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get;s||2!==arguments.length||(n=e[t]);var c=a&&a.set,u=!i&&Se(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return le.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&function e(t){for(var n=void 0,r=0,i=t.length;r<i;r++)(n=t[r])&&n.__ob__&&n.__ob__.dep.depend(),Array.isArray(n)&&e(n)}(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||(c?c.call(e,t):n=t,u=!i&&Se(t),o.notify())}})}}function Te(e,t,n){if(Array.isArray(e)&&p(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(Ae(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function Ee(e,t){if(Array.isArray(e)&&p(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||b(e,t)&&(delete e[t],n&&n.dep.notify())}}Oe.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)Ae(e,t[n])},Oe.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Se(e[t])};var Le=F.optionMergeStrategies;function Me(e,t){if(!t)return e;for(var n,r,i,o=Object.keys(t),a=0;a<o.length;a++)r=e[n=o[a]],i=t[n],b(e,n)?l(r)&&l(i)&&Me(r,i):Te(e,n,i);return e}function je(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Me(r,i):i}:t?e?function(){return Me("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Pe(e,t){return t?e?e.concat(t):Array.isArray(t)?t:[t]:e}function Ne(e,t,n,r){var i=Object.create(e||null);return t?T(i,t):i}Le.data=function(e,t,n){return n?je(e,t,n):t&&"function"!=typeof t?e:je(e,t)},R.forEach(function(e){Le[e]=Pe}),U.forEach(function(e){Le[e+"s"]=Ne}),Le.watch=function(e,t,n,r){if(e===ee&&(e=void 0),t===ee&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in T(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Le.props=Le.methods=Le.inject=Le.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return T(i,e),t&&T(i,t),i},Le.provide=je;var Ie=function(e,t){return void 0===t?e:t};function De(e,t,n){"function"==typeof t&&(t=t.options),function(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[C(i)]={type:null});else if(l(n))for(var a in n)i=n[a],o[C(a)]=l(i)?i:{type:i};e.props=o}}(t),function(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(l(n))for(var o in n){var a=n[o];r[o]=l(a)?T({from:o},a):{from:a}}}}(t),function(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}(t);var r=t.extends;if(r&&(e=De(e,r,n)),t.mixins)for(var i=0,o=t.mixins.length;i<o;i++)e=De(e,t.mixins[i],n);var a,s={};for(a in e)c(a);for(a in t)b(e,a)||c(a);function c(r){var i=Le[r]||Ie;s[r]=i(e[r],t[r],n,r)}return s}function Ue(e,t,n,r){if("string"==typeof n){var i=e[t];if(b(i,n))return i[n];var o=C(n);if(b(i,o))return i[o];var a=O(o);return b(i,a)?i[a]:i[n]||i[o]||i[a]}}function Re(e,t,n,r){var i=t[e],o=!b(n,e),a=n[e],s=Be(Boolean,i.type);if(s>-1)if(o&&!b(i,"default"))a=!1;else if(""===a||a===$(e)){var c=Be(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(e,t,n){if(!b(t,"default"))return;var r=t.default;0;if(e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n])return e._props[n];return"function"==typeof r&&"Function"!==Fe(t.type)?r.call(e):r}(r,i,e);var u=xe;Ce(!0),Se(a),Ce(u)}return a}function Fe(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function Ve(e,t){return Fe(e)===Fe(t)}function Be(e,t){if(!Array.isArray(t))return Ve(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(Ve(t[n],e))return n;return-1}function He(e,t,n){if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(e){We(e,r,"errorCaptured hook")}}We(e,t,n)}function We(e,t,n){if(F.errorHandler)try{return F.errorHandler.call(null,e,t,n)}catch(e){ze(e,null,"config.errorHandler")}ze(e,t,n)}function ze(e,t,n){if(!K&&!G||"undefined"==typeof console)throw e;console.error(e)}var Ke,Ge,Je=[],qe=!1;function Xe(){qe=!1;var e=Je.slice(0);Je.length=0;for(var t=0;t<e.length;t++)e[t]()}var Ze=!1;if(void 0!==n&&oe(n))Ge=function(){n(Xe)};else if("undefined"==typeof MessageChannel||!oe(MessageChannel)&&"[object MessageChannelConstructor]"!==MessageChannel.toString())Ge=function(){setTimeout(Xe,0)};else{var Ye=new MessageChannel,Qe=Ye.port2;Ye.port1.onmessage=Xe,Ge=function(){Qe.postMessage(1)}}if("undefined"!=typeof Promise&&oe(Promise)){var et=Promise.resolve();Ke=function(){et.then(Xe),Q&&setTimeout(L)}}else Ke=Ge;function tt(e,t){var n;if(Je.push(function(){if(e)try{e.call(t)}catch(e){He(e,t,"nextTick")}else n&&n(t)}),qe||(qe=!0,Ze?Ge():Ke()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var nt=new ae;function rt(e){!function e(t,n){var r,i;var o=Array.isArray(t);if(!o&&!c(t)||Object.isFrozen(t)||t instanceof he)return;if(t.__ob__){var a=t.__ob__.dep.id;if(n.has(a))return;n.add(a)}if(o)for(r=t.length;r--;)e(t[r],n);else for(i=Object.keys(t),r=i.length;r--;)e(t[i[r]],n)}(e,nt),nt.clear()}var it,ot=w(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function at(e){function t(){var e=arguments,n=t.fns;if(!Array.isArray(n))return n.apply(null,arguments);for(var r=n.slice(),i=0;i<r.length;i++)r[i].apply(null,e)}return t.fns=e,t}function st(e,t,n,r,o){var a,s,c,u;for(a in e)s=e[a],c=t[a],u=ot(a),i(s)||(i(c)?(i(s.fns)&&(s=e[a]=at(s)),n(u.name,s,u.once,u.capture,u.passive,u.params)):s!==c&&(c.fns=s,e[a]=c));for(a in t)i(e[a])&&r((u=ot(a)).name,t[a],u.capture)}function ct(e,t,n){var r;e instanceof he&&(e=e.data.hook||(e.data.hook={}));var s=e[t];function c(){n.apply(this,arguments),y(r.fns,c)}i(s)?r=at([c]):o(s.fns)&&a(s.merged)?(r=s).fns.push(c):r=at([s,c]),r.merged=!0,e[t]=r}function ut(e,t,n,r,i){if(o(t)){if(b(t,n))return e[n]=t[n],i||delete t[n],!0;if(b(t,r))return e[n]=t[r],i||delete t[r],!0}return!1}function lt(e){return s(e)?[ge(e)]:Array.isArray(e)?function e(t,n){var r=[];var c,u,l,f;for(c=0;c<t.length;c++)i(u=t[c])||"boolean"==typeof u||(l=r.length-1,f=r[l],Array.isArray(u)?u.length>0&&(ft((u=e(u,(n||"")+"_"+c))[0])&&ft(f)&&(r[l]=ge(f.text+u[0].text),u.shift()),r.push.apply(r,u)):s(u)?ft(f)?r[l]=ge(f.text+u):""!==u&&r.push(ge(u)):ft(u)&&ft(f)?r[l]=ge(f.text+u.text):(a(t._isVList)&&o(u.tag)&&i(u.key)&&o(n)&&(u.key="__vlist"+n+"_"+c+"__"),r.push(u)));return r}(e):void 0}function ft(e){return o(e)&&o(e.text)&&function(e){return!1===e}(e.isComment)}function pt(e,t){return(e.__esModule||se&&"Module"===e[Symbol.toStringTag])&&(e=e.default),c(e)?t.extend(e):e}function dt(e){return e.isComment&&e.asyncFactory}function ht(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var n=e[t];if(o(n)&&(o(n.componentOptions)||dt(n)))return n}}function vt(e,t,n){n?it.$once(e,t):it.$on(e,t)}function mt(e,t){it.$off(e,t)}function gt(e,t,n){it=e,st(t,n||{},vt,mt),it=void 0}function yt(e,t){var n={};if(!e)return n;for(var r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(_t)&&delete n[u];return n}function _t(e){return e.isComment&&!e.asyncFactory||" "===e.text}function bt(e,t){t=t||{};for(var n=0;n<e.length;n++)Array.isArray(e[n])?bt(e[n],t):t[e[n].key]=e[n].fn;return t}var wt=null;function xt(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function Ct(e,t){if(t){if(e._directInactive=!1,xt(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)Ct(e.$children[n]);Ot(e,"activated")}}function Ot(e,t){pe();var n=e.$options[t];if(n)for(var r=0,i=n.length;r<i;r++)try{n[r].call(e)}catch(n){He(n,e,t+" hook")}e._hasHookEvent&&e.$emit("hook:"+t),de()}var kt=[],$t=[],St={},At=!1,Tt=!1,Et=0;function Lt(){var e,t;for(Tt=!0,kt.sort(function(e,t){return e.id-t.id}),Et=0;Et<kt.length;Et++)t=(e=kt[Et]).id,St[t]=null,e.run();var n=$t.slice(),r=kt.slice();Et=kt.length=$t.length=0,St={},At=Tt=!1,function(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,Ct(e[t],!0)}(n),function(e){var t=e.length;for(;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&Ot(r,"updated")}}(r),ie&&F.devtools&&ie.emit("flush")}var Mt=0,jt=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++Mt,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ae,this.newDepIds=new ae,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!H.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}(t),this.getter||(this.getter=function(){})),this.value=this.lazy?void 0:this.get()};jt.prototype.get=function(){var e;pe(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(e){if(!this.user)throw e;He(e,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&rt(e),de(),this.cleanupDeps()}return e},jt.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},jt.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},jt.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(e){var t=e.id;if(null==St[t]){if(St[t]=!0,Tt){for(var n=kt.length-1;n>Et&&kt[n].id>e.id;)n--;kt.splice(n+1,0,e)}else kt.push(e);At||(At=!0,tt(Lt))}}(this)},jt.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||c(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){He(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},jt.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},jt.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},jt.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var Pt={enumerable:!0,configurable:!0,get:L,set:L};function Nt(e,t,n){Pt.get=function(){return this[t][n]},Pt.set=function(e){this[t][n]=e},Object.defineProperty(e,n,Pt)}function It(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&Ce(!1);var o=function(o){i.push(o);var a=Re(o,t,n,e);Ae(r,o,a),o in e||Nt(e,"_props",o)};for(var a in t)o(a);Ce(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]=null==t[n]?L:S(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;l(t=e._data="function"==typeof t?function(e,t){pe();try{return e.call(t,t)}catch(e){return He(e,t,"data()"),{}}finally{de()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];0,r&&b(r,o)||V(o)||Nt(e,"_data",o)}Se(t,!0)}(e):Se(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=re();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;0,r||(n[i]=new jt(e,a||L,L,Dt)),i in e||Ut(e,i,o)}}(e,t.computed),t.watch&&t.watch!==ee&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)Ft(e,n,r[i]);else Ft(e,n,r)}}(e,t.watch)}var Dt={lazy:!0};function Ut(e,t,n){var r=!re();"function"==typeof n?(Pt.get=r?Rt(t):n,Pt.set=L):(Pt.get=n.get?r&&!1!==n.cache?Rt(t):n.get:L,Pt.set=n.set?n.set:L),Object.defineProperty(e,t,Pt)}function Rt(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),le.target&&t.depend(),t.value}}function Ft(e,t,n,r){return l(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}function Vt(e,t){if(e){for(var n=Object.create(null),r=se?Reflect.ownKeys(e).filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}):Object.keys(e),i=0;i<r.length;i++){for(var o=r[i],a=e[o].from,s=t;s;){if(s._provided&&b(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s)if("default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}else 0}return n}}function Bt(e,t){var n,r,i,a,s;if(Array.isArray(e)||"string"==typeof e)for(n=new Array(e.length),r=0,i=e.length;r<i;r++)n[r]=t(e[r],r);else if("number"==typeof e)for(n=new Array(e),r=0;r<e;r++)n[r]=t(r+1,r);else if(c(e))for(a=Object.keys(e),n=new Array(a.length),r=0,i=a.length;r<i;r++)s=a[r],n[r]=t(e[s],s,r);return o(n)&&(n._isVList=!0),n}function Ht(e,t,n,r){var i,o=this.$scopedSlots[e];if(o)n=n||{},r&&(n=T(T({},r),n)),i=o(n)||t;else{var a=this.$slots[e];a&&(a._rendered=!0),i=a||t}var s=n&&n.slot;return s?this.$createElement("template",{slot:s},i):i}function Wt(e){return Ue(this.$options,"filters",e)||j}function zt(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function Kt(e,t,n,r,i){var o=F.keyCodes[t]||n;return i&&r&&!F.keyCodes[t]?zt(i,r):o?zt(o,e):r?$(r)!==t:void 0}function Gt(e,t,n,r,i){if(n)if(c(n)){var o;Array.isArray(n)&&(n=E(n));var a=function(a){if("class"===a||"style"===a||g(a))o=e;else{var s=e.attrs&&e.attrs.type;o=r||F.mustUseProp(t,s,a)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}a in o||(o[a]=n[a],i&&((e.on||(e.on={}))["update:"+a]=function(e){n[a]=e}))};for(var s in n)a(s)}else;return e}function Jt(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(Xt(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function qt(e,t,n){return Xt(e,"__once__"+t+(n?"_"+n:""),!0),e}function Xt(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&Zt(e[r],t+"_"+r,n);else Zt(e,t,n)}function Zt(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function Yt(e,t){if(t)if(l(t)){var n=e.on=e.on?T({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function Qt(e){e._o=qt,e._n=h,e._s=d,e._l=Bt,e._t=Ht,e._q=P,e._i=N,e._m=Jt,e._f=Wt,e._k=Kt,e._b=Gt,e._v=ge,e._e=me,e._u=bt,e._g=Yt}function en(e,t,n,i,o){var s,c=o.options;b(i,"_uid")?(s=Object.create(i))._original=i:(s=i,i=i._original);var u=a(c._compiled),l=!u;this.data=e,this.props=t,this.children=n,this.parent=i,this.listeners=e.on||r,this.injections=Vt(c.inject,i),this.slots=function(){return yt(n,i)},u&&(this.$options=c,this.$slots=this.slots(),this.$scopedSlots=e.scopedSlots||r),c._scopeId?this._c=function(e,t,n,r){var o=un(s,e,t,n,r,l);return o&&!Array.isArray(o)&&(o.fnScopeId=c._scopeId,o.fnContext=i),o}:this._c=function(e,t,n,r){return un(s,e,t,n,r,l)}}function tn(e,t,n,r){var i=ye(e);return i.fnContext=n,i.fnOptions=r,t.slot&&((i.data||(i.data={})).slot=t.slot),i}function nn(e,t){for(var n in t)e[C(n)]=t[n]}Qt(en.prototype);var rn={init:function(e,t,n,r){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var i=e;rn.prepatch(i,i)}else{(e.componentInstance=function(e,t,n,r){var i={_isComponent:!0,parent:t,_parentVnode:e,_parentElm:n||null,_refElm:r||null},a=e.data.inlineTemplate;o(a)&&(i.render=a.render,i.staticRenderFns=a.staticRenderFns);return new e.componentOptions.Ctor(i)}(e,wt,n,r)).$mount(t?e.elm:void 0,t)}},prepatch:function(e,t){var n=t.componentOptions;!function(e,t,n,i,o){var a=!!(o||e.$options._renderChildren||i.data.scopedSlots||e.$scopedSlots!==r);if(e.$options._parentVnode=i,e.$vnode=i,e._vnode&&(e._vnode.parent=i),e.$options._renderChildren=o,e.$attrs=i.data.attrs||r,e.$listeners=n||r,t&&e.$options.props){Ce(!1);for(var s=e._props,c=e.$options._propKeys||[],u=0;u<c.length;u++){var l=c[u],f=e.$options.props;s[l]=Re(l,f,t,e)}Ce(!0),e.$options.propsData=t}n=n||r;var p=e.$options._parentListeners;e.$options._parentListeners=n,gt(e,n,p),a&&(e.$slots=yt(o,i.context),e.$forceUpdate())}(t.componentInstance=e.componentInstance,n.propsData,n.listeners,t,n.children)},insert:function(e){var t=e.context,n=e.componentInstance;n._isMounted||(n._isMounted=!0,Ot(n,"mounted")),e.data.keepAlive&&(t._isMounted?function(e){e._inactive=!1,$t.push(e)}(n):Ct(n,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?function e(t,n){if(!(n&&(t._directInactive=!0,xt(t))||t._inactive)){t._inactive=!0;for(var r=0;r<t.$children.length;r++)e(t.$children[r]);Ot(t,"deactivated")}}(t,!0):t.$destroy())}},on=Object.keys(rn);function an(e,t,n,s,u){if(!i(e)){var l=n.$options._base;if(c(e)&&(e=l.extend(e)),"function"==typeof e){var f;if(i(e.cid)&&void 0===(e=function(e,t,n){if(a(e.error)&&o(e.errorComp))return e.errorComp;if(o(e.resolved))return e.resolved;if(a(e.loading)&&o(e.loadingComp))return e.loadingComp;if(!o(e.contexts)){var r=e.contexts=[n],s=!0,u=function(){for(var e=0,t=r.length;e<t;e++)r[e].$forceUpdate()},l=I(function(n){e.resolved=pt(n,t),s||u()}),f=I(function(t){o(e.errorComp)&&(e.error=!0,u())}),p=e(l,f);return c(p)&&("function"==typeof p.then?i(e.resolved)&&p.then(l,f):o(p.component)&&"function"==typeof p.component.then&&(p.component.then(l,f),o(p.error)&&(e.errorComp=pt(p.error,t)),o(p.loading)&&(e.loadingComp=pt(p.loading,t),0===p.delay?e.loading=!0:setTimeout(function(){i(e.resolved)&&i(e.error)&&(e.loading=!0,u())},p.delay||200)),o(p.timeout)&&setTimeout(function(){i(e.resolved)&&f(null)},p.timeout))),s=!1,e.loading?e.loadingComp:e.resolved}e.contexts.push(n)}(f=e,l,n)))return function(e,t,n,r,i){var o=me();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}(f,t,n,s,u);t=t||{},fn(e),o(t.model)&&function(e,t){var n=e.model&&e.model.prop||"value",r=e.model&&e.model.event||"input";(t.props||(t.props={}))[n]=t.model.value;var i=t.on||(t.on={});o(i[r])?i[r]=[t.model.callback].concat(i[r]):i[r]=t.model.callback}(e.options,t);var p=function(e,t,n){var r=t.options.props;if(!i(r)){var a={},s=e.attrs,c=e.props;if(o(s)||o(c))for(var u in r){var l=$(u);ut(a,c,u,l,!0)||ut(a,s,u,l,!1)}return a}}(t,e);if(a(e.options.functional))return function(e,t,n,i,a){var s=e.options,c={},u=s.props;if(o(u))for(var l in u)c[l]=Re(l,u,t||r);else o(n.attrs)&&nn(c,n.attrs),o(n.props)&&nn(c,n.props);var f=new en(n,c,a,i,e),p=s.render.call(null,f._c,f);if(p instanceof he)return tn(p,n,f.parent,s);if(Array.isArray(p)){for(var d=lt(p)||[],h=new Array(d.length),v=0;v<d.length;v++)h[v]=tn(d[v],n,f.parent,s);return h}}(e,p,t,n,s);var d=t.on;if(t.on=t.nativeOn,a(e.options.abstract)){var h=t.slot;t={},h&&(t.slot=h)}!function(e){for(var t=e.hook||(e.hook={}),n=0;n<on.length;n++){var r=on[n];t[r]=rn[r]}}(t);var v=e.options.name||u;return new he("vue-component-"+e.cid+(v?"-"+v:""),t,void 0,void 0,void 0,n,{Ctor:e,propsData:p,listeners:d,tag:u,children:s},f)}}}var sn=1,cn=2;function un(e,t,n,r,u,l){return(Array.isArray(n)||s(n))&&(u=r,r=n,n=void 0),a(l)&&(u=cn),function(e,t,n,r,s){if(o(n)&&o(n.__ob__))return me();o(n)&&o(n.is)&&(t=n.is);if(!t)return me();0;Array.isArray(r)&&"function"==typeof r[0]&&((n=n||{}).scopedSlots={default:r[0]},r.length=0);s===cn?r=lt(r):s===sn&&(r=function(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}(r));var u,l;if("string"==typeof t){var f;l=e.$vnode&&e.$vnode.ns||F.getTagNamespace(t),u=F.isReservedTag(t)?new he(F.parsePlatformTagName(t),n,r,void 0,void 0,e):o(f=Ue(e.$options,"components",t))?an(f,n,e,r,t):new he(t,n,r,void 0,void 0,e)}else u=an(t,n,e,r);return Array.isArray(u)?u:o(u)?(o(l)&&function e(t,n,r){t.ns=n;"foreignObject"===t.tag&&(n=void 0,r=!0);if(o(t.children))for(var s=0,c=t.children.length;s<c;s++){var u=t.children[s];o(u.tag)&&(i(u.ns)||a(r)&&"svg"!==u.tag)&&e(u,n,r)}}(u,l),o(n)&&function(e){c(e.style)&&rt(e.style);c(e.class)&&rt(e.class)}(n),u):me()}(e,t,n,r,u)}var ln=0;function fn(e){var t=e.options;if(e.super){var n=fn(e.super);if(n!==e.superOptions){e.superOptions=n;var r=function(e){var t,n=e.options,r=e.extendOptions,i=e.sealedOptions;for(var o in n)n[o]!==i[o]&&(t||(t={}),t[o]=pn(n[o],r[o],i[o]));return t}(e);r&&T(e.extendOptions,r),(t=e.options=De(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function pn(e,t,n){if(Array.isArray(e)){var r=[];n=Array.isArray(n)?n:[n],t=Array.isArray(t)?t:[t];for(var i=0;i<e.length;i++)(t.indexOf(e[i])>=0||n.indexOf(e[i])<0)&&r.push(e[i]);return r}return e}function dn(e){this._init(e)}function hn(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name;var a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=De(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)Nt(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)Ut(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,U.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=T({},a.options),i[r]=a,a}}function vn(e){return e&&(e.Ctor.options.name||e.tag)}function mn(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:!!f(e)&&e.test(t)}function gn(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=vn(a.componentOptions);s&&!t(s)&&yn(n,o,r,i)}}}function yn(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,y(n,t)}!function(e){e.prototype._init=function(e){var t=this;t._uid=ln++,t._isVue=!0,e&&e._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r,n._parentElm=t._parentElm,n._refElm=t._refElm;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(t,e):t.$options=De(fn(t.constructor),e||{},t),t._renderProxy=t,t._self=t,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(t),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&gt(e,t)}(t),function(e){e._vnode=null,e._staticTrees=null;var t=e.$options,n=e.$vnode=t._parentVnode,i=n&&n.context;e.$slots=yt(t._renderChildren,i),e.$scopedSlots=r,e._c=function(t,n,r,i){return un(e,t,n,r,i,!1)},e.$createElement=function(t,n,r,i){return un(e,t,n,r,i,!0)};var o=n&&n.data;Ae(e,"$attrs",o&&o.attrs||r,null,!0),Ae(e,"$listeners",t._parentListeners||r,null,!0)}(t),Ot(t,"beforeCreate"),function(e){var t=Vt(e.$options.inject,e);t&&(Ce(!1),Object.keys(t).forEach(function(n){Ae(e,n,t[n])}),Ce(!0))}(t),It(t),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(t),Ot(t,"created"),t.$options.el&&t.$mount(t.$options.el)}}(dn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=Te,e.prototype.$delete=Ee,e.prototype.$watch=function(e,t,n){if(l(t))return Ft(this,e,t,n);(n=n||{}).user=!0;var r=new jt(this,e,t,n);return n.immediate&&t.call(this,r.value),function(){r.teardown()}}}(dn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){if(Array.isArray(e))for(var r=0,i=e.length;r<i;r++)this.$on(e[r],n);else(this._events[e]||(this._events[e]=[])).push(n),t.test(e)&&(this._hasHookEvent=!0);return this},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)this.$off(e[r],t);return n}var o=n._events[e];if(!o)return n;if(!t)return n._events[e]=null,n;if(t)for(var a,s=o.length;s--;)if((a=o[s])===t||a.fn===t){o.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this._events[e];if(t){t=t.length>1?A(t):t;for(var n=A(arguments,1),r=0,i=t.length;r<i;r++)try{t[r].apply(this,n)}catch(t){He(t,this,'event handler for "'+e+'"')}}return this}}(dn),function(e){e.prototype._update=function(e,t){var n=this;n._isMounted&&Ot(n,"beforeUpdate");var r=n.$el,i=n._vnode,o=wt;wt=n,n._vnode=e,i?n.$el=n.__patch__(i,e):(n.$el=n.__patch__(n.$el,e,t,!1,n.$options._parentElm,n.$options._refElm),n.$options._parentElm=n.$options._refElm=null),wt=o,r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){Ot(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||y(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),Ot(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}(dn),function(e){Qt(e.prototype),e.prototype.$nextTick=function(e){return tt(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,i=n.render,o=n._parentVnode;o&&(t.$scopedSlots=o.data.scopedSlots||r),t.$vnode=o;try{e=i.call(t._renderProxy,t.$createElement)}catch(n){He(n,t,"render"),e=t._vnode}return e instanceof he||(e=me()),e.parent=o,e}}(dn);var _n=[String,RegExp,Array],bn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:_n,exclude:_n,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)yn(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){gn(e,function(e){return mn(t,e)})}),this.$watch("exclude",function(t){gn(e,function(e){return!mn(t,e)})})},render:function(){var e=this.$slots.default,t=ht(e),n=t&&t.componentOptions;if(n){var r=vn(n),i=this.include,o=this.exclude;if(i&&(!r||!mn(i,r))||o&&r&&mn(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,y(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&yn(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ce,extend:T,mergeOptions:De,defineReactive:Ae},e.set=Te,e.delete=Ee,e.nextTick=tt,e.options=Object.create(null),U.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,T(e.options.components,bn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=A(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),hn(e),function(e){U.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&l(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(dn),Object.defineProperty(dn.prototype,"$isServer",{get:re}),Object.defineProperty(dn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(dn,"FunctionalRenderContext",{value:en}),dn.version="2.5.17";var wn=v("style,class"),xn=v("input,textarea,option,select,progress"),Cn=function(e,t,n){return"value"===n&&xn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},On=v("contenteditable,draggable,spellcheck"),kn=v("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),$n="http://www.w3.org/1999/xlink",Sn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},An=function(e){return Sn(e)?e.slice(6,e.length):""},Tn=function(e){return null==e||!1===e};function En(e){for(var t=e.data,n=e,r=e;o(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(t=Ln(r.data,t));for(;o(n=n.parent);)n&&n.data&&(t=Ln(t,n.data));return function(e,t){if(o(e)||o(t))return Mn(e,jn(t));return""}(t.staticClass,t.class)}function Ln(e,t){return{staticClass:Mn(e.staticClass,t.staticClass),class:o(e.class)?[e.class,t.class]:t.class}}function Mn(e,t){return e?t?e+" "+t:e:t||""}function jn(e){return Array.isArray(e)?function(e){for(var t,n="",r=0,i=e.length;r<i;r++)o(t=jn(e[r]))&&""!==t&&(n&&(n+=" "),n+=t);return n}(e):c(e)?function(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}(e):"string"==typeof e?e:""}var Pn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Nn=v("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),In=v("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Dn=function(e){return Nn(e)||In(e)};function Un(e){return In(e)?"svg":"math"===e?"math":void 0}var Rn=Object.create(null);var Fn=v("text,number,password,search,email,tel,url");function Vn(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}var Bn=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(Pn[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setStyleScope:function(e,t){e.setAttribute(t,"")}}),Hn={create:function(e,t){Wn(t)},update:function(e,t){e.data.ref!==t.data.ref&&(Wn(e,!0),Wn(t))},destroy:function(e){Wn(e,!0)}};function Wn(e,t){var n=e.data.ref;if(o(n)){var r=e.context,i=e.componentInstance||e.elm,a=r.$refs;t?Array.isArray(a[n])?y(a[n],i):a[n]===i&&(a[n]=void 0):e.data.refInFor?Array.isArray(a[n])?a[n].indexOf(i)<0&&a[n].push(i):a[n]=[i]:a[n]=i}}var zn=new he("",{},[]),Kn=["create","activate","update","remove","destroy"];function Gn(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&o(e.data)===o(t.data)&&function(e,t){if("input"!==e.tag)return!0;var n,r=o(n=e.data)&&o(n=n.attrs)&&n.type,i=o(n=t.data)&&o(n=n.attrs)&&n.type;return r===i||Fn(r)&&Fn(i)}(e,t)||a(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&i(t.asyncFactory.error))}function Jn(e,t,n){var r,i,a={};for(r=t;r<=n;++r)o(i=e[r].key)&&(a[i]=r);return a}var qn={create:Xn,update:Xn,destroy:function(e){Xn(e,zn)}};function Xn(e,t){(e.data.directives||t.data.directives)&&function(e,t){var n,r,i,o=e===zn,a=t===zn,s=Yn(e.data.directives,e.context),c=Yn(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,er(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(er(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)er(u[n],"inserted",t,e)};o?ct(t,"insert",f):f()}l.length&&ct(t,"postpatch",function(){for(var n=0;n<l.length;n++)er(l[n],"componentUpdated",t,e)});if(!o)for(n in s)c[n]||er(s[n],"unbind",e,e,a)}(e,t)}var Zn=Object.create(null);function Yn(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=Zn),i[Qn(r)]=r,r.def=Ue(t.$options,"directives",r.name);return i}function Qn(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function er(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(r){He(r,n.context,"directive "+e.name+" "+t+" hook")}}var tr=[Hn,qn];function nr(e,t){var n=t.componentOptions;if(!(o(n)&&!1===n.Ctor.options.inheritAttrs||i(e.data.attrs)&&i(t.data.attrs))){var r,a,s=t.elm,c=e.data.attrs||{},u=t.data.attrs||{};for(r in o(u.__ob__)&&(u=t.data.attrs=T({},u)),u)a=u[r],c[r]!==a&&rr(s,r,a);for(r in(X||Y)&&u.value!==c.value&&rr(s,"value",u.value),c)i(u[r])&&(Sn(r)?s.removeAttributeNS($n,An(r)):On(r)||s.removeAttribute(r))}}function rr(e,t,n){e.tagName.indexOf("-")>-1?ir(e,t,n):kn(t)?Tn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):On(t)?e.setAttribute(t,Tn(n)||"false"===n?"false":"true"):Sn(t)?Tn(n)?e.removeAttributeNS($n,An(t)):e.setAttributeNS($n,t,n):ir(e,t,n)}function ir(e,t,n){if(Tn(n))e.removeAttribute(t);else{if(X&&!Z&&"TEXTAREA"===e.tagName&&"placeholder"===t&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var or={create:nr,update:nr};function ar(e,t){var n=t.elm,r=t.data,a=e.data;if(!(i(r.staticClass)&&i(r.class)&&(i(a)||i(a.staticClass)&&i(a.class)))){var s=En(t),c=n._transitionClasses;o(c)&&(s=Mn(s,jn(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var sr,cr,ur,lr,fr,pr,dr={create:ar,update:ar},hr=/[\w).+\-_$\]]/;function vr(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var h=r-1,v=void 0;h>=0&&" "===(v=e.charAt(h));h--);v&&hr.test(v)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=mr(i,o[r]);return i}function mr(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function gr(e){console.error("[Vue compiler]: "+e)}function yr(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function _r(e,t,n){(e.props||(e.props=[])).push({name:t,value:n}),e.plain=!1}function br(e,t,n){(e.attrs||(e.attrs=[])).push({name:t,value:n}),e.plain=!1}function wr(e,t,n){e.attrsMap[t]=n,e.attrsList.push({name:t,value:n})}function xr(e,t,n,r,i,o){(e.directives||(e.directives=[])).push({name:t,rawName:n,value:r,arg:i,modifiers:o}),e.plain=!1}function Cr(e,t,n,i,o,a){var s;(i=i||r).capture&&(delete i.capture,t="!"+t),i.once&&(delete i.once,t="~"+t),i.passive&&(delete i.passive,t="&"+t),"click"===t&&(i.right?(t="contextmenu",delete i.right):i.middle&&(t="mouseup")),i.native?(delete i.native,s=e.nativeEvents||(e.nativeEvents={})):s=e.events||(e.events={});var c={value:n.trim()};i!==r&&(c.modifiers=i);var u=s[t];Array.isArray(u)?o?u.unshift(c):u.push(c):s[t]=u?o?[c,u]:[u,c]:c,e.plain=!1}function Or(e,t,n){var r=kr(e,":"+t)||kr(e,"v-bind:"+t);if(null!=r)return vr(r);if(!1!==n){var i=kr(e,t);if(null!=i)return JSON.stringify(i)}}function kr(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function $r(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=Sr(t,o);e.model={value:"("+t+")",expression:'"'+t+'"',callback:"function ($$v) {"+a+"}"}}function Sr(e,t){var n=function(e){if(e=e.trim(),sr=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<sr-1)return(lr=e.lastIndexOf("."))>-1?{exp:e.slice(0,lr),key:'"'+e.slice(lr+1)+'"'}:{exp:e,key:null};cr=e,lr=fr=pr=0;for(;!Tr();)Er(ur=Ar())?Mr(ur):91===ur&&Lr(ur);return{exp:e.slice(0,fr),key:e.slice(fr+1,pr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ar(){return cr.charCodeAt(++lr)}function Tr(){return lr>=sr}function Er(e){return 34===e||39===e}function Lr(e){var t=1;for(fr=lr;!Tr();)if(Er(e=Ar()))Mr(e);else if(91===e&&t++,93===e&&t--,0===t){pr=lr;break}}function Mr(e){for(var t=e;!Tr()&&(e=Ar())!==t;);}var jr,Pr="__r",Nr="__c";function Ir(e,t,n,r,i){t=function(e){return e._withTask||(e._withTask=function(){Ze=!0;var t=e.apply(null,arguments);return Ze=!1,t})}(t),n&&(t=function(e,t,n){var r=jr;return function i(){null!==e.apply(null,arguments)&&Dr(t,i,n,r)}}(t,e,r)),jr.addEventListener(e,t,te?{capture:r,passive:i}:r)}function Dr(e,t,n,r){(r||jr).removeEventListener(e,t._withTask||t,n)}function Ur(e,t){if(!i(e.data.on)||!i(t.data.on)){var n=t.data.on||{},r=e.data.on||{};jr=t.elm,function(e){if(o(e[Pr])){var t=X?"change":"input";e[t]=[].concat(e[Pr],e[t]||[]),delete e[Pr]}o(e[Nr])&&(e.change=[].concat(e[Nr],e.change||[]),delete e[Nr])}(n),st(n,r,Ir,Dr,t.context),jr=void 0}}var Rr={create:Ur,update:Ur};function Fr(e,t){if(!i(e.data.domProps)||!i(t.data.domProps)){var n,r,a=t.elm,s=e.data.domProps||{},c=t.data.domProps||{};for(n in o(c.__ob__)&&(c=t.data.domProps=T({},c)),s)i(c[n])&&(a[n]="");for(n in c){if(r=c[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),r===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n){a._value=r;var u=i(r)?"":String(r);Vr(a,u)&&(a.value=u)}else a[n]=r}}}function Vr(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var n=e.value,r=e._vModifiers;if(o(r)){if(r.lazy)return!1;if(r.number)return h(n)!==h(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}(e,t))}var Br={create:Fr,update:Fr},Hr=w(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function Wr(e){var t=zr(e.style);return e.staticStyle?T(e.staticStyle,t):t}function zr(e){return Array.isArray(e)?E(e):"string"==typeof e?Hr(e):e}var Kr,Gr=/^--/,Jr=/\s*!important$/,qr=function(e,t,n){if(Gr.test(t))e.style.setProperty(t,n);else if(Jr.test(n))e.style.setProperty(t,n.replace(Jr,""),"important");else{var r=Zr(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},Xr=["Webkit","Moz","ms"],Zr=w(function(e){if(Kr=Kr||document.createElement("div").style,"filter"!==(e=C(e))&&e in Kr)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<Xr.length;n++){var r=Xr[n]+t;if(r in Kr)return r}});function Yr(e,t){var n=t.data,r=e.data;if(!(i(n.staticStyle)&&i(n.style)&&i(r.staticStyle)&&i(r.style))){var a,s,c=t.elm,u=r.staticStyle,l=r.normalizedStyle||r.style||{},f=u||l,p=zr(t.data.style)||{};t.data.normalizedStyle=o(p.__ob__)?T({},p):p;var d=function(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=Wr(i.data))&&T(r,n);(n=Wr(e.data))&&T(r,n);for(var o=e;o=o.parent;)o.data&&(n=Wr(o.data))&&T(r,n);return r}(t,!0);for(s in f)i(d[s])&&qr(c,s,"");for(s in d)(a=d[s])!==f[s]&&qr(c,s,null==a?"":a)}}var Qr={create:Yr,update:Yr};function ei(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function ti(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function ni(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&T(t,ri(e.name||"v")),T(t,e),t}return"string"==typeof e?ri(e):void 0}}var ri=w(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),ii=K&&!Z,oi="transition",ai="animation",si="transition",ci="transitionend",ui="animation",li="animationend";ii&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(si="WebkitTransition",ci="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ui="WebkitAnimation",li="webkitAnimationEnd"));var fi=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function pi(e){fi(function(){fi(e)})}function di(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),ei(e,t))}function hi(e,t){e._transitionClasses&&y(e._transitionClasses,t),ti(e,t)}function vi(e,t,n){var r=gi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===oi?ci:li,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var mi=/\b(transform|all)(,|$)/;function gi(e,t){var n,r=window.getComputedStyle(e),i=r[si+"Delay"].split(", "),o=r[si+"Duration"].split(", "),a=yi(i,o),s=r[ui+"Delay"].split(", "),c=r[ui+"Duration"].split(", "),u=yi(s,c),l=0,f=0;return t===oi?a>0&&(n=oi,l=a,f=o.length):t===ai?u>0&&(n=ai,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?oi:ai:null)?n===oi?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===oi&&mi.test(r[si+"Property"])}}function yi(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return _i(t)+_i(e[n])}))}function _i(e){return 1e3*Number(e.slice(0,-1))}function bi(e,t){var n=e.elm;o(n._leaveCb)&&(n._leaveCb.cancelled=!0,n._leaveCb());var r=ni(e.data.transition);if(!i(r)&&!o(n._enterCb)&&1===n.nodeType){for(var a=r.css,s=r.type,u=r.enterClass,l=r.enterToClass,f=r.enterActiveClass,p=r.appearClass,d=r.appearToClass,v=r.appearActiveClass,m=r.beforeEnter,g=r.enter,y=r.afterEnter,_=r.enterCancelled,b=r.beforeAppear,w=r.appear,x=r.afterAppear,C=r.appearCancelled,O=r.duration,k=wt,$=wt.$vnode;$&&$.parent;)k=($=$.parent).context;var S=!k._isMounted||!e.isRootInsert;if(!S||w||""===w){var A=S&&p?p:u,T=S&&v?v:f,E=S&&d?d:l,L=S&&b||m,M=S&&"function"==typeof w?w:g,j=S&&x||y,P=S&&C||_,N=h(c(O)?O.enter:O);0;var D=!1!==a&&!Z,U=Ci(M),R=n._enterCb=I(function(){D&&(hi(n,E),hi(n,T)),R.cancelled?(D&&hi(n,A),P&&P(n)):j&&j(n),n._enterCb=null});e.data.show||ct(e,"insert",function(){var t=n.parentNode,r=t&&t._pending&&t._pending[e.key];r&&r.tag===e.tag&&r.elm._leaveCb&&r.elm._leaveCb(),M&&M(n,R)}),L&&L(n),D&&(di(n,A),di(n,T),pi(function(){hi(n,A),R.cancelled||(di(n,E),U||(xi(N)?setTimeout(R,N):vi(n,s,R)))})),e.data.show&&(t&&t(),M&&M(n,R)),D||U||R()}}}function wi(e,t){var n=e.elm;o(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=ni(e.data.transition);if(i(r)||1!==n.nodeType)return t();if(!o(n._leaveCb)){var a=r.css,s=r.type,u=r.leaveClass,l=r.leaveToClass,f=r.leaveActiveClass,p=r.beforeLeave,d=r.leave,v=r.afterLeave,m=r.leaveCancelled,g=r.delayLeave,y=r.duration,_=!1!==a&&!Z,b=Ci(d),w=h(c(y)?y.leave:y);0;var x=n._leaveCb=I(function(){n.parentNode&&n.parentNode._pending&&(n.parentNode._pending[e.key]=null),_&&(hi(n,l),hi(n,f)),x.cancelled?(_&&hi(n,u),m&&m(n)):(t(),v&&v(n)),n._leaveCb=null});g?g(C):C()}function C(){x.cancelled||(e.data.show||((n.parentNode._pending||(n.parentNode._pending={}))[e.key]=e),p&&p(n),_&&(di(n,u),di(n,f),pi(function(){hi(n,u),x.cancelled||(di(n,l),b||(xi(w)?setTimeout(x,w):vi(n,s,x)))})),d&&d(n,x),_||b||x())}}function xi(e){return"number"==typeof e&&!isNaN(e)}function Ci(e){if(i(e))return!1;var t=e.fns;return o(t)?Ci(Array.isArray(t)?t[0]:t):(e._length||e.length)>1}function Oi(e,t){!0!==t.data.show&&bi(t)}var ki=function(e){var t,n,r={},c=e.modules,u=e.nodeOps;for(t=0;t<Kn.length;++t)for(r[Kn[t]]=[],n=0;n<c.length;++n)o(c[n][Kn[t]])&&r[Kn[t]].push(c[n][Kn[t]]);function l(e){var t=u.parentNode(e);o(t)&&u.removeChild(t,e)}function f(e,t,n,i,s,c,l){if(o(e.elm)&&o(c)&&(e=c[l]=ye(e)),e.isRootInsert=!s,!function(e,t,n,i){var s=e.data;if(o(s)){var c=o(e.componentInstance)&&s.keepAlive;if(o(s=s.hook)&&o(s=s.init)&&s(e,!1,n,i),o(e.componentInstance))return p(e,t),a(c)&&function(e,t,n,i){for(var a,s=e;s.componentInstance;)if(s=s.componentInstance._vnode,o(a=s.data)&&o(a=a.transition)){for(a=0;a<r.activate.length;++a)r.activate[a](zn,s);t.push(s);break}d(n,e.elm,i)}(e,t,n,i),!0}}(e,t,n,i)){var f=e.data,v=e.children,m=e.tag;o(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),y(e),h(e,v,t),o(f)&&g(e,t),d(n,e.elm,i)):a(e.isComment)?(e.elm=u.createComment(e.text),d(n,e.elm,i)):(e.elm=u.createTextNode(e.text),d(n,e.elm,i))}}function p(e,t){o(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,m(e)?(g(e,t),y(e)):(Wn(e),t.push(e))}function d(e,t,n){o(e)&&(o(n)?n.parentNode===e&&u.insertBefore(e,t,n):u.appendChild(e,t))}function h(e,t,n){if(Array.isArray(t))for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r);else s(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function m(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return o(e.tag)}function g(e,n){for(var i=0;i<r.create.length;++i)r.create[i](zn,e);o(t=e.data.hook)&&(o(t.create)&&t.create(zn,e),o(t.insert)&&n.push(e))}function y(e){var t;if(o(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var n=e;n;)o(t=n.context)&&o(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),n=n.parent;o(t=wt)&&t!==e.context&&t!==e.fnContext&&o(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,n,i=e.data;if(o(i))for(o(t=i.hook)&&o(t=t.destroy)&&t(e),t=0;t<r.destroy.length;++t)r.destroy[t](e);if(o(t=e.children))for(n=0;n<e.children.length;++n)b(e.children[n])}function w(e,t,n,r){for(;n<=r;++n){var i=t[n];o(i)&&(o(i.tag)?(x(i),b(i)):l(i.elm))}}function x(e,t){if(o(t)||o(e.data)){var n,i=r.remove.length+1;for(o(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),o(n=e.componentInstance)&&o(n=n._vnode)&&o(n.data)&&x(n,t),n=0;n<r.remove.length;++n)r.remove[n](e,t);o(n=e.data.hook)&&o(n=n.remove)?n(e,t):t()}else l(e.elm)}function C(e,t,n,r){for(var i=n;i<r;i++){var a=t[i];if(o(a)&&Gn(e,a))return i}}function O(e,t,n,s){if(e!==t){var c=t.elm=e.elm;if(a(e.isAsyncPlaceholder))o(t.asyncFactory.resolved)?S(e.elm,t,n):t.isAsyncPlaceholder=!0;else if(a(t.isStatic)&&a(e.isStatic)&&t.key===e.key&&(a(t.isCloned)||a(t.isOnce)))t.componentInstance=e.componentInstance;else{var l,p=t.data;o(p)&&o(l=p.hook)&&o(l=l.prepatch)&&l(e,t);var d=e.children,h=t.children;if(o(p)&&m(t)){for(l=0;l<r.update.length;++l)r.update[l](e,t);o(l=p.hook)&&o(l=l.update)&&l(e,t)}i(t.text)?o(d)&&o(h)?d!==h&&function(e,t,n,r,a){for(var s,c,l,p=0,d=0,h=t.length-1,v=t[0],m=t[h],g=n.length-1,y=n[0],b=n[g],x=!a;p<=h&&d<=g;)i(v)?v=t[++p]:i(m)?m=t[--h]:Gn(v,y)?(O(v,y,r),v=t[++p],y=n[++d]):Gn(m,b)?(O(m,b,r),m=t[--h],b=n[--g]):Gn(v,b)?(O(v,b,r),x&&u.insertBefore(e,v.elm,u.nextSibling(m.elm)),v=t[++p],b=n[--g]):Gn(m,y)?(O(m,y,r),x&&u.insertBefore(e,m.elm,v.elm),m=t[--h],y=n[++d]):(i(s)&&(s=Jn(t,p,h)),i(c=o(y.key)?s[y.key]:C(y,t,p,h))?f(y,r,e,v.elm,!1,n,d):Gn(l=t[c],y)?(O(l,y,r),t[c]=void 0,x&&u.insertBefore(e,l.elm,v.elm)):f(y,r,e,v.elm,!1,n,d),y=n[++d]);p>h?_(e,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(0,t,p,h)}(c,d,h,n,s):o(h)?(o(e.text)&&u.setTextContent(c,""),_(c,null,h,0,h.length-1,n)):o(d)?w(0,d,0,d.length-1):o(e.text)&&u.setTextContent(c,""):e.text!==t.text&&u.setTextContent(c,t.text),o(p)&&o(l=p.hook)&&o(l=l.postpatch)&&l(e,t)}}}function k(e,t,n){if(a(n)&&o(e.parent))e.parent.data.pendingInsert=t;else for(var r=0;r<t.length;++r)t[r].data.hook.insert(t[r])}var $=v("attrs,class,staticClass,staticStyle,key");function S(e,t,n,r){var i,s=t.tag,c=t.data,u=t.children;if(r=r||c&&c.pre,t.elm=e,a(t.isComment)&&o(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(o(c)&&(o(i=c.hook)&&o(i=i.init)&&i(t,!0),o(i=t.componentInstance)))return p(t,n),!0;if(o(s)){if(o(u))if(e.hasChildNodes())if(o(i=c)&&o(i=i.domProps)&&o(i=i.innerHTML)){if(i!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,d=0;d<u.length;d++){if(!f||!S(f,u[d],n,r)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(t,u,n);if(o(c)){var v=!1;for(var m in c)if(!$(m)){v=!0,g(t,n);break}!v&&c.class&&rt(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,t,n,s,c,l){if(!i(t)){var p=!1,d=[];if(i(e))p=!0,f(t,d,c,l);else{var h=o(e.nodeType);if(!h&&Gn(e,t))O(e,t,d,s);else{if(h){if(1===e.nodeType&&e.hasAttribute(D)&&(e.removeAttribute(D),n=!0),a(n)&&S(e,t,d))return k(t,d,!0),e;e=function(e){return new he(u.tagName(e).toLowerCase(),{},[],void 0,e)}(e)}var v=e.elm,g=u.parentNode(v);if(f(t,d,v._leaveCb?null:g,u.nextSibling(v)),o(t.parent))for(var y=t.parent,_=m(t);y;){for(var x=0;x<r.destroy.length;++x)r.destroy[x](y);if(y.elm=t.elm,_){for(var C=0;C<r.create.length;++C)r.create[C](zn,y);var $=y.data.hook.insert;if($.merged)for(var A=1;A<$.fns.length;A++)$.fns[A]()}else Wn(y);y=y.parent}o(g)?w(0,[e],0,0):o(e.tag)&&b(e)}}return k(t,d,p),t.elm}o(e)&&b(e)}}({nodeOps:Bn,modules:[or,dr,Rr,Br,Qr,K?{create:Oi,activate:Oi,remove:function(e,t){!0!==e.data.show?wi(e,t):t()}}:{}].concat(tr)});Z&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&ji(e,"input")});var $i={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?ct(n,"postpatch",function(){$i.componentUpdated(e,t,n)}):Si(e,t,n.context),e._vOptions=[].map.call(e.options,Ei)):("textarea"===n.tag||Fn(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Li),e.addEventListener("compositionend",Mi),e.addEventListener("change",Mi),Z&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Si(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Ei);if(i.some(function(e,t){return!P(e,r[t])}))(e.multiple?t.value.some(function(e){return Ti(e,i)}):t.value!==t.oldValue&&Ti(t.value,i))&&ji(e,"change")}}};function Si(e,t,n){Ai(e,t,n),(X||Y)&&setTimeout(function(){Ai(e,t,n)},0)}function Ai(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=N(r,Ei(a))>-1,a.selected!==o&&(a.selected=o);else if(P(Ei(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function Ti(e,t){return t.every(function(t){return!P(t,e)})}function Ei(e){return"_value"in e?e._value:e.value}function Li(e){e.target.composing=!0}function Mi(e){e.target.composing&&(e.target.composing=!1,ji(e.target,"input"))}function ji(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Pi(e){return!e.componentInstance||e.data&&e.data.transition?e:Pi(e.componentInstance._vnode)}var Ni={model:$i,show:{bind:function(e,t,n){var r=t.value,i=(n=Pi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,bi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Pi(n)).data&&n.data.transition?(n.data.show=!0,r?bi(n,function(){e.style.display=e.__vOriginalDisplay}):wi(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},Ii={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Di(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Di(ht(t.children)):e}function Ui(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[C(o)]=i[o];return t}function Ri(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var Fi={name:"transition",props:Ii,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(function(e){return e.tag||dt(e)})).length){0;var r=this.mode;0;var i=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return i;var o=Di(i);if(!o)return i;if(this._leaving)return Ri(e,i);var a="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?a+"comment":a+o.tag:s(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var c=(o.data||(o.data={})).transition=Ui(this),u=this._vnode,l=Di(u);if(o.data.directives&&o.data.directives.some(function(e){return"show"===e.name})&&(o.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(o,l)&&!dt(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=T({},c);if("out-in"===r)return this._leaving=!0,ct(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),Ri(e,i);if("in-out"===r){if(dt(o))return u;var p,d=function(){p()};ct(c,"afterEnter",d),ct(c,"enterCancelled",d),ct(f,"delayLeave",function(e){p=e})}}return i}}},Vi=T({tag:String,moveClass:String},Ii);function Bi(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function Hi(e){e.data.newPos=e.elm.getBoundingClientRect()}function Wi(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete Vi.mode;var zi={Transition:Fi,TransitionGroup:{props:Vi,render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=Ui(this),s=0;s<i.length;s++){var c=i[s];if(c.tag)if(null!=c.key&&0!==String(c.key).indexOf("__vlist"))o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a;else;}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},beforeUpdate:function(){this.__patch__(this._vnode,this.kept,!1,!0),this._vnode=this.kept},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(Bi),e.forEach(Hi),e.forEach(Wi),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;di(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(ci,n._moveCb=function e(r){r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(ci,e),n._moveCb=null,hi(n,t))})}}))},methods:{hasMove:function(e,t){if(!ii)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){ti(n,e)}),ei(n,t),n.style.display="none",this.$el.appendChild(n);var r=gi(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};dn.config.mustUseProp=Cn,dn.config.isReservedTag=Dn,dn.config.isReservedAttr=wn,dn.config.getTagNamespace=Un,dn.config.isUnknownElement=function(e){if(!K)return!0;if(Dn(e))return!1;if(e=e.toLowerCase(),null!=Rn[e])return Rn[e];var t=document.createElement(e);return e.indexOf("-")>-1?Rn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Rn[e]=/HTMLUnknownElement/.test(t.toString())},T(dn.options.directives,Ni),T(dn.options.components,zi),dn.prototype.__patch__=K?ki:L,dn.prototype.$mount=function(e,t){return function(e,t,n){return e.$el=t,e.$options.render||(e.$options.render=me),Ot(e,"beforeMount"),new jt(e,function(){e._update(e._render(),n)},L,null,!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Ot(e,"mounted")),e}(this,e=e&&K?Vn(e):void 0,t)},K&&setTimeout(function(){F.devtools&&ie&&ie.emit("init",dn)},0);var Ki=/\{\{((?:.|\n)+?)\}\}/g,Gi=/[-.*+?^${}()|[\]\/\\]/g,Ji=w(function(e){var t=e[0].replace(Gi,"\\$&"),n=e[1].replace(Gi,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var qi={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=kr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Or(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var Xi,Zi={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=kr(e,"style");n&&(e.staticStyle=JSON.stringify(Hr(n)));var r=Or(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},Yi=function(e){return(Xi=Xi||document.createElement("div")).innerHTML=e,Xi.textContent},Qi=v("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),eo=v("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),to=v("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),no=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ro="[a-zA-Z_][\\w\\-\\.]*",io="((?:"+ro+"\\:)?"+ro+")",oo=new RegExp("^<"+io),ao=/^\s*(\/?)>/,so=new RegExp("^<\\/"+io+"[^>]*>"),co=/^<!DOCTYPE [^>]+>/i,uo=/^<!\--/,lo=/^<!\[/,fo=!1;"x".replace(/x(.)?/g,function(e,t){fo=""===t});var po=v("script,style,textarea",!0),ho={},vo={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t"},mo=/&(?:lt|gt|quot|amp);/g,go=/&(?:lt|gt|quot|amp|#10|#9);/g,yo=v("pre,textarea",!0),_o=function(e,t){return e&&yo(e)&&"\n"===t[0]};function bo(e,t){var n=t?go:mo;return e.replace(n,function(e){return vo[e]})}var wo,xo,Co,Oo,ko,$o,So,Ao,To=/^@|^v-on:/,Eo=/^v-|^@|^:/,Lo=/([^]*?)\s+(?:in|of)\s+([^]*)/,Mo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,jo=/^\(|\)$/g,Po=/:(.*)$/,No=/^:|^v-bind:/,Io=/\.[^.]+/g,Do=w(Yi);function Uo(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:function(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}(t),parent:n,children:[]}}function Ro(e,t){wo=t.warn||gr,$o=t.isPreTag||M,So=t.mustUseProp||M,Ao=t.getTagNamespace||M,Co=yr(t.modules,"transformNode"),Oo=yr(t.modules,"preTransformNode"),ko=yr(t.modules,"postTransformNode"),xo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=!1,s=!1;function c(e){e.pre&&(a=!1),$o(e.tag)&&(s=!1);for(var n=0;n<ko.length;n++)ko[n](e,t)}return function(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||M,s=t.canBeLeftOpenTag||M,c=0;e;){if(n=e,r&&po(r)){var u=0,l=r.toLowerCase(),f=ho[l]||(ho[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,po(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),_o(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,$(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(uo.test(e)){var h=e.indexOf("--\x3e");if(h>=0){t.shouldKeepComment&&t.comment(e.substring(4,h)),C(h+3);continue}}if(lo.test(e)){var v=e.indexOf("]>");if(v>=0){C(v+2);continue}}var m=e.match(co);if(m){C(m[0].length);continue}var g=e.match(so);if(g){var y=c;C(g[0].length),$(g[1],y,c);continue}var _=O();if(_){k(_),_o(r,e)&&C(1);continue}}var b=void 0,w=void 0,x=void 0;if(d>=0){for(w=e.slice(d);!(so.test(w)||oo.test(w)||uo.test(w)||lo.test(w)||(x=w.indexOf("<",1))<0);)d+=x,w=e.slice(d);b=e.substring(0,d),C(d)}d<0&&(b=e,e=""),t.chars&&b&&t.chars(b)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function O(){var t=e.match(oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(ao))&&(r=e.match(no));)C(r[0].length),i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&to(n)&&$(r),s(n)&&r===n&&$(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p];fo&&-1===d[0].indexOf('""')&&(""===d[3]&&delete d[3],""===d[4]&&delete d[4],""===d[5]&&delete d[5]);var h=d[3]||d[4]||d[5]||"",v="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:bo(h,v)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function $(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e&&(s=e.toLowerCase()),e)for(a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}$()}(e,{warn:wo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,start:function(e,o,u){var l=r&&r.ns||Ao(e);X&&"svg"===l&&(o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];Wo.test(r.name)||(r.name=r.name.replace(zo,""),t.push(r))}return t}(o));var f=Uo(e,o,r);l&&(f.ns=l),function(e){return"style"===e.tag||"script"===e.tag&&(!e.attrsMap.type||"text/javascript"===e.attrsMap.type)}(f)&&!re()&&(f.forbidden=!0);for(var p=0;p<Oo.length;p++)f=Oo[p](f,t)||f;function d(e){0}if(a||(!function(e){null!=kr(e,"v-pre")&&(e.pre=!0)}(f),f.pre&&(a=!0)),$o(f.tag)&&(s=!0),a?function(e){var t=e.attrsList.length;if(t)for(var n=e.attrs=new Array(t),r=0;r<t;r++)n[r]={name:e.attrsList[r].name,value:JSON.stringify(e.attrsList[r].value)};else e.pre||(e.plain=!0)}(f):f.processed||(Vo(f),function(e){var t=kr(e,"v-if");if(t)e.if=t,Bo(e,{exp:t,block:e});else{null!=kr(e,"v-else")&&(e.else=!0);var n=kr(e,"v-else-if");n&&(e.elseif=n)}}(f),function(e){null!=kr(e,"v-once")&&(e.once=!0)}(f),Fo(f,t)),n?i.length||n.if&&(f.elseif||f.else)&&(d(),Bo(n,{exp:f.elseif,block:f})):(n=f,d()),r&&!f.forbidden)if(f.elseif||f.else)!function(e,t){var n=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(t.children);n&&n.if&&Bo(n,{exp:e.elseif,block:e})}(f,r);else if(f.slotScope){r.plain=!1;var h=f.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[h]=f}else r.children.push(f),f.parent=r;u?c(f):(r=f,i.push(f))},end:function(){var e=i[i.length-1],t=e.children[e.children.length-1];t&&3===t.type&&" "===t.text&&!s&&e.children.pop(),i.length-=1,r=i[i.length-1],c(e)},chars:function(e){if(r&&(!X||"textarea"!==r.tag||r.attrsMap.placeholder!==e)){var t,n=r.children;if(e=s||e.trim()?function(e){return"script"===e.tag||"style"===e.tag}(r)?e:Do(e):o&&n.length?" ":"")!a&&" "!==e&&(t=function(e,t){var n=t?Ji(t):Ki;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=vr(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}(e,xo))?n.push({type:2,expression:t.expression,tokens:t.tokens,text:e}):" "===e&&n.length&&" "===n[n.length-1].text||n.push({type:3,text:e})}},comment:function(e){r.children.push({type:3,text:e,isComment:!0})}}),n}function Fo(e,t){!function(e){var t=Or(e,"key");t&&(e.key=t)}(e),e.plain=!e.key&&!e.attrsList.length,function(e){var t=Or(e,"ref");t&&(e.ref=t,e.refInFor=function(e){var t=e;for(;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}(e))}(e),function(e){if("slot"===e.tag)e.slotName=Or(e,"name");else{var t;"template"===e.tag?(t=kr(e,"scope"),e.slotScope=t||kr(e,"slot-scope")):(t=kr(e,"slot-scope"))&&(e.slotScope=t);var n=Or(e,"slot");n&&(e.slotTarget='""'===n?'"default"':n,"template"===e.tag||e.slotScope||br(e,"slot",n))}}(e),function(e){var t;(t=Or(e,"is"))&&(e.component=t);null!=kr(e,"inline-template")&&(e.inlineTemplate=!0)}(e);for(var n=0;n<Co.length;n++)e=Co[n](e,t)||e;!function(e){var t,n,r,i,o,a,s,c=e.attrsList;for(t=0,n=c.length;t<n;t++){if(r=i=c[t].name,o=c[t].value,Eo.test(r))if(e.hasBindings=!0,(a=Ho(r))&&(r=r.replace(Io,"")),No.test(r))r=r.replace(No,""),o=vr(o),s=!1,a&&(a.prop&&(s=!0,"innerHtml"===(r=C(r))&&(r="innerHTML")),a.camel&&(r=C(r)),a.sync&&Cr(e,"update:"+C(r),Sr(o,"$event"))),s||!e.component&&So(e.tag,e.attrsMap.type,r)?_r(e,r,o):br(e,r,o);else if(To.test(r))r=r.replace(To,""),Cr(e,r,o,a,!1);else{var u=(r=r.replace(Eo,"")).match(Po),l=u&&u[1];l&&(r=r.slice(0,-(l.length+1))),xr(e,r,i,o,l,a)}else br(e,r,JSON.stringify(o)),!e.component&&"muted"===r&&So(e.tag,e.attrsMap.type,r)&&_r(e,r,"true")}}(e)}function Vo(e){var t;if(t=kr(e,"v-for")){var n=function(e){var t=e.match(Lo);if(!t)return;var n={};n.for=t[2].trim();var r=t[1].trim().replace(jo,""),i=r.match(Mo);i?(n.alias=r.replace(Mo,""),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r;return n}(t);n&&T(e,n)}}function Bo(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function Ho(e){var t=e.match(Io);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}var Wo=/^xmlns:NS\d+/,zo=/^NS\d+:/;function Ko(e){return Uo(e.tag,e.attrsList.slice(),e.parent)}var Go=[qi,Zi,{preTransformNode:function(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Or(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=kr(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=kr(e,"v-else",!0),s=kr(e,"v-else-if",!0),c=Ko(e);Vo(c),wr(c,"type","checkbox"),Fo(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,Bo(c,{exp:c.if,block:c});var u=Ko(e);kr(u,"v-for",!0),wr(u,"type","radio"),Fo(u,t),Bo(c,{exp:"("+n+")==='radio'"+o,block:u});var l=Ko(e);return kr(l,"v-for",!0),wr(l,":type",n),Fo(l,t),Bo(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}}];var Jo,qo,Xo={expectHTML:!0,modules:Go,directives:{model:function(e,t,n){n;var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return $r(e,r,i),!1;if("select"===o)!function(e,t,n){var r='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"});";r=r+" "+Sr(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Cr(e,"change",r,null,!0)}(e,r,i);else if("input"===o&&"checkbox"===a)!function(e,t,n){var r=n&&n.number,i=Or(e,"value")||"null",o=Or(e,"true-value")||"true",a=Or(e,"false-value")||"false";_r(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Cr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Sr(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Sr(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Sr(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Or(e,"value")||"null";_r(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Cr(e,"change",Sr(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Pr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Sr(t,l);c&&(f="if($event.target.composing)return;"+f),_r(e,"value","("+t+")"),Cr(e,u,f,null,!0),(s||a)&&Cr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return $r(e,r,i),!1;return!0},text:function(e,t){t.value&&_r(e,"textContent","_s("+t.value+")")},html:function(e,t){t.value&&_r(e,"innerHTML","_s("+t.value+")")}},isPreTag:function(e){return"pre"===e},isUnaryTag:Qi,mustUseProp:Cn,canBeLeftOpenTag:eo,isReservedTag:Dn,getTagNamespace:Un,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(Go)},Zo=w(function(e){return v("type,tag,attrsList,attrsMap,plain,parent,children,attrs"+(e?","+e:""))});function Yo(e,t){e&&(Jo=Zo(t.staticKeys||""),qo=t.isReservedTag||M,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||m(e.tag)||!qo(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every(Jo)))}(t);if(1===t.type){if(!qo(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n<r;n++){var i=t.children[n];e(i),i.static||(t.static=!1)}if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++){var s=t.ifConditions[o].block;e(s),s.static||(t.static=!1)}}}(e),function e(t,n){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=n),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)e(t.children[r],n||!!t.for);if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++)e(t.ifConditions[o].block,n)}}(e,!1))}var Qo=/^([\w$_]+|\([^)]*?\))\s*=>|^function\s*\(/,ea=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},na={esc:"Escape",tab:"Tab",enter:"Enter",space:" ",up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete"]},ra=function(e){return"if("+e+")return null;"},ia={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:ra("$event.target !== $event.currentTarget"),ctrl:ra("!$event.ctrlKey"),shift:ra("!$event.shiftKey"),alt:ra("!$event.altKey"),meta:ra("!$event.metaKey"),left:ra("'button' in $event && $event.button !== 0"),middle:ra("'button' in $event && $event.button !== 1"),right:ra("'button' in $event && $event.button !== 2")};function oa(e,t,n){var r=t?"nativeOn:{":"on:{";for(var i in e)r+='"'+i+'":'+aa(i,e[i])+",";return r.slice(0,-1)+"}"}function aa(e,t){if(!t)return"function(){}";if(Array.isArray(t))return"["+t.map(function(t){return aa(e,t)}).join(",")+"]";var n=ea.test(t.value),r=Qo.test(t.value);if(t.modifiers){var i="",o="",a=[];for(var s in t.modifiers)if(ia[s])o+=ia[s],ta[s]&&a.push(s);else if("exact"===s){var c=t.modifiers;o+=ra(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!('button' in $event)&&"+e.map(sa).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(n?"return "+t.value+"($event)":r?"return ("+t.value+")($event)":t.value)+"}"}return n||r?t.value:"function($event){"+t.value+"}"}function sa(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=ta[e],r=na[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var ca={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:L},ua=function(e){this.options=e,this.warn=e.warn||gr,this.transforms=yr(e.modules,"transformCode"),this.dataGenFns=yr(e.modules,"genData"),this.directives=T(T({},ca),e.directives);var t=e.isReservedTag||M;this.maybeComponent=function(e){return!t(e.tag)},this.onceId=0,this.staticRenderFns=[]};function la(e,t){var n=new ua(t);return{render:"with(this){return "+(e?fa(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function fa(e,t){if(e.staticRoot&&!e.staticProcessed)return pa(e,t);if(e.once&&!e.onceProcessed)return da(e,t);if(e.for&&!e.forProcessed)return function(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";0;return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||fa)(e,t)+"})"}(e,t);if(e.if&&!e.ifProcessed)return ha(e,t);if("template"!==e.tag||e.slotTarget){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=ga(e,t),i="_t("+n+(r?","+r:""),o=e.attrs&&"{"+e.attrs.map(function(e){return C(e.name)+":"+e.value}).join(",")+"}",a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:ga(t,n,!0);return"_c("+e+","+va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r=e.plain?void 0:va(e,t),i=e.inlineTemplate?null:ga(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return ga(e,t)||"void 0"}function pa(e,t){return e.staticProcessed=!0,t.staticRenderFns.push("with(this){return "+fa(e,t)+"}"),"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function da(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return ha(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+fa(e,t)+","+t.onceId+++","+n+")":fa(e,t)}return pa(e,t)}function ha(e,t,n,r){return e.ifProcessed=!0,function e(t,n,r,i){if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+a(o.block)+":"+e(t,n,r,i):""+a(o.block);function a(e){return r?r(e,n):e.once?da(e,n):fa(e,n)}}(e.ifConditions.slice(),t,n,r)}function va(e,t){var n="{",r=function(e,t){var n=e.directives;if(!n)return;var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?',arg:"'+o.arg+'"':"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}if(c)return s.slice(0,-1)+"]"}(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:{"+ba(e.attrs)+"},"),e.props&&(n+="domProps:{"+ba(e.props)+"},"),e.events&&(n+=oa(e.events,!1,t.warn)+","),e.nativeEvents&&(n+=oa(e.nativeEvents,!0,t.warn)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=function(e,t){return"scopedSlots:_u(["+Object.keys(e).map(function(n){return ma(n,e[n],t)}).join(",")+"])"}(e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];0;if(1===n.type){var r=la(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function ma(e,t,n){return t.for&&!t.forProcessed?function(e,t,n){var r=t.for,i=t.alias,o=t.iterator1?","+t.iterator1:"",a=t.iterator2?","+t.iterator2:"";return t.forProcessed=!0,"_l(("+r+"),function("+i+o+a+"){return "+ma(e,t,n)+"})"}(e,t,n):"{key:"+e+",fn:"+("function("+String(t.slotScope)+"){return "+("template"===t.tag?t.if?t.if+"?"+(ga(t,n)||"undefined")+":undefined":ga(t,n)||"undefined":fa(t,n))+"}")+"}"}function ga(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag)return(r||fa)(a,t);var s=n?function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(ya(i)||i.ifConditions&&i.ifConditions.some(function(e){return ya(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}(o,t.maybeComponent):0,c=i||_a;return"["+o.map(function(e){return c(e,t)}).join(",")+"]"+(s?","+s:"")}}function ya(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function _a(e,t){return 1===e.type?fa(e,t):3===e.type&&e.isComment?function(e){return"_e("+JSON.stringify(e.text)+")"}(e):function(e){return"_v("+(2===e.type?e.expression:wa(JSON.stringify(e.text)))+")"}(e)}function ba(e){for(var t="",n=0;n<e.length;n++){var r=e[n];t+='"'+r.name+'":'+wa(r.value)+","}return t.slice(0,-1)}function wa(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),new RegExp("\\b"+"delete,typeof,void".split(",").join("\\s*\\([^\\)]*\\)|\\b")+"\\s*\\([^\\)]*\\)");function xa(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),L}}var Ca,Oa=function(e){return function(t){function n(n,r){var i=Object.create(t),o=[],a=[];if(i.warn=function(e,t){(t?a:o).push(e)},r)for(var s in r.modules&&(i.modules=(t.modules||[]).concat(r.modules)),r.directives&&(i.directives=T(Object.create(t.directives||null),r.directives)),r)"modules"!==s&&"directives"!==s&&(i[s]=r[s]);var c=e(n,i);return c.errors=o,c.tips=a,c}return{compile:n,compileToFunctions:function(e){var t=Object.create(null);return function(n,r,i){(r=T({},r)).warn,delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r),s={},c=[];return s.render=xa(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return xa(e,c)}),t[o]=s}}(n)}}}(function(e,t){var n=Ro(e.trim(),t);!1!==t.optimize&&Yo(n,t);var r=la(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}})(Xo).compileToFunctions;function ka(e){return(Ca=Ca||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',Ca.innerHTML.indexOf("&#10;")>0}var $a=!!K&&ka(!1),Sa=!!K&&ka(!0),Aa=w(function(e){var t=Vn(e);return t&&t.innerHTML}),Ta=dn.prototype.$mount;dn.prototype.$mount=function(e,t){if((e=e&&Vn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=Aa(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){0;var i=Oa(r,{shouldDecodeNewlines:$a,shouldDecodeNewlinesForHref:Sa,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return Ta.call(this,e,t)},dn.compile=Oa,t.a=dn}).call(this,n(2),n(7).setImmediate)},function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="/",t(0)}([function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.mixins=t.VueSelect=void 0;var i=n(85),o=r(i),a=n(42),s=r(a);t.default=o.default,t.VueSelect=o.default,t.mixins=s.default},function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(e,t){var n=e.exports={version:"2.5.3"};"number"==typeof __e&&(__e=n)},function(e,t,n){e.exports=!n(9)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var r=n(11),i=n(33),o=n(25),a=Object.defineProperty;t.f=n(3)?Object.defineProperty:function(e,t,n){if(r(e),t=o(t,!0),r(n),i)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){var r=n(5),i=n(14);e.exports=n(3)?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){var r=n(61),i=n(16);e.exports=function(e){return r(i(e))}},function(e,t,n){var r=n(23)("wks"),i=n(15),o=n(1).Symbol,a="function"==typeof o,s=e.exports=function(e){return r[e]||(r[e]=a&&o[e]||(a?o:i)("Symbol."+e))};s.store=r},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){var r=n(10);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t,n){var r=n(1),i=n(2),o=n(58),a=n(6),s="prototype",c=function(e,t,n){var u,l,f,p=e&c.F,d=e&c.G,h=e&c.S,v=e&c.P,m=e&c.B,g=e&c.W,y=d?i:i[t]||(i[t]={}),_=y[s],b=d?r:h?r[t]:(r[t]||{})[s];for(u in d&&(n=t),n)(l=!p&&b&&void 0!==b[u])&&u in y||(f=l?b[u]:n[u],y[u]=d&&"function"!=typeof b[u]?n[u]:m&&l?o(f,r):g&&b[u]==f?function(e){var t=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return t[s]=e[s],t}(f):v&&"function"==typeof f?o(Function.call,f):f,v&&((y.virtual||(y.virtual={}))[u]=f,e&c.R&&_&&!_[u]&&a(_,u,f)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,e.exports=c},function(e,t,n){var r=n(38),i=n(17);e.exports=Object.keys||function(e){return r(e,i)}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(e,t){e.exports={}},function(e,t){e.exports=!0},function(e,t){t.f={}.propertyIsEnumerable},function(e,t,n){var r=n(5).f,i=n(4),o=n(8)("toStringTag");e.exports=function(e,t,n){e&&!i(e=n?e:e.prototype,o)&&r(e,o,{configurable:!0,value:t})}},function(e,t,n){var r=n(23)("keys"),i=n(15);e.exports=function(e){return r[e]||(r[e]=i(e))}},function(e,t,n){var r=n(1),i="__core-js_shared__",o=r[i]||(r[i]={});e.exports=function(e){return o[e]||(o[e]={})}},function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},function(e,t,n){var r=n(10);e.exports=function(e,t){if(!r(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!r(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var r=n(1),i=n(2),o=n(19),a=n(27),s=n(5).f;e.exports=function(e){var t=i.Symbol||(i.Symbol=o?{}:r.Symbol||{});"_"==e.charAt(0)||e in t||s(t,e,{value:a.f(e)})}},function(e,t,n){t.f=n(8)},function(e,t){"use strict";e.exports={props:{loading:{type:Boolean,default:!1},onSearch:{type:Function,default:function(e,t){}}},data:function(){return{mutableLoading:!1}},watch:{search:function(){this.search.length>0&&(this.onSearch(this.search,this.toggleLoading),this.$emit("search",this.search,this.toggleLoading))},loading:function(e){this.mutableLoading=e}},methods:{toggleLoading:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return this.mutableLoading=null==e?!this.mutableLoading:e}}}},function(e,t){"use strict";e.exports={watch:{typeAheadPointer:function(){this.maybeAdjustScroll()}},methods:{maybeAdjustScroll:function(){var e=this.pixelsToPointerTop(),t=this.pixelsToPointerBottom();return e<=this.viewport().top?this.scrollTo(e):t>=this.viewport().bottom?this.scrollTo(this.viewport().top+this.pointerHeight()):void 0},pixelsToPointerTop:function(){var e=0;if(this.$refs.dropdownMenu)for(var t=0;t<this.typeAheadPointer;t++)e+=this.$refs.dropdownMenu.children[t].offsetHeight;return e},pixelsToPointerBottom:function(){return this.pixelsToPointerTop()+this.pointerHeight()},pointerHeight:function(){var e=!!this.$refs.dropdownMenu&&this.$refs.dropdownMenu.children[this.typeAheadPointer];return e?e.offsetHeight:0},viewport:function(){return{top:this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop:0,bottom:this.$refs.dropdownMenu?this.$refs.dropdownMenu.offsetHeight+this.$refs.dropdownMenu.scrollTop:0}},scrollTo:function(e){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop=e:null}}}},function(e,t){"use strict";e.exports={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){this.typeAheadPointer=0}},methods:{typeAheadUp:function(){this.typeAheadPointer>0&&(this.typeAheadPointer--,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadDown:function(){this.typeAheadPointer<this.filteredOptions.length-1&&(this.typeAheadPointer++,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadSelect:function(){this.filteredOptions[this.typeAheadPointer]?this.select(this.filteredOptions[this.typeAheadPointer]):this.taggable&&this.search.length&&this.select(this.search),this.clearSearchOnSelect&&(this.search="")}}}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var r=n(10),i=n(1).document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},function(e,t,n){e.exports=!n(3)&&!n(9)(function(){return 7!=Object.defineProperty(n(32)("div"),"a",{get:function(){return 7}}).a})},function(e,t,n){"use strict";var r=n(19),i=n(12),o=n(39),a=n(6),s=n(4),c=n(18),u=n(63),l=n(21),f=n(69),p=n(8)("iterator"),d=!([].keys&&"next"in[].keys()),h="keys",v="values",m=function(){return this};e.exports=function(e,t,n,g,y,_,b){u(n,t,g);var w,x,C,O=function(e){if(!d&&e in A)return A[e];switch(e){case h:case v:return function(){return new n(this,e)}}return function(){return new n(this,e)}},k=t+" Iterator",$=y==v,S=!1,A=e.prototype,T=A[p]||A["@@iterator"]||y&&A[y],E=!d&&T||O(y),L=y?$?O("entries"):E:void 0,M="Array"==t&&A.entries||T;if(M&&(C=f(M.call(new e)))!==Object.prototype&&C.next&&(l(C,k,!0),r||s(C,p)||a(C,p,m)),$&&T&&T.name!==v&&(S=!0,E=function(){return T.call(this)}),r&&!b||!d&&!S&&A[p]||a(A,p,E),c[t]=E,c[k]=m,y)if(w={values:$?E:O(v),keys:_?E:O(h),entries:L},b)for(x in w)x in A||o(A,x,w[x]);else i(i.P+i.F*(d||S),t,w);return w}},function(e,t,n){var r=n(11),i=n(66),o=n(17),a=n(22)("IE_PROTO"),s=function(){},c="prototype",u=function(){var e,t=n(32)("iframe"),r=o.length;for(t.style.display="none",n(60).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),u=e.F;r--;)delete u[c][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[c]=r(e),n=new s,s[c]=null,n[a]=e):n=u(),void 0===t?n:i(n,t)}},function(e,t,n){var r=n(38),i=n(17).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,i)}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var r=n(4),i=n(7),o=n(57)(!1),a=n(22)("IE_PROTO");e.exports=function(e,t){var n,s=i(e),c=0,u=[];for(n in s)n!=a&&r(s,n)&&u.push(n);for(;t.length>c;)r(s,n=t[c++])&&(~o(u,n)||u.push(n));return u}},function(e,t,n){e.exports=n(6)},function(e,t,n){var r=n(16);e.exports=function(e){return Object(r(e))}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(45),o=r(i),a=n(48),s=r(a),c=n(43),u=r(c),l=n(49),f=r(l),p=n(29),d=r(p),h=n(30),v=r(h),m=n(28),g=r(m);t.default={mixins:[d.default,v.default,g.default],props:{value:{default:null},options:{type:Array,default:function(){return[]}},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},maxHeight:{type:String,default:"400px"},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:""},transition:{type:String,default:"fade"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:"label"},index:{type:String,default:null},getOptionLabel:{type:Function,default:function(e){return this.index&&(e=this.findOptionByIndexValue(e)),"object"===(void 0===e?"undefined":(0,f.default)(e))?e.hasOwnProperty(this.label)?e[this.label]:console.warn('[vue-select warn]: Label key "option.'+this.label+'" does not exist in options object '+(0,u.default)(e)+".\nhttp://sagalbot.github.io/vue-select/#ex-labels"):e}},onChange:{type:Function,default:function(e){this.$emit("input",e)}},onTab:{type:Function,default:function(){this.selectOnTab&&this.typeAheadSelect()}},taggable:{type:Boolean,default:!1},tabindex:{type:Number,default:null},pushTags:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},filterBy:{type:Function,default:function(e,t,n){return(t||"").toLowerCase().indexOf(n.toLowerCase())>-1}},filter:{type:Function,default:function(e,t){var n=this;return e.filter(function(e){var r=n.getOptionLabel(e);return"number"==typeof r&&(r=r.toString()),n.filterBy(e,r,t)})}},createOption:{type:Function,default:function(e){return"object"===(0,f.default)(this.mutableOptions[0])&&(e=(0,s.default)({},this.label,e)),this.$emit("option:created",e),e}},resetOnOptionsChange:{type:Boolean,default:!1},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:"auto"},selectOnTab:{type:Boolean,default:!1}},data:function(){return{search:"",open:!1,mutableValue:null,mutableOptions:[]}},watch:{value:function(e){this.mutableValue=e},mutableValue:function(e,t){this.multiple?this.onChange&&this.onChange(e):this.onChange&&e!==t&&this.onChange(e)},options:function(e){this.mutableOptions=e},mutableOptions:function(){!this.taggable&&this.resetOnOptionsChange&&(this.mutableValue=this.multiple?[]:null)},multiple:function(e){this.mutableValue=e?[]:null}},created:function(){this.mutableValue=this.value,this.mutableOptions=this.options.slice(0),this.mutableLoading=this.loading,this.$on("option:created",this.maybePushTag)},methods:{select:function(e){if(!this.isOptionSelected(e)){if(this.taggable&&!this.optionExists(e)&&(e=this.createOption(e)),this.index){if(!e.hasOwnProperty(this.index))return console.warn('[vue-select warn]: Index key "option.'+this.index+'" does not exist in options object '+(0,u.default)(e)+".");e=e[this.index]}this.multiple&&!this.mutableValue?this.mutableValue=[e]:this.multiple?this.mutableValue.push(e):this.mutableValue=e}this.onAfterSelect(e)},deselect:function(e){var t=this;if(this.multiple){var n=-1;this.mutableValue.forEach(function(r){(r===e||t.index&&r===e[t.index]||"object"===(void 0===r?"undefined":(0,f.default)(r))&&r[t.label]===e[t.label])&&(n=r)});var r=this.mutableValue.indexOf(n);this.mutableValue.splice(r,1)}else this.mutableValue=null},clearSelection:function(){this.mutableValue=this.multiple?[]:null},onAfterSelect:function(e){this.closeOnSelect&&(this.open=!this.open,this.$refs.search.blur()),this.clearSearchOnSelect&&(this.search="")},toggleDropdown:function(e){(e.target===this.$refs.openIndicator||e.target===this.$refs.search||e.target===this.$refs.toggle||e.target.classList.contains("selected-tag")||e.target===this.$el)&&(this.open?this.$refs.search.blur():this.disabled||(this.open=!0,this.$refs.search.focus()))},isOptionSelected:function(e){var t=this,n=!1;return this.valueAsArray.forEach(function(r){"object"===(void 0===r?"undefined":(0,f.default)(r))?n=t.optionObjectComparator(r,e):r!==e&&r!==e[t.index]||(n=!0)}),n},optionObjectComparator:function(e,t){return!(!this.index||e!==t[this.index])||e[this.label]===t[this.label]||e[this.label]===t||!(!this.index||e[this.index]!==t[this.index])},findOptionByIndexValue:function(e){var t=this;return this.options.forEach(function(n){(0,u.default)(n[t.index])===(0,u.default)(e)&&(e=n)}),e},onEscape:function(){this.search.length?this.search="":this.$refs.search.blur()},onSearchBlur:function(){this.mousedown&&!this.searching?this.mousedown=!1:(this.clearSearchOnBlur&&(this.search=""),this.open=!1,this.$emit("search:blur"))},onSearchFocus:function(){this.open=!0,this.$emit("search:focus")},maybeDeleteValue:function(){if(!this.$refs.search.value.length&&this.mutableValue)return this.multiple?this.mutableValue.pop():this.mutableValue=null},optionExists:function(e){var t=this,n=!1;return this.mutableOptions.forEach(function(r){"object"===(void 0===r?"undefined":(0,f.default)(r))&&r[t.label]===e?n=!0:r===e&&(n=!0)}),n},maybePushTag:function(e){this.pushTags&&this.mutableOptions.push(e)},onMousedown:function(){this.mousedown=!0}},computed:{dropdownClasses:function(){return{open:this.dropdownOpen,single:!this.multiple,searching:this.searching,searchable:this.searchable,unsearchable:!this.searchable,loading:this.mutableLoading,rtl:"rtl"===this.dir,disabled:this.disabled}},inputClasses:function(){return{hidden:!this.isValueEmpty&&!this.dropdownOpen}},clearSearchOnBlur:function(){return this.clearSearchOnSelect&&!this.multiple},searching:function(){return!!this.search},dropdownOpen:function(){return!this.noDrop&&this.open&&!this.mutableLoading},searchPlaceholder:function(){if(this.isValueEmpty&&this.placeholder)return this.placeholder},filteredOptions:function(){if(!this.filterable&&!this.taggable)return this.mutableOptions.slice();var e=this.search.length?this.filter(this.mutableOptions,this.search,this):this.mutableOptions;return this.taggable&&this.search.length&&!this.optionExists(this.search)&&e.unshift(this.search),e},isValueEmpty:function(){return!this.mutableValue||("object"===(0,f.default)(this.mutableValue)?!(0,o.default)(this.mutableValue).length:!this.valueAsArray.length)},valueAsArray:function(){return this.multiple&&this.mutableValue?this.mutableValue:this.mutableValue?[].concat(this.mutableValue):[]},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&null!=this.mutableValue}}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(28),o=r(i),a=n(30),s=r(a),c=n(29),u=r(c);t.default={ajax:o.default,pointer:s.default,pointerScroll:u.default}},function(e,t,n){e.exports={default:n(50),__esModule:!0}},function(e,t,n){e.exports={default:n(51),__esModule:!0}},function(e,t,n){e.exports={default:n(52),__esModule:!0}},function(e,t,n){e.exports={default:n(53),__esModule:!0}},function(e,t,n){e.exports={default:n(54),__esModule:!0}},function(e,t,n){"use strict";t.__esModule=!0;var r=n(44),i=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default=function(e,t,n){return t in e?(0,i.default)(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=n(47),o=r(i),a=n(46),s=r(a),c="function"==typeof s.default&&"symbol"==typeof o.default?function(e){return typeof e}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":typeof e};t.default="function"==typeof s.default&&"symbol"===c(o.default)?function(e){return void 0===e?"undefined":c(e)}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":void 0===e?"undefined":c(e)}},function(e,t,n){var r=n(2),i=r.JSON||(r.JSON={stringify:JSON.stringify});e.exports=function(e){return i.stringify.apply(i,arguments)}},function(e,t,n){n(75);var r=n(2).Object;e.exports=function(e,t,n){return r.defineProperty(e,t,n)}},function(e,t,n){n(76),e.exports=n(2).Object.keys},function(e,t,n){n(79),n(77),n(80),n(81),e.exports=n(2).Symbol},function(e,t,n){n(78),n(82),e.exports=n(27).f("iterator")},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t){e.exports=function(){}},function(e,t,n){var r=n(7),i=n(73),o=n(72);e.exports=function(e){return function(t,n,a){var s,c=r(t),u=i(c.length),l=o(a,u);if(e&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((e||l in c)&&c[l]===n)return e||l||0;return!e&&-1}}},function(e,t,n){var r=n(55);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var r=n(13),i=n(37),o=n(20);e.exports=function(e){var t=r(e),n=i.f;if(n)for(var a,s=n(e),c=o.f,u=0;s.length>u;)c.call(e,a=s[u++])&&t.push(a);return t}},function(e,t,n){var r=n(1).document;e.exports=r&&r.documentElement},function(e,t,n){var r=n(31);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},function(e,t,n){var r=n(31);e.exports=Array.isArray||function(e){return"Array"==r(e)}},function(e,t,n){"use strict";var r=n(35),i=n(14),o=n(21),a={};n(6)(a,n(8)("iterator"),function(){return this}),e.exports=function(e,t,n){e.prototype=r(a,{next:i(1,n)}),o(e,t+" Iterator")}},function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},function(e,t,n){var r=n(15)("meta"),i=n(10),o=n(4),a=n(5).f,s=0,c=Object.isExtensible||function(){return!0},u=!n(9)(function(){return c(Object.preventExtensions({}))}),l=function(e){a(e,r,{value:{i:"O"+ ++s,w:{}}})},f=e.exports={KEY:r,NEED:!1,fastKey:function(e,t){if(!i(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!o(e,r)){if(!c(e))return"F";if(!t)return"E";l(e)}return e[r].i},getWeak:function(e,t){if(!o(e,r)){if(!c(e))return!0;if(!t)return!1;l(e)}return e[r].w},onFreeze:function(e){return u&&f.NEED&&c(e)&&!o(e,r)&&l(e),e}}},function(e,t,n){var r=n(5),i=n(11),o=n(13);e.exports=n(3)?Object.defineProperties:function(e,t){i(e);for(var n,a=o(t),s=a.length,c=0;s>c;)r.f(e,n=a[c++],t[n]);return e}},function(e,t,n){var r=n(20),i=n(14),o=n(7),a=n(25),s=n(4),c=n(33),u=Object.getOwnPropertyDescriptor;t.f=n(3)?u:function(e,t){if(e=o(e),t=a(t,!0),c)try{return u(e,t)}catch(e){}if(s(e,t))return i(!r.f.call(e,t),e[t])}},function(e,t,n){var r=n(7),i=n(36).f,o={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return a&&"[object Window]"==o.call(e)?function(e){try{return i(e)}catch(e){return a.slice()}}(e):i(r(e))}},function(e,t,n){var r=n(4),i=n(40),o=n(22)("IE_PROTO"),a=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=i(e),r(e,o)?e[o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?a:null}},function(e,t,n){var r=n(12),i=n(2),o=n(9);e.exports=function(e,t){var n=(i.Object||{})[e]||Object[e],a={};a[e]=t(n),r(r.S+r.F*o(function(){n(1)}),"Object",a)}},function(e,t,n){var r=n(24),i=n(16);e.exports=function(e){return function(t,n){var o,a,s=String(i(t)),c=r(n),u=s.length;return c<0||c>=u?e?"":void 0:(o=s.charCodeAt(c))<55296||o>56319||c+1===u||(a=s.charCodeAt(c+1))<56320||a>57343?e?s.charAt(c):o:e?s.slice(c,c+2):a-56320+(o-55296<<10)+65536}}},function(e,t,n){var r=n(24),i=Math.max,o=Math.min;e.exports=function(e,t){return(e=r(e))<0?i(e+t,0):o(e,t)}},function(e,t,n){var r=n(24),i=Math.min;e.exports=function(e){return e>0?i(r(e),9007199254740991):0}},function(e,t,n){"use strict";var r=n(56),i=n(64),o=n(18),a=n(7);e.exports=n(34)(Array,"Array",function(e,t){this._t=a(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},function(e,t,n){var r=n(12);r(r.S+r.F*!n(3),"Object",{defineProperty:n(5).f})},function(e,t,n){var r=n(40),i=n(13);n(70)("keys",function(){return function(e){return i(r(e))}})},function(e,t){},function(e,t,n){"use strict";var r=n(71)(!0);n(34)(String,"String",function(e){this._t=String(e),this._i=0},function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})})},function(e,t,n){"use strict";var r=n(1),i=n(4),o=n(3),a=n(12),s=n(39),c=n(65).KEY,u=n(9),l=n(23),f=n(21),p=n(15),d=n(8),h=n(27),v=n(26),m=n(59),g=n(62),y=n(11),_=n(10),b=n(7),w=n(25),x=n(14),C=n(35),O=n(68),k=n(67),$=n(5),S=n(13),A=k.f,T=$.f,E=O.f,L=r.Symbol,M=r.JSON,j=M&&M.stringify,P="prototype",N=d("_hidden"),I=d("toPrimitive"),D={}.propertyIsEnumerable,U=l("symbol-registry"),R=l("symbols"),F=l("op-symbols"),V=Object[P],B="function"==typeof L,H=r.QObject,W=!H||!H[P]||!H[P].findChild,z=o&&u(function(){return 7!=C(T({},"a",{get:function(){return T(this,"a",{value:7}).a}})).a})?function(e,t,n){var r=A(V,t);r&&delete V[t],T(e,t,n),r&&e!==V&&T(V,t,r)}:T,K=function(e){var t=R[e]=C(L[P]);return t._k=e,t},G=B&&"symbol"==typeof L.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof L},J=function(e,t,n){return e===V&&J(F,t,n),y(e),t=w(t,!0),y(n),i(R,t)?(n.enumerable?(i(e,N)&&e[N][t]&&(e[N][t]=!1),n=C(n,{enumerable:x(0,!1)})):(i(e,N)||T(e,N,x(1,{})),e[N][t]=!0),z(e,t,n)):T(e,t,n)},q=function(e,t){y(e);for(var n,r=m(t=b(t)),i=0,o=r.length;o>i;)J(e,n=r[i++],t[n]);return e},X=function(e){var t=D.call(this,e=w(e,!0));return!(this===V&&i(R,e)&&!i(F,e))&&(!(t||!i(this,e)||!i(R,e)||i(this,N)&&this[N][e])||t)},Z=function(e,t){if(e=b(e),t=w(t,!0),e!==V||!i(R,t)||i(F,t)){var n=A(e,t);return!n||!i(R,t)||i(e,N)&&e[N][t]||(n.enumerable=!0),n}},Y=function(e){for(var t,n=E(b(e)),r=[],o=0;n.length>o;)i(R,t=n[o++])||t==N||t==c||r.push(t);return r},Q=function(e){for(var t,n=e===V,r=E(n?F:b(e)),o=[],a=0;r.length>a;)!i(R,t=r[a++])||n&&!i(V,t)||o.push(R[t]);return o};B||(s((L=function(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var e=p(arguments.length>0?arguments[0]:void 0),t=function(n){this===V&&t.call(F,n),i(this,N)&&i(this[N],e)&&(this[N][e]=!1),z(this,e,x(1,n))};return o&&W&&z(V,e,{configurable:!0,set:t}),K(e)})[P],"toString",function(){return this._k}),k.f=Z,$.f=J,n(36).f=O.f=Y,n(20).f=X,n(37).f=Q,o&&!n(19)&&s(V,"propertyIsEnumerable",X,!0),h.f=function(e){return K(d(e))}),a(a.G+a.W+a.F*!B,{Symbol:L});for(var ee="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),te=0;ee.length>te;)d(ee[te++]);for(var ne=S(d.store),re=0;ne.length>re;)v(ne[re++]);a(a.S+a.F*!B,"Symbol",{for:function(e){return i(U,e+="")?U[e]:U[e]=L(e)},keyFor:function(e){if(!G(e))throw TypeError(e+" is not a symbol!");for(var t in U)if(U[t]===e)return t},useSetter:function(){W=!0},useSimple:function(){W=!1}}),a(a.S+a.F*!B,"Object",{create:function(e,t){return void 0===t?C(e):q(C(e),t)},defineProperty:J,defineProperties:q,getOwnPropertyDescriptor:Z,getOwnPropertyNames:Y,getOwnPropertySymbols:Q}),M&&a(a.S+a.F*(!B||u(function(){var e=L();return"[null]"!=j([e])||"{}"!=j({a:e})||"{}"!=j(Object(e))})),"JSON",{stringify:function(e){for(var t,n,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(n=t=r[1],(_(t)||void 0!==e)&&!G(e))return g(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!G(t))return t}),r[1]=t,j.apply(M,r)}}),L[P][I]||n(6)(L[P],I,L[P].valueOf),f(L,"Symbol"),f(Math,"Math",!0),f(r.JSON,"JSON",!0)},function(e,t,n){n(26)("asyncIterator")},function(e,t,n){n(26)("observable")},function(e,t,n){n(74);for(var r=n(1),i=n(6),o=n(18),a=n(8)("toStringTag"),s="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<s.length;c++){var u=s[c],l=r[u],f=l&&l.prototype;f&&!f[a]&&i(f,a,u),o[u]=o.Array}},function(e,t,n){(e.exports=n(84)()).push([e.id,'.v-select{position:relative;font-family:inherit}.v-select,.v-select *{box-sizing:border-box}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .dropdown-toggle .clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .selected-tag .close{margin-left:0;margin-right:2px}.v-select[dir=rtl] .dropdown-menu{text-align:right}.v-select .open-indicator{display:flex;align-items:center;cursor:pointer;pointer-events:all;opacity:1;width:12px}.v-select .open-indicator,.v-select .open-indicator:before{transition:all .15s cubic-bezier(1,-.115,.975,.855);transition-timing-function:cubic-bezier(1,-.115,.975,.855)}.v-select .open-indicator:before{border-color:rgba(60,60,60,.5);border-style:solid;border-width:3px 3px 0 0;content:"";display:inline-block;height:10px;width:10px;vertical-align:text-top;transform:rotate(133deg);box-sizing:inherit}.v-select.open .open-indicator:before{transform:rotate(315deg)}.v-select.loading .open-indicator{opacity:0}.v-select .dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;padding:0 0 4px;background:none;border:1px solid rgba(60,60,60,.26);border-radius:4px;white-space:normal}.v-select .vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px}.v-select .vs__actions{display:flex;align-items:stretch;padding:0 6px 0 3px}.v-select .dropdown-toggle .clear{font-size:23px;font-weight:700;line-height:1;color:rgba(60,60,60,.5);padding:0;border:0;background-color:transparent;cursor:pointer;margin-right:6px}.v-select.searchable .dropdown-toggle{cursor:text}.v-select.unsearchable .dropdown-toggle{cursor:pointer}.v-select.open .dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.v-select .dropdown-menu{display:block;position:absolute;top:100%;left:0;z-index:1000;min-width:160px;padding:5px 0;margin:0;width:100%;overflow-y:scroll;border:1px solid rgba(0,0,0,.26);box-shadow:0 3px 6px 0 rgba(0,0,0,.15);border-top:none;border-radius:0 0 4px 4px;text-align:left;list-style:none;background:#fff}.v-select .no-options{text-align:center}.v-select .selected-tag{display:flex;align-items:center;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;color:#333;line-height:1.42857143;margin:4px 2px 0;padding:0 .25em}.v-select.single .selected-tag{background-color:transparent;border-color:transparent}.v-select.single.loading .selected-tag,.v-select.single.open .selected-tag{display:none}.v-select .selected-tag .close{margin-left:2px;font-size:1.25em;appearance:none;padding:0;cursor:pointer;background:0 0;border:0;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.v-select.single.searching:not(.open):not(.loading) input[type=search]{opacity:.2}.v-select input[type=search]::-webkit-search-cancel-button,.v-select input[type=search]::-webkit-search-decoration,.v-select input[type=search]::-webkit-search-results-button,.v-select input[type=search]::-webkit-search-results-decoration{display:none}.v-select input[type=search]::-ms-clear{display:none}.v-select input[type=search],.v-select input[type=search]:focus{appearance:none;-webkit-appearance:none;-moz-appearance:none;line-height:1.42857143;font-size:1em;display:inline-block;border:1px solid transparent;outline:none;margin:4px 0 0;padding:0 .5em;max-width:100%;background:none;box-shadow:none;flex-grow:1;width:4em}.v-select.unsearchable input[type=search]{opacity:0}.v-select.unsearchable input[type=search]:hover{cursor:pointer}.v-select input[type=search].hidden{border:none;padding:0;width:0}.v-select li{line-height:1.42857143}.v-select li>a{display:block;padding:3px 20px;clear:both;color:#333;white-space:nowrap}.v-select li:hover{cursor:pointer}.v-select .dropdown-menu .active>a{color:#333;background:rgba(50,50,50,.1)}.v-select .dropdown-menu>.highlight>a{background:#5897fb;color:#fff}.v-select .highlight:not(:last-child){margin-bottom:0}.v-select .spinner{align-self:center;opacity:0;font-size:5px;text-indent:-9999em;overflow:hidden;border-top:.9em solid hsla(0,0%,39%,.1);border-right:.9em solid hsla(0,0%,39%,.1);border-bottom:.9em solid hsla(0,0%,39%,.1);border-left:.9em solid rgba(60,60,60,.45);transform:translateZ(0);animation:vSelectSpinner 1.1s infinite linear;transition:opacity .1s}.v-select .spinner,.v-select .spinner:after{border-radius:50%;width:5em;height:5em}.v-select.disabled .dropdown-toggle,.v-select.disabled .dropdown-toggle .clear,.v-select.disabled .dropdown-toggle input,.v-select.disabled .open-indicator,.v-select.disabled .selected-tag .close{cursor:not-allowed;background-color:#f8f8f8}.v-select.loading .spinner{opacity:1}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fade-enter-active,.fade-leave-active{transition:opacity .15s cubic-bezier(1,.5,.8,1)}.fade-enter,.fade-leave-to{opacity:0}',""])},function(e,t){e.exports=function(){var e=[];return e.toString=function(){for(var e=[],t=0;t<this.length;t++){var n=this[t];n[2]?e.push("@media "+n[2]+"{"+n[1]+"}"):e.push(n[1])}return e.join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var r={},i=0;i<this.length;i++){var o=this[i][0];"number"==typeof o&&(r[o]=!0)}for(i=0;i<t.length;i++){var a=t[i];"number"==typeof a[0]&&r[a[0]]||(n&&!a[2]?a[2]=n:n&&(a[2]="("+a[2]+") and ("+n+")"),e.push(a))}},e}},function(e,t,n){n(89);var r=n(86)(n(41),n(87),null,null);e.exports=r.exports},function(e,t){e.exports=function(e,t,n,r){var i,o=e=e||{},a=typeof e.default;"object"!==a&&"function"!==a||(i=e,o=e.default);var s="function"==typeof o?o.options:o;if(t&&(s.render=t.render,s.staticRenderFns=t.staticRenderFns),n&&(s._scopeId=n),r){var c=s.computed||(s.computed={});Object.keys(r).forEach(function(e){var t=r[e];c[e]=function(){return t}})}return{esModule:i,exports:o,options:s}}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"dropdown v-select",class:e.dropdownClasses,attrs:{dir:e.dir}},[n("div",{ref:"toggle",staticClass:"dropdown-toggle",on:{mousedown:function(t){t.preventDefault(),e.toggleDropdown(t)}}},[n("div",{ref:"selectedOptions",staticClass:"vs__selected-options"},[e._l(e.valueAsArray,function(t){return e._t("selected-option-container",[n("span",{key:t.index,staticClass:"selected-tag"},[e._t("selected-option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,"object"==typeof t?t:(r={},r[e.label]=t,r)),e._v(" "),e.multiple?n("button",{staticClass:"close",attrs:{disabled:e.disabled,type:"button","aria-label":"Remove option"},on:{click:function(n){e.deselect(t)}}},[n("span",{attrs:{"aria-hidden":"true"}},[e._v("×")])]):e._e()],2)],{option:"object"==typeof t?t:(i={},i[e.label]=t,i),deselect:e.deselect,multiple:e.multiple,disabled:e.disabled});var r,i}),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"search",staticClass:"form-control",class:e.inputClasses,attrs:{type:"search",autocomplete:"off",disabled:e.disabled,placeholder:e.searchPlaceholder,tabindex:e.tabindex,readonly:!e.searchable,id:e.inputId,role:"combobox","aria-expanded":e.dropdownOpen,"aria-label":"Search for option"},domProps:{value:e.search},on:{keydown:[function(t){return"button"in t||!e._k(t.keyCode,"delete",[8,46],t.key)?void e.maybeDeleteValue(t):null},function(t){return"button"in t||!e._k(t.keyCode,"up",38,t.key)?(t.preventDefault(),void e.typeAheadUp(t)):null},function(t){return"button"in t||!e._k(t.keyCode,"down",40,t.key)?(t.preventDefault(),void e.typeAheadDown(t)):null},function(t){return"button"in t||!e._k(t.keyCode,"enter",13,t.key)?(t.preventDefault(),void e.typeAheadSelect(t)):null},function(t){return"button"in t||!e._k(t.keyCode,"tab",9,t.key)?void e.onTab(t):null}],keyup:function(t){return"button"in t||!e._k(t.keyCode,"esc",27,t.key)?void e.onEscape(t):null},blur:e.onSearchBlur,focus:e.onSearchFocus,input:function(t){t.target.composing||(e.search=t.target.value)}}})],2),e._v(" "),n("div",{staticClass:"vs__actions"},[n("button",{directives:[{name:"show",rawName:"v-show",value:e.showClearButton,expression:"showClearButton"}],staticClass:"clear",attrs:{disabled:e.disabled,type:"button",title:"Clear selection"},on:{click:e.clearSelection}},[n("span",{attrs:{"aria-hidden":"true"}},[e._v("×")])]),e._v(" "),e.noDrop?e._e():n("i",{ref:"openIndicator",staticClass:"open-indicator",attrs:{role:"presentation"}}),e._v(" "),e._t("spinner",[n("div",{directives:[{name:"show",rawName:"v-show",value:e.mutableLoading,expression:"mutableLoading"}],staticClass:"spinner"},[e._v("Loading...")])])],2)]),e._v(" "),n("transition",{attrs:{name:e.transition}},[e.dropdownOpen?n("ul",{ref:"dropdownMenu",staticClass:"dropdown-menu",style:{"max-height":e.maxHeight},attrs:{role:"listbox"},on:{mousedown:e.onMousedown}},[e._l(e.filteredOptions,function(t,r){return n("li",{key:r,class:{active:e.isOptionSelected(t),highlight:r===e.typeAheadPointer},attrs:{role:"option"},on:{mouseover:function(t){e.typeAheadPointer=r}}},[n("a",{on:{mousedown:function(n){n.preventDefault(),n.stopPropagation(),e.select(t)}}},[e._t("option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,"object"==typeof t?t:(i={},i[e.label]=t,i))],2)]);var i}),e._v(" "),e.filteredOptions.length?e._e():n("li",{staticClass:"no-options"},[e._t("no-options",[e._v("Sorry, no matching options.")])],2)],2):e._e()])],1)},staticRenderFns:[]}},function(e,t,n){function r(e,t){for(var n=0;n<e.length;n++){var r=e[n],i=c[r.id];if(i){i.refs++;for(var o=0;o<i.parts.length;o++)i.parts[o](r.parts[o]);for(;o<r.parts.length;o++)i.parts.push(a(r.parts[o],t))}else{for(var s=[],o=0;o<r.parts.length;o++)s.push(a(r.parts[o],t));c[r.id]={id:r.id,refs:1,parts:s}}}}function i(e){for(var t=[],n={},r=0;r<e.length;r++){var i=e[r],o=i[0],a=i[1],s=i[2],c=i[3],u={css:a,media:s,sourceMap:c};n[o]?n[o].parts.push(u):t.push(n[o]={id:o,parts:[u]})}return t}function o(e){var t=document.createElement("style");return t.type="text/css",function(e,t){var n=f(),r=h[h.length-1];if("top"===e.insertAt)r?r.nextSibling?n.insertBefore(t,r.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),h.push(t);else{if("bottom"!==e.insertAt)throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");n.appendChild(t)}}(e,t),t}function a(e,t){var n,r,i;if(t.singleton){var a=d++;n=p||(p=o(t)),r=s.bind(null,n,a,!1),i=s.bind(null,n,a,!0)}else n=o(t),r=function(e,t){var n=t.css,r=t.media,i=t.sourceMap;if(r&&e.setAttribute("media",r),i&&(n+="\n/*# sourceURL="+i.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),i=function(){!function(e){e.parentNode.removeChild(e);var t=h.indexOf(e);t>=0&&h.splice(t,1)}(n)};return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else i()}}function s(e,t,n,r){var i=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=v(t,i);else{var o=document.createTextNode(i),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(o,a[t]):e.appendChild(o)}}var c={},u=function(e){var t;return function(){return void 0===t&&(t=e.apply(this,arguments)),t}},l=u(function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())}),f=u(function(){return document.head||document.getElementsByTagName("head")[0]}),p=null,d=0,h=[];e.exports=function(e,t){void 0===(t=t||{}).singleton&&(t.singleton=l()),void 0===t.insertAt&&(t.insertAt="bottom");var n=i(e);return r(n,t),function(e){for(var o=[],a=0;a<n.length;a++){var s=n[a],u=c[s.id];u.refs--,o.push(u)}if(e){var l=i(e);r(l,t)}for(var a=0;a<o.length;a++){var u=o[a];if(0===u.refs){for(var f=0;f<u.parts.length;f++)u.parts[f]();delete c[u.id]}}}};var v=function(){var e=[];return function(t,n){return e[t]=n,e.filter(Boolean).join("\n")}}()},function(e,t,n){var r=n(83);"string"==typeof r&&(r=[[e.id,r,""]]),n(88)(r,{}),r.locals&&(e.exports=r.locals)}])},function(e,t){function n(e){return"function"==typeof e.value||(console.warn("[Vue-click-outside:] provided expression",e.expression,"is not a function."),!1)}function r(e){return void 0!==e.componentInstance&&e.componentInstance.$isServer}e.exports={bind:function(e,t,i){function o(t){if(i.context){var n=t.path||t.composedPath&&t.composedPath();n&&n.length>0&&n.unshift(t.target),e.contains(t.target)||function(e,t){if(!e||!t)return!1;for(var n=0,r=t.length;n<r;n++)try{if(e.contains(t[n]))return!0;if(t[n].contains(e))return!1}catch(e){return!1}return!1}(i.context.popupItem,n)||e.__vueClickOutside__.callback(t)}}n(t)&&(e.__vueClickOutside__={handler:o,callback:t.value},!r(i)&&document.addEventListener("click",o))},update:function(e,t){n(t)&&(e.__vueClickOutside__.callback=t.value)},unbind:function(e,t,n){!r(n)&&document.removeEventListener("click",e.__vueClickOutside__.handler),delete e.__vueClickOutside__}}},function(e,t,n){"use strict";var r=function(){var e=this.$createElement,t=this._self._c||e;return t("ul",this._l(this.menu,function(e,n){return t("popover-item",{key:n,attrs:{item:e}})}))};r._withStripped=!0;var i=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("li",[e.item.href?n("a",{attrs:{href:e.item.href?e.item.href:"#",target:e.item.target?e.item.target:"",rel:"noreferrer noopener"},on:{click:e.item.action}},[n("span",{class:e.item.icon}),e._v(" "),e.item.text?n("span",[e._v(e._s(e.item.text))]):e.item.longtext?n("p",[e._v(e._s(e.item.longtext))]):e._e()]):e.item.action?n("button",{on:{click:e.item.action}},[n("span",{class:e.item.icon}),e._v(" "),e.item.text?n("span",[e._v(e._s(e.item.text))]):e.item.longtext?n("p",[e._v(e._s(e.item.longtext))]):e._e()]):n("span",{staticClass:"menuitem"},[n("span",{class:e.item.icon}),e._v(" "),e.item.text?n("span",[e._v(e._s(e.item.text))]):e.item.longtext?n("p",[e._v(e._s(e.item.longtext))]):e._e()])])};i._withStripped=!0;var o={props:["item"]},a=n(0),s=Object(a.a)(o,i,[],!1,null,null,null);s.options.__file="src/components/popoverMenu/popoverItem.vue";var c={name:"popoverMenu",props:["menu"],components:{popoverItem:s.exports}},u=Object(a.a)(c,r,[],!1,null,null,null);u.options.__file="src/components/popoverMenu.vue";t.a=u.exports},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function o(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new o(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new o(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n(8),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(2))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i=1,o={},a=!1,s=e.document,c=Object.getPrototypeOf&&Object.getPrototypeOf(e);c=c&&c.setTimeout?c:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick(function(){l(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?function(){var t="setImmediate$"+Math.random()+"$",n=function(n){n.source===e&&"string"==typeof n.data&&0===n.data.indexOf(t)&&l(+n.data.slice(t.length))};e.addEventListener?e.addEventListener("message",n,!1):e.attachEvent("onmessage",n),r=function(n){e.postMessage(t+n,"*")}}():e.MessageChannel?function(){var e=new MessageChannel;e.port1.onmessage=function(e){l(e.data)},r=function(t){e.port2.postMessage(t)}}():s&&"onreadystatechange"in s.createElement("script")?function(){var e=s.documentElement;r=function(t){var n=s.createElement("script");n.onreadystatechange=function(){l(t),n.onreadystatechange=null,e.removeChild(n),n=null},e.appendChild(n)}}():r=function(e){setTimeout(l,0,e)},c.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var a={callback:e,args:t};return o[i]=a,r(i),i++},c.clearImmediate=u}function u(e){delete o[e]}function l(e){if(a)setTimeout(l,0,e);else{var t=o[e];if(t){a=!0;try{!function(e){var t=e.callback,r=e.args;switch(r.length){case 0:t();break;case 1:t(r[0]);break;case 2:t(r[0],r[1]);break;case 3:t(r[0],r[1],r[2]);break;default:t.apply(n,r)}}(t)}finally{u(e),a=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(2),n(9))},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var c,u=[],l=!1,f=-1;function p(){l&&c&&(l=!1,c.length?u=c.concat(u):f=-1,u.length&&d())}function d(){if(!l){var e=s(p);l=!0;for(var t=u.length;t;){for(c=u,u=[];++f<t;)c&&c[f].run();f=-1,t=u.length}c=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===a||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function h(e,t){this.fun=e,this.array=t}function v(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new h(e,t)),1!==u.length||l||s(d)},h.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=v,i.addListener=v,i.once=v,i.off=v,i.removeListener=v,i.removeAllListeners=v,i.emit=v,i.prependListener=v,i.prependOnceListener=v,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){"use strict";n.r(t);var r=n(3),i=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"followupsection",attrs:{id:"updatenotification"}},[n("div",{staticClass:"update"},[e.isNewVersionAvailable?[e.versionIsEol?n("p",[n("span",{staticClass:"warning"},[n("span",{staticClass:"icon icon-error"}),e._v("\n\t\t\t\t\t"+e._s(e.t("updatenotification","The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible."))+"\n\t\t\t\t")])]):e._e(),e._v(" "),n("p",[n("span",{domProps:{innerHTML:e._s(e.newVersionAvailableString)}}),n("br"),e._v(" "),e.isListFetched?e._e():n("span",{staticClass:"icon icon-loading-small"}),e._v(" "),n("span",{domProps:{innerHTML:e._s(e.statusText)}})]),e._v(" "),e.missingAppUpdates.length?[n("h3",{on:{click:e.toggleHideMissingUpdates}},[e._v("\n\t\t\t\t\t"+e._s(e.t("updatenotification","Apps missing updates"))+"\n\t\t\t\t\t"),e.hideMissingUpdates?e._e():n("span",{staticClass:"icon icon-triangle-n"}),e._v(" "),e.hideMissingUpdates?n("span",{staticClass:"icon icon-triangle-s"}):e._e()]),e._v(" "),e.hideMissingUpdates?e._e():n("ul",{staticClass:"applist"},e._l(e.missingAppUpdates,function(t){return n("li",[n("a",{attrs:{href:"https://apps.nextcloud.com/apps/"+t.appId,title:e.t("settings","View in store")}},[e._v(e._s(t.appName)+" ↗")])])}))]:e._e(),e._v(" "),e.availableAppUpdates.length?[n("h3",{on:{click:e.toggleHideAvailableUpdates}},[e._v("\n\t\t\t\t\t"+e._s(e.t("updatenotification","Apps with available updates"))+"\n\t\t\t\t\t"),e.hideAvailableUpdates?e._e():n("span",{staticClass:"icon icon-triangle-n"}),e._v(" "),e.hideAvailableUpdates?n("span",{staticClass:"icon icon-triangle-s"}):e._e()]),e._v(" "),n("ul",{staticClass:"applist"},e._l(e.availableAppUpdates,function(t){return e.hideAvailableUpdates?e._e():n("li",[n("a",{attrs:{href:"https://apps.nextcloud.com/apps/"+t.appId,title:e.t("settings","View in store")}},[e._v(e._s(t.appName)+" ↗")])])}))]:e._e(),e._v(" "),e.updaterEnabled?n("a",{staticClass:"button",attrs:{href:"#"},on:{click:e.clickUpdaterButton}},[e._v(e._s(e.t("updatenotification","Open updater")))]):e._e(),e._v(" "),e.downloadLink?n("a",{staticClass:"button",class:{hidden:!e.updaterEnabled},attrs:{href:e.downloadLink}},[e._v(e._s(e.t("updatenotification","Download now")))]):e._e(),e._v(" "),e.whatsNew?n("div",{staticClass:"whatsNew"},[n("div",{staticClass:"toggleWhatsNew"},[n("span",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.hideMenu,expression:"hideMenu"}],on:{click:e.toggleMenu}},[e._v(e._s(e.t("updatenotification","What's new?")))]),e._v(" "),n("div",{staticClass:"popovermenu",class:{"menu-center":!0,open:e.openedWhatsNew}},[n("popover-menu",{attrs:{menu:e.whatsNew}})],1)])]):e._e()]:e.isUpdateChecked?[e._v("\n\t\t\t"+e._s(e.t("updatenotification","Your version is up to date."))+"\n\t\t\t"),n("span",{staticClass:"icon-info svg",attrs:{title:e.lastCheckedOnString}})]:[e._v(e._s(e.t("updatenotification","The update check is not yet finished. Please refresh the page.")))],e._v(" "),e.isDefaultUpdateServerURL?e._e():[n("br"),e._v(" "),n("em",[e._v(e._s(e.t("updatenotification","A non-default update server is in use to be checked for updates:"))+" "),n("code",[e._v(e._s(e.updateServerURL))])])]],2),e._v(" "),n("p",[n("label",{attrs:{for:"release-channel"}},[e._v(e._s(e.t("updatenotification","Update channel:")))]),e._v(" "),n("select",{directives:[{name:"model",rawName:"v-model",value:e.currentChannel,expression:"currentChannel"}],attrs:{id:"release-channel"},on:{change:[function(t){var n=Array.prototype.filter.call(t.target.options,function(e){return e.selected}).map(function(e){return"_value"in e?e._value:e.value});e.currentChannel=t.target.multiple?n:n[0]},e.changeReleaseChannel]}},e._l(e.channels,function(t){return n("option",{domProps:{value:t}},[e._v(e._s(t))])})),e._v(" "),n("span",{staticClass:"msg",attrs:{id:"channel_save_msg"}}),n("br"),e._v(" "),n("em",[e._v(e._s(e.t("updatenotification","You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel.")))]),n("br"),e._v(" "),n("em",[e._v(e._s(e.t("updatenotification","Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found.")))])]),e._v(" "),n("p",{staticClass:"channel-description"},[n("span",{domProps:{innerHTML:e._s(e.productionInfoString)}}),n("br"),e._v(" "),n("span",{domProps:{innerHTML:e._s(e.stableInfoString)}}),n("br"),e._v(" "),n("span",{domProps:{innerHTML:e._s(e.betaInfoString)}})]),e._v(" "),n("p",{attrs:{id:"oca_updatenotification_groups"}},[e._v("\n\t\t"+e._s(e.t("updatenotification","Notify members of the following groups about available updates:"))+"\n\t\t"),n("v-select",{attrs:{multiple:"",value:e.notifyGroups,options:e.availableGroups}}),n("br"),e._v(" "),"daily"===e.currentChannel||"git"===e.currentChannel?n("em",[e._v(e._s(e.t("updatenotification","Only notification for app updates are available.")))]):e._e(),e._v(" "),"daily"===e.currentChannel?n("em",[e._v(e._s(e.t("updatenotification","The selected update channel makes dedicated notifications for the server obsolete.")))]):e._e(),e._v(" "),"git"===e.currentChannel?n("em",[e._v(e._s(e.t("updatenotification","The selected update channel does not support updates of the server.")))]):e._e()],1)])};i._withStripped=!0;var o=n(1).a,a=n(0),s=Object(a.a)(o,i,[],!1,null,null,null);s.options.__file="src/components/root.vue";var c=s.exports;
+var r=Object.freeze({});function i(e){return void 0===e||null===e}function o(e){return void 0!==e&&null!==e}function a(e){return!0===e}function s(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function c(e){return null!==e&&"object"==typeof e}var u=Object.prototype.toString;function l(e){return"[object Object]"===u.call(e)}function f(e){return"[object RegExp]"===u.call(e)}function p(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function d(e){return null==e?"":"object"==typeof e?JSON.stringify(e,null,2):String(e)}function h(e){var t=parseFloat(e);return isNaN(t)?e:t}function v(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var m=v("slot,component",!0),g=v("key,ref,slot,slot-scope,is");function y(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var _=Object.prototype.hasOwnProperty;function b(e,t){return _.call(e,t)}function w(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var x=/-(\w)/g,C=w(function(e){return e.replace(x,function(e,t){return t?t.toUpperCase():""})}),O=w(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),k=/\B([A-Z])/g,$=w(function(e){return e.replace(k,"-$1").toLowerCase()});var S=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function A(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function T(e,t){for(var n in t)e[n]=t[n];return e}function E(e){for(var t={},n=0;n<e.length;n++)e[n]&&T(t,e[n]);return t}function L(e,t,n){}var M=function(e,t,n){return!1},j=function(e){return e};function P(e,t){if(e===t)return!0;var n=c(e),r=c(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),o=Array.isArray(t);if(i&&o)return e.length===t.length&&e.every(function(e,n){return P(e,t[n])});if(i||o)return!1;var a=Object.keys(e),s=Object.keys(t);return a.length===s.length&&a.every(function(n){return P(e[n],t[n])})}catch(e){return!1}}function N(e,t){for(var n=0;n<e.length;n++)if(P(e[n],t))return n;return-1}function I(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var D="data-server-rendered",U=["component","directive","filter"],R=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured"],F={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:M,isReservedAttr:M,isUnknownElement:M,getTagNamespace:L,parsePlatformTagName:j,mustUseProp:M,_lifecycleHooks:R};function V(e){var t=(e+"").charCodeAt(0);return 36===t||95===t}function B(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var H=/[^\w.$]/;var W,z="__proto__"in{},K="undefined"!=typeof window,G="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,J=G&&WXEnvironment.platform.toLowerCase(),q=K&&window.navigator.userAgent.toLowerCase(),X=q&&/msie|trident/.test(q),Z=q&&q.indexOf("msie 9.0")>0,Y=q&&q.indexOf("edge/")>0,Q=(q&&q.indexOf("android"),q&&/iphone|ipad|ipod|ios/.test(q)||"ios"===J),ee=(q&&/chrome\/\d+/.test(q),{}.watch),te=!1;if(K)try{var ne={};Object.defineProperty(ne,"passive",{get:function(){te=!0}}),window.addEventListener("test-passive",null,ne)}catch(e){}var re=function(){return void 0===W&&(W=!K&&!G&&void 0!==e&&"server"===e.process.env.VUE_ENV),W},ie=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function oe(e){return"function"==typeof e&&/native code/.test(e.toString())}var ae,se="undefined"!=typeof Symbol&&oe(Symbol)&&"undefined"!=typeof Reflect&&oe(Reflect.ownKeys);ae="undefined"!=typeof Set&&oe(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ce=L,ue=0,le=function(){this.id=ue++,this.subs=[]};le.prototype.addSub=function(e){this.subs.push(e)},le.prototype.removeSub=function(e){y(this.subs,e)},le.prototype.depend=function(){le.target&&le.target.addDep(this)},le.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t<n;t++)e[t].update()},le.target=null;var fe=[];function pe(e){le.target&&fe.push(le.target),le.target=e}function de(){le.target=fe.pop()}var he=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},ve={child:{configurable:!0}};ve.child.get=function(){return this.componentInstance},Object.defineProperties(he.prototype,ve);var me=function(e){void 0===e&&(e="");var t=new he;return t.text=e,t.isComment=!0,t};function ge(e){return new he(void 0,void 0,void 0,String(e))}function ye(e){var t=new he(e.tag,e.data,e.children,e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.isCloned=!0,t}var _e=Array.prototype,be=Object.create(_e);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(e){var t=_e[e];B(be,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var we=Object.getOwnPropertyNames(be),xe=!0;function Ce(e){xe=e}var Oe=function(e){(this.value=e,this.dep=new le,this.vmCount=0,B(e,"__ob__",this),Array.isArray(e))?((z?ke:$e)(e,be,we),this.observeArray(e)):this.walk(e)};function ke(e,t,n){e.__proto__=t}function $e(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];B(e,o,t[o])}}function Se(e,t){var n;if(c(e)&&!(e instanceof he))return b(e,"__ob__")&&e.__ob__ instanceof Oe?n=e.__ob__:xe&&!re()&&(Array.isArray(e)||l(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new Oe(e)),t&&n&&n.vmCount++,n}function Ae(e,t,n,r,i){var o=new le,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get;s||2!==arguments.length||(n=e[t]);var c=a&&a.set,u=!i&&Se(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return le.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&function e(t){for(var n=void 0,r=0,i=t.length;r<i;r++)(n=t[r])&&n.__ob__&&n.__ob__.dep.depend(),Array.isArray(n)&&e(n)}(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||(c?c.call(e,t):n=t,u=!i&&Se(t),o.notify())}})}}function Te(e,t,n){if(Array.isArray(e)&&p(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(Ae(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function Ee(e,t){if(Array.isArray(e)&&p(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||b(e,t)&&(delete e[t],n&&n.dep.notify())}}Oe.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)Ae(e,t[n])},Oe.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Se(e[t])};var Le=F.optionMergeStrategies;function Me(e,t){if(!t)return e;for(var n,r,i,o=Object.keys(t),a=0;a<o.length;a++)r=e[n=o[a]],i=t[n],b(e,n)?l(r)&&l(i)&&Me(r,i):Te(e,n,i);return e}function je(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Me(r,i):i}:t?e?function(){return Me("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Pe(e,t){return t?e?e.concat(t):Array.isArray(t)?t:[t]:e}function Ne(e,t,n,r){var i=Object.create(e||null);return t?T(i,t):i}Le.data=function(e,t,n){return n?je(e,t,n):t&&"function"!=typeof t?e:je(e,t)},R.forEach(function(e){Le[e]=Pe}),U.forEach(function(e){Le[e+"s"]=Ne}),Le.watch=function(e,t,n,r){if(e===ee&&(e=void 0),t===ee&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in T(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Le.props=Le.methods=Le.inject=Le.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return T(i,e),t&&T(i,t),i},Le.provide=je;var Ie=function(e,t){return void 0===t?e:t};function De(e,t,n){"function"==typeof t&&(t=t.options),function(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[C(i)]={type:null});else if(l(n))for(var a in n)i=n[a],o[C(a)]=l(i)?i:{type:i};e.props=o}}(t),function(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(l(n))for(var o in n){var a=n[o];r[o]=l(a)?T({from:o},a):{from:a}}}}(t),function(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}(t);var r=t.extends;if(r&&(e=De(e,r,n)),t.mixins)for(var i=0,o=t.mixins.length;i<o;i++)e=De(e,t.mixins[i],n);var a,s={};for(a in e)c(a);for(a in t)b(e,a)||c(a);function c(r){var i=Le[r]||Ie;s[r]=i(e[r],t[r],n,r)}return s}function Ue(e,t,n,r){if("string"==typeof n){var i=e[t];if(b(i,n))return i[n];var o=C(n);if(b(i,o))return i[o];var a=O(o);return b(i,a)?i[a]:i[n]||i[o]||i[a]}}function Re(e,t,n,r){var i=t[e],o=!b(n,e),a=n[e],s=Be(Boolean,i.type);if(s>-1)if(o&&!b(i,"default"))a=!1;else if(""===a||a===$(e)){var c=Be(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(e,t,n){if(!b(t,"default"))return;var r=t.default;0;if(e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n])return e._props[n];return"function"==typeof r&&"Function"!==Fe(t.type)?r.call(e):r}(r,i,e);var u=xe;Ce(!0),Se(a),Ce(u)}return a}function Fe(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function Ve(e,t){return Fe(e)===Fe(t)}function Be(e,t){if(!Array.isArray(t))return Ve(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(Ve(t[n],e))return n;return-1}function He(e,t,n){if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(e){We(e,r,"errorCaptured hook")}}We(e,t,n)}function We(e,t,n){if(F.errorHandler)try{return F.errorHandler.call(null,e,t,n)}catch(e){ze(e,null,"config.errorHandler")}ze(e,t,n)}function ze(e,t,n){if(!K&&!G||"undefined"==typeof console)throw e;console.error(e)}var Ke,Ge,Je=[],qe=!1;function Xe(){qe=!1;var e=Je.slice(0);Je.length=0;for(var t=0;t<e.length;t++)e[t]()}var Ze=!1;if(void 0!==n&&oe(n))Ge=function(){n(Xe)};else if("undefined"==typeof MessageChannel||!oe(MessageChannel)&&"[object MessageChannelConstructor]"!==MessageChannel.toString())Ge=function(){setTimeout(Xe,0)};else{var Ye=new MessageChannel,Qe=Ye.port2;Ye.port1.onmessage=Xe,Ge=function(){Qe.postMessage(1)}}if("undefined"!=typeof Promise&&oe(Promise)){var et=Promise.resolve();Ke=function(){et.then(Xe),Q&&setTimeout(L)}}else Ke=Ge;function tt(e,t){var n;if(Je.push(function(){if(e)try{e.call(t)}catch(e){He(e,t,"nextTick")}else n&&n(t)}),qe||(qe=!0,Ze?Ge():Ke()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var nt=new ae;function rt(e){!function e(t,n){var r,i;var o=Array.isArray(t);if(!o&&!c(t)||Object.isFrozen(t)||t instanceof he)return;if(t.__ob__){var a=t.__ob__.dep.id;if(n.has(a))return;n.add(a)}if(o)for(r=t.length;r--;)e(t[r],n);else for(i=Object.keys(t),r=i.length;r--;)e(t[i[r]],n)}(e,nt),nt.clear()}var it,ot=w(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function at(e){function t(){var e=arguments,n=t.fns;if(!Array.isArray(n))return n.apply(null,arguments);for(var r=n.slice(),i=0;i<r.length;i++)r[i].apply(null,e)}return t.fns=e,t}function st(e,t,n,r,o){var a,s,c,u;for(a in e)s=e[a],c=t[a],u=ot(a),i(s)||(i(c)?(i(s.fns)&&(s=e[a]=at(s)),n(u.name,s,u.once,u.capture,u.passive,u.params)):s!==c&&(c.fns=s,e[a]=c));for(a in t)i(e[a])&&r((u=ot(a)).name,t[a],u.capture)}function ct(e,t,n){var r;e instanceof he&&(e=e.data.hook||(e.data.hook={}));var s=e[t];function c(){n.apply(this,arguments),y(r.fns,c)}i(s)?r=at([c]):o(s.fns)&&a(s.merged)?(r=s).fns.push(c):r=at([s,c]),r.merged=!0,e[t]=r}function ut(e,t,n,r,i){if(o(t)){if(b(t,n))return e[n]=t[n],i||delete t[n],!0;if(b(t,r))return e[n]=t[r],i||delete t[r],!0}return!1}function lt(e){return s(e)?[ge(e)]:Array.isArray(e)?function e(t,n){var r=[];var c,u,l,f;for(c=0;c<t.length;c++)i(u=t[c])||"boolean"==typeof u||(l=r.length-1,f=r[l],Array.isArray(u)?u.length>0&&(ft((u=e(u,(n||"")+"_"+c))[0])&&ft(f)&&(r[l]=ge(f.text+u[0].text),u.shift()),r.push.apply(r,u)):s(u)?ft(f)?r[l]=ge(f.text+u):""!==u&&r.push(ge(u)):ft(u)&&ft(f)?r[l]=ge(f.text+u.text):(a(t._isVList)&&o(u.tag)&&i(u.key)&&o(n)&&(u.key="__vlist"+n+"_"+c+"__"),r.push(u)));return r}(e):void 0}function ft(e){return o(e)&&o(e.text)&&function(e){return!1===e}(e.isComment)}function pt(e,t){return(e.__esModule||se&&"Module"===e[Symbol.toStringTag])&&(e=e.default),c(e)?t.extend(e):e}function dt(e){return e.isComment&&e.asyncFactory}function ht(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var n=e[t];if(o(n)&&(o(n.componentOptions)||dt(n)))return n}}function vt(e,t,n){n?it.$once(e,t):it.$on(e,t)}function mt(e,t){it.$off(e,t)}function gt(e,t,n){it=e,st(t,n||{},vt,mt),it=void 0}function yt(e,t){var n={};if(!e)return n;for(var r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(_t)&&delete n[u];return n}function _t(e){return e.isComment&&!e.asyncFactory||" "===e.text}function bt(e,t){t=t||{};for(var n=0;n<e.length;n++)Array.isArray(e[n])?bt(e[n],t):t[e[n].key]=e[n].fn;return t}var wt=null;function xt(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function Ct(e,t){if(t){if(e._directInactive=!1,xt(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)Ct(e.$children[n]);Ot(e,"activated")}}function Ot(e,t){pe();var n=e.$options[t];if(n)for(var r=0,i=n.length;r<i;r++)try{n[r].call(e)}catch(n){He(n,e,t+" hook")}e._hasHookEvent&&e.$emit("hook:"+t),de()}var kt=[],$t=[],St={},At=!1,Tt=!1,Et=0;function Lt(){var e,t;for(Tt=!0,kt.sort(function(e,t){return e.id-t.id}),Et=0;Et<kt.length;Et++)t=(e=kt[Et]).id,St[t]=null,e.run();var n=$t.slice(),r=kt.slice();Et=kt.length=$t.length=0,St={},At=Tt=!1,function(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,Ct(e[t],!0)}(n),function(e){var t=e.length;for(;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&Ot(r,"updated")}}(r),ie&&F.devtools&&ie.emit("flush")}var Mt=0,jt=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++Mt,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ae,this.newDepIds=new ae,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!H.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}(t),this.getter||(this.getter=function(){})),this.value=this.lazy?void 0:this.get()};jt.prototype.get=function(){var e;pe(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(e){if(!this.user)throw e;He(e,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&rt(e),de(),this.cleanupDeps()}return e},jt.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},jt.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},jt.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(e){var t=e.id;if(null==St[t]){if(St[t]=!0,Tt){for(var n=kt.length-1;n>Et&&kt[n].id>e.id;)n--;kt.splice(n+1,0,e)}else kt.push(e);At||(At=!0,tt(Lt))}}(this)},jt.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||c(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){He(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},jt.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},jt.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},jt.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var Pt={enumerable:!0,configurable:!0,get:L,set:L};function Nt(e,t,n){Pt.get=function(){return this[t][n]},Pt.set=function(e){this[t][n]=e},Object.defineProperty(e,n,Pt)}function It(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&Ce(!1);var o=function(o){i.push(o);var a=Re(o,t,n,e);Ae(r,o,a),o in e||Nt(e,"_props",o)};for(var a in t)o(a);Ce(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]=null==t[n]?L:S(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;l(t=e._data="function"==typeof t?function(e,t){pe();try{return e.call(t,t)}catch(e){return He(e,t,"data()"),{}}finally{de()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];0,r&&b(r,o)||V(o)||Nt(e,"_data",o)}Se(t,!0)}(e):Se(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=re();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;0,r||(n[i]=new jt(e,a||L,L,Dt)),i in e||Ut(e,i,o)}}(e,t.computed),t.watch&&t.watch!==ee&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)Ft(e,n,r[i]);else Ft(e,n,r)}}(e,t.watch)}var Dt={lazy:!0};function Ut(e,t,n){var r=!re();"function"==typeof n?(Pt.get=r?Rt(t):n,Pt.set=L):(Pt.get=n.get?r&&!1!==n.cache?Rt(t):n.get:L,Pt.set=n.set?n.set:L),Object.defineProperty(e,t,Pt)}function Rt(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),le.target&&t.depend(),t.value}}function Ft(e,t,n,r){return l(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}function Vt(e,t){if(e){for(var n=Object.create(null),r=se?Reflect.ownKeys(e).filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}):Object.keys(e),i=0;i<r.length;i++){for(var o=r[i],a=e[o].from,s=t;s;){if(s._provided&&b(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s)if("default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}else 0}return n}}function Bt(e,t){var n,r,i,a,s;if(Array.isArray(e)||"string"==typeof e)for(n=new Array(e.length),r=0,i=e.length;r<i;r++)n[r]=t(e[r],r);else if("number"==typeof e)for(n=new Array(e),r=0;r<e;r++)n[r]=t(r+1,r);else if(c(e))for(a=Object.keys(e),n=new Array(a.length),r=0,i=a.length;r<i;r++)s=a[r],n[r]=t(e[s],s,r);return o(n)&&(n._isVList=!0),n}function Ht(e,t,n,r){var i,o=this.$scopedSlots[e];if(o)n=n||{},r&&(n=T(T({},r),n)),i=o(n)||t;else{var a=this.$slots[e];a&&(a._rendered=!0),i=a||t}var s=n&&n.slot;return s?this.$createElement("template",{slot:s},i):i}function Wt(e){return Ue(this.$options,"filters",e)||j}function zt(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function Kt(e,t,n,r,i){var o=F.keyCodes[t]||n;return i&&r&&!F.keyCodes[t]?zt(i,r):o?zt(o,e):r?$(r)!==t:void 0}function Gt(e,t,n,r,i){if(n)if(c(n)){var o;Array.isArray(n)&&(n=E(n));var a=function(a){if("class"===a||"style"===a||g(a))o=e;else{var s=e.attrs&&e.attrs.type;o=r||F.mustUseProp(t,s,a)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}a in o||(o[a]=n[a],i&&((e.on||(e.on={}))["update:"+a]=function(e){n[a]=e}))};for(var s in n)a(s)}else;return e}function Jt(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(Xt(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function qt(e,t,n){return Xt(e,"__once__"+t+(n?"_"+n:""),!0),e}function Xt(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&Zt(e[r],t+"_"+r,n);else Zt(e,t,n)}function Zt(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function Yt(e,t){if(t)if(l(t)){var n=e.on=e.on?T({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function Qt(e){e._o=qt,e._n=h,e._s=d,e._l=Bt,e._t=Ht,e._q=P,e._i=N,e._m=Jt,e._f=Wt,e._k=Kt,e._b=Gt,e._v=ge,e._e=me,e._u=bt,e._g=Yt}function en(e,t,n,i,o){var s,c=o.options;b(i,"_uid")?(s=Object.create(i))._original=i:(s=i,i=i._original);var u=a(c._compiled),l=!u;this.data=e,this.props=t,this.children=n,this.parent=i,this.listeners=e.on||r,this.injections=Vt(c.inject,i),this.slots=function(){return yt(n,i)},u&&(this.$options=c,this.$slots=this.slots(),this.$scopedSlots=e.scopedSlots||r),c._scopeId?this._c=function(e,t,n,r){var o=un(s,e,t,n,r,l);return o&&!Array.isArray(o)&&(o.fnScopeId=c._scopeId,o.fnContext=i),o}:this._c=function(e,t,n,r){return un(s,e,t,n,r,l)}}function tn(e,t,n,r){var i=ye(e);return i.fnContext=n,i.fnOptions=r,t.slot&&((i.data||(i.data={})).slot=t.slot),i}function nn(e,t){for(var n in t)e[C(n)]=t[n]}Qt(en.prototype);var rn={init:function(e,t,n,r){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var i=e;rn.prepatch(i,i)}else{(e.componentInstance=function(e,t,n,r){var i={_isComponent:!0,parent:t,_parentVnode:e,_parentElm:n||null,_refElm:r||null},a=e.data.inlineTemplate;o(a)&&(i.render=a.render,i.staticRenderFns=a.staticRenderFns);return new e.componentOptions.Ctor(i)}(e,wt,n,r)).$mount(t?e.elm:void 0,t)}},prepatch:function(e,t){var n=t.componentOptions;!function(e,t,n,i,o){var a=!!(o||e.$options._renderChildren||i.data.scopedSlots||e.$scopedSlots!==r);if(e.$options._parentVnode=i,e.$vnode=i,e._vnode&&(e._vnode.parent=i),e.$options._renderChildren=o,e.$attrs=i.data.attrs||r,e.$listeners=n||r,t&&e.$options.props){Ce(!1);for(var s=e._props,c=e.$options._propKeys||[],u=0;u<c.length;u++){var l=c[u],f=e.$options.props;s[l]=Re(l,f,t,e)}Ce(!0),e.$options.propsData=t}n=n||r;var p=e.$options._parentListeners;e.$options._parentListeners=n,gt(e,n,p),a&&(e.$slots=yt(o,i.context),e.$forceUpdate())}(t.componentInstance=e.componentInstance,n.propsData,n.listeners,t,n.children)},insert:function(e){var t=e.context,n=e.componentInstance;n._isMounted||(n._isMounted=!0,Ot(n,"mounted")),e.data.keepAlive&&(t._isMounted?function(e){e._inactive=!1,$t.push(e)}(n):Ct(n,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?function e(t,n){if(!(n&&(t._directInactive=!0,xt(t))||t._inactive)){t._inactive=!0;for(var r=0;r<t.$children.length;r++)e(t.$children[r]);Ot(t,"deactivated")}}(t,!0):t.$destroy())}},on=Object.keys(rn);function an(e,t,n,s,u){if(!i(e)){var l=n.$options._base;if(c(e)&&(e=l.extend(e)),"function"==typeof e){var f;if(i(e.cid)&&void 0===(e=function(e,t,n){if(a(e.error)&&o(e.errorComp))return e.errorComp;if(o(e.resolved))return e.resolved;if(a(e.loading)&&o(e.loadingComp))return e.loadingComp;if(!o(e.contexts)){var r=e.contexts=[n],s=!0,u=function(){for(var e=0,t=r.length;e<t;e++)r[e].$forceUpdate()},l=I(function(n){e.resolved=pt(n,t),s||u()}),f=I(function(t){o(e.errorComp)&&(e.error=!0,u())}),p=e(l,f);return c(p)&&("function"==typeof p.then?i(e.resolved)&&p.then(l,f):o(p.component)&&"function"==typeof p.component.then&&(p.component.then(l,f),o(p.error)&&(e.errorComp=pt(p.error,t)),o(p.loading)&&(e.loadingComp=pt(p.loading,t),0===p.delay?e.loading=!0:setTimeout(function(){i(e.resolved)&&i(e.error)&&(e.loading=!0,u())},p.delay||200)),o(p.timeout)&&setTimeout(function(){i(e.resolved)&&f(null)},p.timeout))),s=!1,e.loading?e.loadingComp:e.resolved}e.contexts.push(n)}(f=e,l,n)))return function(e,t,n,r,i){var o=me();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}(f,t,n,s,u);t=t||{},fn(e),o(t.model)&&function(e,t){var n=e.model&&e.model.prop||"value",r=e.model&&e.model.event||"input";(t.props||(t.props={}))[n]=t.model.value;var i=t.on||(t.on={});o(i[r])?i[r]=[t.model.callback].concat(i[r]):i[r]=t.model.callback}(e.options,t);var p=function(e,t,n){var r=t.options.props;if(!i(r)){var a={},s=e.attrs,c=e.props;if(o(s)||o(c))for(var u in r){var l=$(u);ut(a,c,u,l,!0)||ut(a,s,u,l,!1)}return a}}(t,e);if(a(e.options.functional))return function(e,t,n,i,a){var s=e.options,c={},u=s.props;if(o(u))for(var l in u)c[l]=Re(l,u,t||r);else o(n.attrs)&&nn(c,n.attrs),o(n.props)&&nn(c,n.props);var f=new en(n,c,a,i,e),p=s.render.call(null,f._c,f);if(p instanceof he)return tn(p,n,f.parent,s);if(Array.isArray(p)){for(var d=lt(p)||[],h=new Array(d.length),v=0;v<d.length;v++)h[v]=tn(d[v],n,f.parent,s);return h}}(e,p,t,n,s);var d=t.on;if(t.on=t.nativeOn,a(e.options.abstract)){var h=t.slot;t={},h&&(t.slot=h)}!function(e){for(var t=e.hook||(e.hook={}),n=0;n<on.length;n++){var r=on[n];t[r]=rn[r]}}(t);var v=e.options.name||u;return new he("vue-component-"+e.cid+(v?"-"+v:""),t,void 0,void 0,void 0,n,{Ctor:e,propsData:p,listeners:d,tag:u,children:s},f)}}}var sn=1,cn=2;function un(e,t,n,r,u,l){return(Array.isArray(n)||s(n))&&(u=r,r=n,n=void 0),a(l)&&(u=cn),function(e,t,n,r,s){if(o(n)&&o(n.__ob__))return me();o(n)&&o(n.is)&&(t=n.is);if(!t)return me();0;Array.isArray(r)&&"function"==typeof r[0]&&((n=n||{}).scopedSlots={default:r[0]},r.length=0);s===cn?r=lt(r):s===sn&&(r=function(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}(r));var u,l;if("string"==typeof t){var f;l=e.$vnode&&e.$vnode.ns||F.getTagNamespace(t),u=F.isReservedTag(t)?new he(F.parsePlatformTagName(t),n,r,void 0,void 0,e):o(f=Ue(e.$options,"components",t))?an(f,n,e,r,t):new he(t,n,r,void 0,void 0,e)}else u=an(t,n,e,r);return Array.isArray(u)?u:o(u)?(o(l)&&function e(t,n,r){t.ns=n;"foreignObject"===t.tag&&(n=void 0,r=!0);if(o(t.children))for(var s=0,c=t.children.length;s<c;s++){var u=t.children[s];o(u.tag)&&(i(u.ns)||a(r)&&"svg"!==u.tag)&&e(u,n,r)}}(u,l),o(n)&&function(e){c(e.style)&&rt(e.style);c(e.class)&&rt(e.class)}(n),u):me()}(e,t,n,r,u)}var ln=0;function fn(e){var t=e.options;if(e.super){var n=fn(e.super);if(n!==e.superOptions){e.superOptions=n;var r=function(e){var t,n=e.options,r=e.extendOptions,i=e.sealedOptions;for(var o in n)n[o]!==i[o]&&(t||(t={}),t[o]=pn(n[o],r[o],i[o]));return t}(e);r&&T(e.extendOptions,r),(t=e.options=De(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function pn(e,t,n){if(Array.isArray(e)){var r=[];n=Array.isArray(n)?n:[n],t=Array.isArray(t)?t:[t];for(var i=0;i<e.length;i++)(t.indexOf(e[i])>=0||n.indexOf(e[i])<0)&&r.push(e[i]);return r}return e}function dn(e){this._init(e)}function hn(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name;var a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=De(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)Nt(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)Ut(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,U.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=T({},a.options),i[r]=a,a}}function vn(e){return e&&(e.Ctor.options.name||e.tag)}function mn(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:!!f(e)&&e.test(t)}function gn(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=vn(a.componentOptions);s&&!t(s)&&yn(n,o,r,i)}}}function yn(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,y(n,t)}!function(e){e.prototype._init=function(e){var t=this;t._uid=ln++,t._isVue=!0,e&&e._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r,n._parentElm=t._parentElm,n._refElm=t._refElm;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(t,e):t.$options=De(fn(t.constructor),e||{},t),t._renderProxy=t,t._self=t,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(t),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&gt(e,t)}(t),function(e){e._vnode=null,e._staticTrees=null;var t=e.$options,n=e.$vnode=t._parentVnode,i=n&&n.context;e.$slots=yt(t._renderChildren,i),e.$scopedSlots=r,e._c=function(t,n,r,i){return un(e,t,n,r,i,!1)},e.$createElement=function(t,n,r,i){return un(e,t,n,r,i,!0)};var o=n&&n.data;Ae(e,"$attrs",o&&o.attrs||r,null,!0),Ae(e,"$listeners",t._parentListeners||r,null,!0)}(t),Ot(t,"beforeCreate"),function(e){var t=Vt(e.$options.inject,e);t&&(Ce(!1),Object.keys(t).forEach(function(n){Ae(e,n,t[n])}),Ce(!0))}(t),It(t),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(t),Ot(t,"created"),t.$options.el&&t.$mount(t.$options.el)}}(dn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=Te,e.prototype.$delete=Ee,e.prototype.$watch=function(e,t,n){if(l(t))return Ft(this,e,t,n);(n=n||{}).user=!0;var r=new jt(this,e,t,n);return n.immediate&&t.call(this,r.value),function(){r.teardown()}}}(dn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){if(Array.isArray(e))for(var r=0,i=e.length;r<i;r++)this.$on(e[r],n);else(this._events[e]||(this._events[e]=[])).push(n),t.test(e)&&(this._hasHookEvent=!0);return this},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)this.$off(e[r],t);return n}var o=n._events[e];if(!o)return n;if(!t)return n._events[e]=null,n;if(t)for(var a,s=o.length;s--;)if((a=o[s])===t||a.fn===t){o.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this._events[e];if(t){t=t.length>1?A(t):t;for(var n=A(arguments,1),r=0,i=t.length;r<i;r++)try{t[r].apply(this,n)}catch(t){He(t,this,'event handler for "'+e+'"')}}return this}}(dn),function(e){e.prototype._update=function(e,t){var n=this;n._isMounted&&Ot(n,"beforeUpdate");var r=n.$el,i=n._vnode,o=wt;wt=n,n._vnode=e,i?n.$el=n.__patch__(i,e):(n.$el=n.__patch__(n.$el,e,t,!1,n.$options._parentElm,n.$options._refElm),n.$options._parentElm=n.$options._refElm=null),wt=o,r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){Ot(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||y(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),Ot(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}(dn),function(e){Qt(e.prototype),e.prototype.$nextTick=function(e){return tt(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,i=n.render,o=n._parentVnode;o&&(t.$scopedSlots=o.data.scopedSlots||r),t.$vnode=o;try{e=i.call(t._renderProxy,t.$createElement)}catch(n){He(n,t,"render"),e=t._vnode}return e instanceof he||(e=me()),e.parent=o,e}}(dn);var _n=[String,RegExp,Array],bn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:_n,exclude:_n,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)yn(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){gn(e,function(e){return mn(t,e)})}),this.$watch("exclude",function(t){gn(e,function(e){return!mn(t,e)})})},render:function(){var e=this.$slots.default,t=ht(e),n=t&&t.componentOptions;if(n){var r=vn(n),i=this.include,o=this.exclude;if(i&&(!r||!mn(i,r))||o&&r&&mn(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,y(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&yn(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ce,extend:T,mergeOptions:De,defineReactive:Ae},e.set=Te,e.delete=Ee,e.nextTick=tt,e.options=Object.create(null),U.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,T(e.options.components,bn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=A(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),hn(e),function(e){U.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&l(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(dn),Object.defineProperty(dn.prototype,"$isServer",{get:re}),Object.defineProperty(dn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(dn,"FunctionalRenderContext",{value:en}),dn.version="2.5.17";var wn=v("style,class"),xn=v("input,textarea,option,select,progress"),Cn=function(e,t,n){return"value"===n&&xn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},On=v("contenteditable,draggable,spellcheck"),kn=v("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),$n="http://www.w3.org/1999/xlink",Sn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},An=function(e){return Sn(e)?e.slice(6,e.length):""},Tn=function(e){return null==e||!1===e};function En(e){for(var t=e.data,n=e,r=e;o(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(t=Ln(r.data,t));for(;o(n=n.parent);)n&&n.data&&(t=Ln(t,n.data));return function(e,t){if(o(e)||o(t))return Mn(e,jn(t));return""}(t.staticClass,t.class)}function Ln(e,t){return{staticClass:Mn(e.staticClass,t.staticClass),class:o(e.class)?[e.class,t.class]:t.class}}function Mn(e,t){return e?t?e+" "+t:e:t||""}function jn(e){return Array.isArray(e)?function(e){for(var t,n="",r=0,i=e.length;r<i;r++)o(t=jn(e[r]))&&""!==t&&(n&&(n+=" "),n+=t);return n}(e):c(e)?function(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}(e):"string"==typeof e?e:""}var Pn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Nn=v("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),In=v("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Dn=function(e){return Nn(e)||In(e)};function Un(e){return In(e)?"svg":"math"===e?"math":void 0}var Rn=Object.create(null);var Fn=v("text,number,password,search,email,tel,url");function Vn(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}var Bn=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(Pn[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setStyleScope:function(e,t){e.setAttribute(t,"")}}),Hn={create:function(e,t){Wn(t)},update:function(e,t){e.data.ref!==t.data.ref&&(Wn(e,!0),Wn(t))},destroy:function(e){Wn(e,!0)}};function Wn(e,t){var n=e.data.ref;if(o(n)){var r=e.context,i=e.componentInstance||e.elm,a=r.$refs;t?Array.isArray(a[n])?y(a[n],i):a[n]===i&&(a[n]=void 0):e.data.refInFor?Array.isArray(a[n])?a[n].indexOf(i)<0&&a[n].push(i):a[n]=[i]:a[n]=i}}var zn=new he("",{},[]),Kn=["create","activate","update","remove","destroy"];function Gn(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&o(e.data)===o(t.data)&&function(e,t){if("input"!==e.tag)return!0;var n,r=o(n=e.data)&&o(n=n.attrs)&&n.type,i=o(n=t.data)&&o(n=n.attrs)&&n.type;return r===i||Fn(r)&&Fn(i)}(e,t)||a(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&i(t.asyncFactory.error))}function Jn(e,t,n){var r,i,a={};for(r=t;r<=n;++r)o(i=e[r].key)&&(a[i]=r);return a}var qn={create:Xn,update:Xn,destroy:function(e){Xn(e,zn)}};function Xn(e,t){(e.data.directives||t.data.directives)&&function(e,t){var n,r,i,o=e===zn,a=t===zn,s=Yn(e.data.directives,e.context),c=Yn(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,er(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(er(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)er(u[n],"inserted",t,e)};o?ct(t,"insert",f):f()}l.length&&ct(t,"postpatch",function(){for(var n=0;n<l.length;n++)er(l[n],"componentUpdated",t,e)});if(!o)for(n in s)c[n]||er(s[n],"unbind",e,e,a)}(e,t)}var Zn=Object.create(null);function Yn(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=Zn),i[Qn(r)]=r,r.def=Ue(t.$options,"directives",r.name);return i}function Qn(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function er(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(r){He(r,n.context,"directive "+e.name+" "+t+" hook")}}var tr=[Hn,qn];function nr(e,t){var n=t.componentOptions;if(!(o(n)&&!1===n.Ctor.options.inheritAttrs||i(e.data.attrs)&&i(t.data.attrs))){var r,a,s=t.elm,c=e.data.attrs||{},u=t.data.attrs||{};for(r in o(u.__ob__)&&(u=t.data.attrs=T({},u)),u)a=u[r],c[r]!==a&&rr(s,r,a);for(r in(X||Y)&&u.value!==c.value&&rr(s,"value",u.value),c)i(u[r])&&(Sn(r)?s.removeAttributeNS($n,An(r)):On(r)||s.removeAttribute(r))}}function rr(e,t,n){e.tagName.indexOf("-")>-1?ir(e,t,n):kn(t)?Tn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):On(t)?e.setAttribute(t,Tn(n)||"false"===n?"false":"true"):Sn(t)?Tn(n)?e.removeAttributeNS($n,An(t)):e.setAttributeNS($n,t,n):ir(e,t,n)}function ir(e,t,n){if(Tn(n))e.removeAttribute(t);else{if(X&&!Z&&"TEXTAREA"===e.tagName&&"placeholder"===t&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var or={create:nr,update:nr};function ar(e,t){var n=t.elm,r=t.data,a=e.data;if(!(i(r.staticClass)&&i(r.class)&&(i(a)||i(a.staticClass)&&i(a.class)))){var s=En(t),c=n._transitionClasses;o(c)&&(s=Mn(s,jn(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var sr,cr,ur,lr,fr,pr,dr={create:ar,update:ar},hr=/[\w).+\-_$\]]/;function vr(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var h=r-1,v=void 0;h>=0&&" "===(v=e.charAt(h));h--);v&&hr.test(v)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=mr(i,o[r]);return i}function mr(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function gr(e){console.error("[Vue compiler]: "+e)}function yr(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function _r(e,t,n){(e.props||(e.props=[])).push({name:t,value:n}),e.plain=!1}function br(e,t,n){(e.attrs||(e.attrs=[])).push({name:t,value:n}),e.plain=!1}function wr(e,t,n){e.attrsMap[t]=n,e.attrsList.push({name:t,value:n})}function xr(e,t,n,r,i,o){(e.directives||(e.directives=[])).push({name:t,rawName:n,value:r,arg:i,modifiers:o}),e.plain=!1}function Cr(e,t,n,i,o,a){var s;(i=i||r).capture&&(delete i.capture,t="!"+t),i.once&&(delete i.once,t="~"+t),i.passive&&(delete i.passive,t="&"+t),"click"===t&&(i.right?(t="contextmenu",delete i.right):i.middle&&(t="mouseup")),i.native?(delete i.native,s=e.nativeEvents||(e.nativeEvents={})):s=e.events||(e.events={});var c={value:n.trim()};i!==r&&(c.modifiers=i);var u=s[t];Array.isArray(u)?o?u.unshift(c):u.push(c):s[t]=u?o?[c,u]:[u,c]:c,e.plain=!1}function Or(e,t,n){var r=kr(e,":"+t)||kr(e,"v-bind:"+t);if(null!=r)return vr(r);if(!1!==n){var i=kr(e,t);if(null!=i)return JSON.stringify(i)}}function kr(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function $r(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=Sr(t,o);e.model={value:"("+t+")",expression:'"'+t+'"',callback:"function ($$v) {"+a+"}"}}function Sr(e,t){var n=function(e){if(e=e.trim(),sr=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<sr-1)return(lr=e.lastIndexOf("."))>-1?{exp:e.slice(0,lr),key:'"'+e.slice(lr+1)+'"'}:{exp:e,key:null};cr=e,lr=fr=pr=0;for(;!Tr();)Er(ur=Ar())?Mr(ur):91===ur&&Lr(ur);return{exp:e.slice(0,fr),key:e.slice(fr+1,pr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ar(){return cr.charCodeAt(++lr)}function Tr(){return lr>=sr}function Er(e){return 34===e||39===e}function Lr(e){var t=1;for(fr=lr;!Tr();)if(Er(e=Ar()))Mr(e);else if(91===e&&t++,93===e&&t--,0===t){pr=lr;break}}function Mr(e){for(var t=e;!Tr()&&(e=Ar())!==t;);}var jr,Pr="__r",Nr="__c";function Ir(e,t,n,r,i){t=function(e){return e._withTask||(e._withTask=function(){Ze=!0;var t=e.apply(null,arguments);return Ze=!1,t})}(t),n&&(t=function(e,t,n){var r=jr;return function i(){null!==e.apply(null,arguments)&&Dr(t,i,n,r)}}(t,e,r)),jr.addEventListener(e,t,te?{capture:r,passive:i}:r)}function Dr(e,t,n,r){(r||jr).removeEventListener(e,t._withTask||t,n)}function Ur(e,t){if(!i(e.data.on)||!i(t.data.on)){var n=t.data.on||{},r=e.data.on||{};jr=t.elm,function(e){if(o(e[Pr])){var t=X?"change":"input";e[t]=[].concat(e[Pr],e[t]||[]),delete e[Pr]}o(e[Nr])&&(e.change=[].concat(e[Nr],e.change||[]),delete e[Nr])}(n),st(n,r,Ir,Dr,t.context),jr=void 0}}var Rr={create:Ur,update:Ur};function Fr(e,t){if(!i(e.data.domProps)||!i(t.data.domProps)){var n,r,a=t.elm,s=e.data.domProps||{},c=t.data.domProps||{};for(n in o(c.__ob__)&&(c=t.data.domProps=T({},c)),s)i(c[n])&&(a[n]="");for(n in c){if(r=c[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),r===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n){a._value=r;var u=i(r)?"":String(r);Vr(a,u)&&(a.value=u)}else a[n]=r}}}function Vr(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var n=e.value,r=e._vModifiers;if(o(r)){if(r.lazy)return!1;if(r.number)return h(n)!==h(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}(e,t))}var Br={create:Fr,update:Fr},Hr=w(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function Wr(e){var t=zr(e.style);return e.staticStyle?T(e.staticStyle,t):t}function zr(e){return Array.isArray(e)?E(e):"string"==typeof e?Hr(e):e}var Kr,Gr=/^--/,Jr=/\s*!important$/,qr=function(e,t,n){if(Gr.test(t))e.style.setProperty(t,n);else if(Jr.test(n))e.style.setProperty(t,n.replace(Jr,""),"important");else{var r=Zr(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},Xr=["Webkit","Moz","ms"],Zr=w(function(e){if(Kr=Kr||document.createElement("div").style,"filter"!==(e=C(e))&&e in Kr)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<Xr.length;n++){var r=Xr[n]+t;if(r in Kr)return r}});function Yr(e,t){var n=t.data,r=e.data;if(!(i(n.staticStyle)&&i(n.style)&&i(r.staticStyle)&&i(r.style))){var a,s,c=t.elm,u=r.staticStyle,l=r.normalizedStyle||r.style||{},f=u||l,p=zr(t.data.style)||{};t.data.normalizedStyle=o(p.__ob__)?T({},p):p;var d=function(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=Wr(i.data))&&T(r,n);(n=Wr(e.data))&&T(r,n);for(var o=e;o=o.parent;)o.data&&(n=Wr(o.data))&&T(r,n);return r}(t,!0);for(s in f)i(d[s])&&qr(c,s,"");for(s in d)(a=d[s])!==f[s]&&qr(c,s,null==a?"":a)}}var Qr={create:Yr,update:Yr};function ei(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function ti(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(/\s+/).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function ni(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&T(t,ri(e.name||"v")),T(t,e),t}return"string"==typeof e?ri(e):void 0}}var ri=w(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),ii=K&&!Z,oi="transition",ai="animation",si="transition",ci="transitionend",ui="animation",li="animationend";ii&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(si="WebkitTransition",ci="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ui="WebkitAnimation",li="webkitAnimationEnd"));var fi=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function pi(e){fi(function(){fi(e)})}function di(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),ei(e,t))}function hi(e,t){e._transitionClasses&&y(e._transitionClasses,t),ti(e,t)}function vi(e,t,n){var r=gi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===oi?ci:li,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var mi=/\b(transform|all)(,|$)/;function gi(e,t){var n,r=window.getComputedStyle(e),i=r[si+"Delay"].split(", "),o=r[si+"Duration"].split(", "),a=yi(i,o),s=r[ui+"Delay"].split(", "),c=r[ui+"Duration"].split(", "),u=yi(s,c),l=0,f=0;return t===oi?a>0&&(n=oi,l=a,f=o.length):t===ai?u>0&&(n=ai,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?oi:ai:null)?n===oi?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===oi&&mi.test(r[si+"Property"])}}function yi(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return _i(t)+_i(e[n])}))}function _i(e){return 1e3*Number(e.slice(0,-1))}function bi(e,t){var n=e.elm;o(n._leaveCb)&&(n._leaveCb.cancelled=!0,n._leaveCb());var r=ni(e.data.transition);if(!i(r)&&!o(n._enterCb)&&1===n.nodeType){for(var a=r.css,s=r.type,u=r.enterClass,l=r.enterToClass,f=r.enterActiveClass,p=r.appearClass,d=r.appearToClass,v=r.appearActiveClass,m=r.beforeEnter,g=r.enter,y=r.afterEnter,_=r.enterCancelled,b=r.beforeAppear,w=r.appear,x=r.afterAppear,C=r.appearCancelled,O=r.duration,k=wt,$=wt.$vnode;$&&$.parent;)k=($=$.parent).context;var S=!k._isMounted||!e.isRootInsert;if(!S||w||""===w){var A=S&&p?p:u,T=S&&v?v:f,E=S&&d?d:l,L=S&&b||m,M=S&&"function"==typeof w?w:g,j=S&&x||y,P=S&&C||_,N=h(c(O)?O.enter:O);0;var D=!1!==a&&!Z,U=Ci(M),R=n._enterCb=I(function(){D&&(hi(n,E),hi(n,T)),R.cancelled?(D&&hi(n,A),P&&P(n)):j&&j(n),n._enterCb=null});e.data.show||ct(e,"insert",function(){var t=n.parentNode,r=t&&t._pending&&t._pending[e.key];r&&r.tag===e.tag&&r.elm._leaveCb&&r.elm._leaveCb(),M&&M(n,R)}),L&&L(n),D&&(di(n,A),di(n,T),pi(function(){hi(n,A),R.cancelled||(di(n,E),U||(xi(N)?setTimeout(R,N):vi(n,s,R)))})),e.data.show&&(t&&t(),M&&M(n,R)),D||U||R()}}}function wi(e,t){var n=e.elm;o(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=ni(e.data.transition);if(i(r)||1!==n.nodeType)return t();if(!o(n._leaveCb)){var a=r.css,s=r.type,u=r.leaveClass,l=r.leaveToClass,f=r.leaveActiveClass,p=r.beforeLeave,d=r.leave,v=r.afterLeave,m=r.leaveCancelled,g=r.delayLeave,y=r.duration,_=!1!==a&&!Z,b=Ci(d),w=h(c(y)?y.leave:y);0;var x=n._leaveCb=I(function(){n.parentNode&&n.parentNode._pending&&(n.parentNode._pending[e.key]=null),_&&(hi(n,l),hi(n,f)),x.cancelled?(_&&hi(n,u),m&&m(n)):(t(),v&&v(n)),n._leaveCb=null});g?g(C):C()}function C(){x.cancelled||(e.data.show||((n.parentNode._pending||(n.parentNode._pending={}))[e.key]=e),p&&p(n),_&&(di(n,u),di(n,f),pi(function(){hi(n,u),x.cancelled||(di(n,l),b||(xi(w)?setTimeout(x,w):vi(n,s,x)))})),d&&d(n,x),_||b||x())}}function xi(e){return"number"==typeof e&&!isNaN(e)}function Ci(e){if(i(e))return!1;var t=e.fns;return o(t)?Ci(Array.isArray(t)?t[0]:t):(e._length||e.length)>1}function Oi(e,t){!0!==t.data.show&&bi(t)}var ki=function(e){var t,n,r={},c=e.modules,u=e.nodeOps;for(t=0;t<Kn.length;++t)for(r[Kn[t]]=[],n=0;n<c.length;++n)o(c[n][Kn[t]])&&r[Kn[t]].push(c[n][Kn[t]]);function l(e){var t=u.parentNode(e);o(t)&&u.removeChild(t,e)}function f(e,t,n,i,s,c,l){if(o(e.elm)&&o(c)&&(e=c[l]=ye(e)),e.isRootInsert=!s,!function(e,t,n,i){var s=e.data;if(o(s)){var c=o(e.componentInstance)&&s.keepAlive;if(o(s=s.hook)&&o(s=s.init)&&s(e,!1,n,i),o(e.componentInstance))return p(e,t),a(c)&&function(e,t,n,i){for(var a,s=e;s.componentInstance;)if(s=s.componentInstance._vnode,o(a=s.data)&&o(a=a.transition)){for(a=0;a<r.activate.length;++a)r.activate[a](zn,s);t.push(s);break}d(n,e.elm,i)}(e,t,n,i),!0}}(e,t,n,i)){var f=e.data,v=e.children,m=e.tag;o(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),y(e),h(e,v,t),o(f)&&g(e,t),d(n,e.elm,i)):a(e.isComment)?(e.elm=u.createComment(e.text),d(n,e.elm,i)):(e.elm=u.createTextNode(e.text),d(n,e.elm,i))}}function p(e,t){o(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,m(e)?(g(e,t),y(e)):(Wn(e),t.push(e))}function d(e,t,n){o(e)&&(o(n)?n.parentNode===e&&u.insertBefore(e,t,n):u.appendChild(e,t))}function h(e,t,n){if(Array.isArray(t))for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r);else s(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function m(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return o(e.tag)}function g(e,n){for(var i=0;i<r.create.length;++i)r.create[i](zn,e);o(t=e.data.hook)&&(o(t.create)&&t.create(zn,e),o(t.insert)&&n.push(e))}function y(e){var t;if(o(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var n=e;n;)o(t=n.context)&&o(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),n=n.parent;o(t=wt)&&t!==e.context&&t!==e.fnContext&&o(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,n,i=e.data;if(o(i))for(o(t=i.hook)&&o(t=t.destroy)&&t(e),t=0;t<r.destroy.length;++t)r.destroy[t](e);if(o(t=e.children))for(n=0;n<e.children.length;++n)b(e.children[n])}function w(e,t,n,r){for(;n<=r;++n){var i=t[n];o(i)&&(o(i.tag)?(x(i),b(i)):l(i.elm))}}function x(e,t){if(o(t)||o(e.data)){var n,i=r.remove.length+1;for(o(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),o(n=e.componentInstance)&&o(n=n._vnode)&&o(n.data)&&x(n,t),n=0;n<r.remove.length;++n)r.remove[n](e,t);o(n=e.data.hook)&&o(n=n.remove)?n(e,t):t()}else l(e.elm)}function C(e,t,n,r){for(var i=n;i<r;i++){var a=t[i];if(o(a)&&Gn(e,a))return i}}function O(e,t,n,s){if(e!==t){var c=t.elm=e.elm;if(a(e.isAsyncPlaceholder))o(t.asyncFactory.resolved)?S(e.elm,t,n):t.isAsyncPlaceholder=!0;else if(a(t.isStatic)&&a(e.isStatic)&&t.key===e.key&&(a(t.isCloned)||a(t.isOnce)))t.componentInstance=e.componentInstance;else{var l,p=t.data;o(p)&&o(l=p.hook)&&o(l=l.prepatch)&&l(e,t);var d=e.children,h=t.children;if(o(p)&&m(t)){for(l=0;l<r.update.length;++l)r.update[l](e,t);o(l=p.hook)&&o(l=l.update)&&l(e,t)}i(t.text)?o(d)&&o(h)?d!==h&&function(e,t,n,r,a){for(var s,c,l,p=0,d=0,h=t.length-1,v=t[0],m=t[h],g=n.length-1,y=n[0],b=n[g],x=!a;p<=h&&d<=g;)i(v)?v=t[++p]:i(m)?m=t[--h]:Gn(v,y)?(O(v,y,r),v=t[++p],y=n[++d]):Gn(m,b)?(O(m,b,r),m=t[--h],b=n[--g]):Gn(v,b)?(O(v,b,r),x&&u.insertBefore(e,v.elm,u.nextSibling(m.elm)),v=t[++p],b=n[--g]):Gn(m,y)?(O(m,y,r),x&&u.insertBefore(e,m.elm,v.elm),m=t[--h],y=n[++d]):(i(s)&&(s=Jn(t,p,h)),i(c=o(y.key)?s[y.key]:C(y,t,p,h))?f(y,r,e,v.elm,!1,n,d):Gn(l=t[c],y)?(O(l,y,r),t[c]=void 0,x&&u.insertBefore(e,l.elm,v.elm)):f(y,r,e,v.elm,!1,n,d),y=n[++d]);p>h?_(e,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&w(0,t,p,h)}(c,d,h,n,s):o(h)?(o(e.text)&&u.setTextContent(c,""),_(c,null,h,0,h.length-1,n)):o(d)?w(0,d,0,d.length-1):o(e.text)&&u.setTextContent(c,""):e.text!==t.text&&u.setTextContent(c,t.text),o(p)&&o(l=p.hook)&&o(l=l.postpatch)&&l(e,t)}}}function k(e,t,n){if(a(n)&&o(e.parent))e.parent.data.pendingInsert=t;else for(var r=0;r<t.length;++r)t[r].data.hook.insert(t[r])}var $=v("attrs,class,staticClass,staticStyle,key");function S(e,t,n,r){var i,s=t.tag,c=t.data,u=t.children;if(r=r||c&&c.pre,t.elm=e,a(t.isComment)&&o(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(o(c)&&(o(i=c.hook)&&o(i=i.init)&&i(t,!0),o(i=t.componentInstance)))return p(t,n),!0;if(o(s)){if(o(u))if(e.hasChildNodes())if(o(i=c)&&o(i=i.domProps)&&o(i=i.innerHTML)){if(i!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,d=0;d<u.length;d++){if(!f||!S(f,u[d],n,r)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(t,u,n);if(o(c)){var v=!1;for(var m in c)if(!$(m)){v=!0,g(t,n);break}!v&&c.class&&rt(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,t,n,s,c,l){if(!i(t)){var p=!1,d=[];if(i(e))p=!0,f(t,d,c,l);else{var h=o(e.nodeType);if(!h&&Gn(e,t))O(e,t,d,s);else{if(h){if(1===e.nodeType&&e.hasAttribute(D)&&(e.removeAttribute(D),n=!0),a(n)&&S(e,t,d))return k(t,d,!0),e;e=function(e){return new he(u.tagName(e).toLowerCase(),{},[],void 0,e)}(e)}var v=e.elm,g=u.parentNode(v);if(f(t,d,v._leaveCb?null:g,u.nextSibling(v)),o(t.parent))for(var y=t.parent,_=m(t);y;){for(var x=0;x<r.destroy.length;++x)r.destroy[x](y);if(y.elm=t.elm,_){for(var C=0;C<r.create.length;++C)r.create[C](zn,y);var $=y.data.hook.insert;if($.merged)for(var A=1;A<$.fns.length;A++)$.fns[A]()}else Wn(y);y=y.parent}o(g)?w(0,[e],0,0):o(e.tag)&&b(e)}}return k(t,d,p),t.elm}o(e)&&b(e)}}({nodeOps:Bn,modules:[or,dr,Rr,Br,Qr,K?{create:Oi,activate:Oi,remove:function(e,t){!0!==e.data.show?wi(e,t):t()}}:{}].concat(tr)});Z&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&ji(e,"input")});var $i={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?ct(n,"postpatch",function(){$i.componentUpdated(e,t,n)}):Si(e,t,n.context),e._vOptions=[].map.call(e.options,Ei)):("textarea"===n.tag||Fn(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Li),e.addEventListener("compositionend",Mi),e.addEventListener("change",Mi),Z&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Si(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Ei);if(i.some(function(e,t){return!P(e,r[t])}))(e.multiple?t.value.some(function(e){return Ti(e,i)}):t.value!==t.oldValue&&Ti(t.value,i))&&ji(e,"change")}}};function Si(e,t,n){Ai(e,t,n),(X||Y)&&setTimeout(function(){Ai(e,t,n)},0)}function Ai(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=N(r,Ei(a))>-1,a.selected!==o&&(a.selected=o);else if(P(Ei(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function Ti(e,t){return t.every(function(t){return!P(t,e)})}function Ei(e){return"_value"in e?e._value:e.value}function Li(e){e.target.composing=!0}function Mi(e){e.target.composing&&(e.target.composing=!1,ji(e.target,"input"))}function ji(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Pi(e){return!e.componentInstance||e.data&&e.data.transition?e:Pi(e.componentInstance._vnode)}var Ni={model:$i,show:{bind:function(e,t,n){var r=t.value,i=(n=Pi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,bi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Pi(n)).data&&n.data.transition?(n.data.show=!0,r?bi(n,function(){e.style.display=e.__vOriginalDisplay}):wi(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},Ii={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Di(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Di(ht(t.children)):e}function Ui(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[C(o)]=i[o];return t}function Ri(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var Fi={name:"transition",props:Ii,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(function(e){return e.tag||dt(e)})).length){0;var r=this.mode;0;var i=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return i;var o=Di(i);if(!o)return i;if(this._leaving)return Ri(e,i);var a="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?a+"comment":a+o.tag:s(o.key)?0===String(o.key).indexOf(a)?o.key:a+o.key:o.key;var c=(o.data||(o.data={})).transition=Ui(this),u=this._vnode,l=Di(u);if(o.data.directives&&o.data.directives.some(function(e){return"show"===e.name})&&(o.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(o,l)&&!dt(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=T({},c);if("out-in"===r)return this._leaving=!0,ct(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),Ri(e,i);if("in-out"===r){if(dt(o))return u;var p,d=function(){p()};ct(c,"afterEnter",d),ct(c,"enterCancelled",d),ct(f,"delayLeave",function(e){p=e})}}return i}}},Vi=T({tag:String,moveClass:String},Ii);function Bi(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function Hi(e){e.data.newPos=e.elm.getBoundingClientRect()}function Wi(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete Vi.mode;var zi={Transition:Fi,TransitionGroup:{props:Vi,render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=Ui(this),s=0;s<i.length;s++){var c=i[s];if(c.tag)if(null!=c.key&&0!==String(c.key).indexOf("__vlist"))o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a;else;}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},beforeUpdate:function(){this.__patch__(this._vnode,this.kept,!1,!0),this._vnode=this.kept},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(Bi),e.forEach(Hi),e.forEach(Wi),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;di(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(ci,n._moveCb=function e(r){r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(ci,e),n._moveCb=null,hi(n,t))})}}))},methods:{hasMove:function(e,t){if(!ii)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){ti(n,e)}),ei(n,t),n.style.display="none",this.$el.appendChild(n);var r=gi(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};dn.config.mustUseProp=Cn,dn.config.isReservedTag=Dn,dn.config.isReservedAttr=wn,dn.config.getTagNamespace=Un,dn.config.isUnknownElement=function(e){if(!K)return!0;if(Dn(e))return!1;if(e=e.toLowerCase(),null!=Rn[e])return Rn[e];var t=document.createElement(e);return e.indexOf("-")>-1?Rn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Rn[e]=/HTMLUnknownElement/.test(t.toString())},T(dn.options.directives,Ni),T(dn.options.components,zi),dn.prototype.__patch__=K?ki:L,dn.prototype.$mount=function(e,t){return function(e,t,n){return e.$el=t,e.$options.render||(e.$options.render=me),Ot(e,"beforeMount"),new jt(e,function(){e._update(e._render(),n)},L,null,!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Ot(e,"mounted")),e}(this,e=e&&K?Vn(e):void 0,t)},K&&setTimeout(function(){F.devtools&&ie&&ie.emit("init",dn)},0);var Ki=/\{\{((?:.|\n)+?)\}\}/g,Gi=/[-.*+?^${}()|[\]\/\\]/g,Ji=w(function(e){var t=e[0].replace(Gi,"\\$&"),n=e[1].replace(Gi,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var qi={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=kr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Or(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var Xi,Zi={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=kr(e,"style");n&&(e.staticStyle=JSON.stringify(Hr(n)));var r=Or(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},Yi=function(e){return(Xi=Xi||document.createElement("div")).innerHTML=e,Xi.textContent},Qi=v("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),eo=v("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),to=v("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),no=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ro="[a-zA-Z_][\\w\\-\\.]*",io="((?:"+ro+"\\:)?"+ro+")",oo=new RegExp("^<"+io),ao=/^\s*(\/?)>/,so=new RegExp("^<\\/"+io+"[^>]*>"),co=/^<!DOCTYPE [^>]+>/i,uo=/^<!\--/,lo=/^<!\[/,fo=!1;"x".replace(/x(.)?/g,function(e,t){fo=""===t});var po=v("script,style,textarea",!0),ho={},vo={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t"},mo=/&(?:lt|gt|quot|amp);/g,go=/&(?:lt|gt|quot|amp|#10|#9);/g,yo=v("pre,textarea",!0),_o=function(e,t){return e&&yo(e)&&"\n"===t[0]};function bo(e,t){var n=t?go:mo;return e.replace(n,function(e){return vo[e]})}var wo,xo,Co,Oo,ko,$o,So,Ao,To=/^@|^v-on:/,Eo=/^v-|^@|^:/,Lo=/([^]*?)\s+(?:in|of)\s+([^]*)/,Mo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,jo=/^\(|\)$/g,Po=/:(.*)$/,No=/^:|^v-bind:/,Io=/\.[^.]+/g,Do=w(Yi);function Uo(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:function(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}(t),parent:n,children:[]}}function Ro(e,t){wo=t.warn||gr,$o=t.isPreTag||M,So=t.mustUseProp||M,Ao=t.getTagNamespace||M,Co=yr(t.modules,"transformNode"),Oo=yr(t.modules,"preTransformNode"),ko=yr(t.modules,"postTransformNode"),xo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=!1,s=!1;function c(e){e.pre&&(a=!1),$o(e.tag)&&(s=!1);for(var n=0;n<ko.length;n++)ko[n](e,t)}return function(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||M,s=t.canBeLeftOpenTag||M,c=0;e;){if(n=e,r&&po(r)){var u=0,l=r.toLowerCase(),f=ho[l]||(ho[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,po(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),_o(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,$(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(uo.test(e)){var h=e.indexOf("--\x3e");if(h>=0){t.shouldKeepComment&&t.comment(e.substring(4,h)),C(h+3);continue}}if(lo.test(e)){var v=e.indexOf("]>");if(v>=0){C(v+2);continue}}var m=e.match(co);if(m){C(m[0].length);continue}var g=e.match(so);if(g){var y=c;C(g[0].length),$(g[1],y,c);continue}var _=O();if(_){k(_),_o(r,e)&&C(1);continue}}var b=void 0,w=void 0,x=void 0;if(d>=0){for(w=e.slice(d);!(so.test(w)||oo.test(w)||uo.test(w)||lo.test(w)||(x=w.indexOf("<",1))<0);)d+=x,w=e.slice(d);b=e.substring(0,d),C(d)}d<0&&(b=e,e=""),t.chars&&b&&t.chars(b)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function O(){var t=e.match(oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(ao))&&(r=e.match(no));)C(r[0].length),i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&to(n)&&$(r),s(n)&&r===n&&$(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p];fo&&-1===d[0].indexOf('""')&&(""===d[3]&&delete d[3],""===d[4]&&delete d[4],""===d[5]&&delete d[5]);var h=d[3]||d[4]||d[5]||"",v="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:bo(h,v)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function $(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e&&(s=e.toLowerCase()),e)for(a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}$()}(e,{warn:wo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,start:function(e,o,u){var l=r&&r.ns||Ao(e);X&&"svg"===l&&(o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];Wo.test(r.name)||(r.name=r.name.replace(zo,""),t.push(r))}return t}(o));var f=Uo(e,o,r);l&&(f.ns=l),function(e){return"style"===e.tag||"script"===e.tag&&(!e.attrsMap.type||"text/javascript"===e.attrsMap.type)}(f)&&!re()&&(f.forbidden=!0);for(var p=0;p<Oo.length;p++)f=Oo[p](f,t)||f;function d(e){0}if(a||(!function(e){null!=kr(e,"v-pre")&&(e.pre=!0)}(f),f.pre&&(a=!0)),$o(f.tag)&&(s=!0),a?function(e){var t=e.attrsList.length;if(t)for(var n=e.attrs=new Array(t),r=0;r<t;r++)n[r]={name:e.attrsList[r].name,value:JSON.stringify(e.attrsList[r].value)};else e.pre||(e.plain=!0)}(f):f.processed||(Vo(f),function(e){var t=kr(e,"v-if");if(t)e.if=t,Bo(e,{exp:t,block:e});else{null!=kr(e,"v-else")&&(e.else=!0);var n=kr(e,"v-else-if");n&&(e.elseif=n)}}(f),function(e){null!=kr(e,"v-once")&&(e.once=!0)}(f),Fo(f,t)),n?i.length||n.if&&(f.elseif||f.else)&&(d(),Bo(n,{exp:f.elseif,block:f})):(n=f,d()),r&&!f.forbidden)if(f.elseif||f.else)!function(e,t){var n=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(t.children);n&&n.if&&Bo(n,{exp:e.elseif,block:e})}(f,r);else if(f.slotScope){r.plain=!1;var h=f.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[h]=f}else r.children.push(f),f.parent=r;u?c(f):(r=f,i.push(f))},end:function(){var e=i[i.length-1],t=e.children[e.children.length-1];t&&3===t.type&&" "===t.text&&!s&&e.children.pop(),i.length-=1,r=i[i.length-1],c(e)},chars:function(e){if(r&&(!X||"textarea"!==r.tag||r.attrsMap.placeholder!==e)){var t,n=r.children;if(e=s||e.trim()?function(e){return"script"===e.tag||"style"===e.tag}(r)?e:Do(e):o&&n.length?" ":"")!a&&" "!==e&&(t=function(e,t){var n=t?Ji(t):Ki;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=vr(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}(e,xo))?n.push({type:2,expression:t.expression,tokens:t.tokens,text:e}):" "===e&&n.length&&" "===n[n.length-1].text||n.push({type:3,text:e})}},comment:function(e){r.children.push({type:3,text:e,isComment:!0})}}),n}function Fo(e,t){!function(e){var t=Or(e,"key");t&&(e.key=t)}(e),e.plain=!e.key&&!e.attrsList.length,function(e){var t=Or(e,"ref");t&&(e.ref=t,e.refInFor=function(e){var t=e;for(;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}(e))}(e),function(e){if("slot"===e.tag)e.slotName=Or(e,"name");else{var t;"template"===e.tag?(t=kr(e,"scope"),e.slotScope=t||kr(e,"slot-scope")):(t=kr(e,"slot-scope"))&&(e.slotScope=t);var n=Or(e,"slot");n&&(e.slotTarget='""'===n?'"default"':n,"template"===e.tag||e.slotScope||br(e,"slot",n))}}(e),function(e){var t;(t=Or(e,"is"))&&(e.component=t);null!=kr(e,"inline-template")&&(e.inlineTemplate=!0)}(e);for(var n=0;n<Co.length;n++)e=Co[n](e,t)||e;!function(e){var t,n,r,i,o,a,s,c=e.attrsList;for(t=0,n=c.length;t<n;t++){if(r=i=c[t].name,o=c[t].value,Eo.test(r))if(e.hasBindings=!0,(a=Ho(r))&&(r=r.replace(Io,"")),No.test(r))r=r.replace(No,""),o=vr(o),s=!1,a&&(a.prop&&(s=!0,"innerHtml"===(r=C(r))&&(r="innerHTML")),a.camel&&(r=C(r)),a.sync&&Cr(e,"update:"+C(r),Sr(o,"$event"))),s||!e.component&&So(e.tag,e.attrsMap.type,r)?_r(e,r,o):br(e,r,o);else if(To.test(r))r=r.replace(To,""),Cr(e,r,o,a,!1);else{var u=(r=r.replace(Eo,"")).match(Po),l=u&&u[1];l&&(r=r.slice(0,-(l.length+1))),xr(e,r,i,o,l,a)}else br(e,r,JSON.stringify(o)),!e.component&&"muted"===r&&So(e.tag,e.attrsMap.type,r)&&_r(e,r,"true")}}(e)}function Vo(e){var t;if(t=kr(e,"v-for")){var n=function(e){var t=e.match(Lo);if(!t)return;var n={};n.for=t[2].trim();var r=t[1].trim().replace(jo,""),i=r.match(Mo);i?(n.alias=r.replace(Mo,""),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r;return n}(t);n&&T(e,n)}}function Bo(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function Ho(e){var t=e.match(Io);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}var Wo=/^xmlns:NS\d+/,zo=/^NS\d+:/;function Ko(e){return Uo(e.tag,e.attrsList.slice(),e.parent)}var Go=[qi,Zi,{preTransformNode:function(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Or(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=kr(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=kr(e,"v-else",!0),s=kr(e,"v-else-if",!0),c=Ko(e);Vo(c),wr(c,"type","checkbox"),Fo(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,Bo(c,{exp:c.if,block:c});var u=Ko(e);kr(u,"v-for",!0),wr(u,"type","radio"),Fo(u,t),Bo(c,{exp:"("+n+")==='radio'"+o,block:u});var l=Ko(e);return kr(l,"v-for",!0),wr(l,":type",n),Fo(l,t),Bo(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}}];var Jo,qo,Xo={expectHTML:!0,modules:Go,directives:{model:function(e,t,n){n;var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return $r(e,r,i),!1;if("select"===o)!function(e,t,n){var r='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"});";r=r+" "+Sr(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Cr(e,"change",r,null,!0)}(e,r,i);else if("input"===o&&"checkbox"===a)!function(e,t,n){var r=n&&n.number,i=Or(e,"value")||"null",o=Or(e,"true-value")||"true",a=Or(e,"false-value")||"false";_r(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Cr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Sr(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Sr(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Sr(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Or(e,"value")||"null";_r(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Cr(e,"change",Sr(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Pr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Sr(t,l);c&&(f="if($event.target.composing)return;"+f),_r(e,"value","("+t+")"),Cr(e,u,f,null,!0),(s||a)&&Cr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return $r(e,r,i),!1;return!0},text:function(e,t){t.value&&_r(e,"textContent","_s("+t.value+")")},html:function(e,t){t.value&&_r(e,"innerHTML","_s("+t.value+")")}},isPreTag:function(e){return"pre"===e},isUnaryTag:Qi,mustUseProp:Cn,canBeLeftOpenTag:eo,isReservedTag:Dn,getTagNamespace:Un,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(Go)},Zo=w(function(e){return v("type,tag,attrsList,attrsMap,plain,parent,children,attrs"+(e?","+e:""))});function Yo(e,t){e&&(Jo=Zo(t.staticKeys||""),qo=t.isReservedTag||M,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||m(e.tag)||!qo(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every(Jo)))}(t);if(1===t.type){if(!qo(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n<r;n++){var i=t.children[n];e(i),i.static||(t.static=!1)}if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++){var s=t.ifConditions[o].block;e(s),s.static||(t.static=!1)}}}(e),function e(t,n){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=n),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)e(t.children[r],n||!!t.for);if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++)e(t.ifConditions[o].block,n)}}(e,!1))}var Qo=/^([\w$_]+|\([^)]*?\))\s*=>|^function\s*\(/,ea=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},na={esc:"Escape",tab:"Tab",enter:"Enter",space:" ",up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete"]},ra=function(e){return"if("+e+")return null;"},ia={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:ra("$event.target !== $event.currentTarget"),ctrl:ra("!$event.ctrlKey"),shift:ra("!$event.shiftKey"),alt:ra("!$event.altKey"),meta:ra("!$event.metaKey"),left:ra("'button' in $event && $event.button !== 0"),middle:ra("'button' in $event && $event.button !== 1"),right:ra("'button' in $event && $event.button !== 2")};function oa(e,t,n){var r=t?"nativeOn:{":"on:{";for(var i in e)r+='"'+i+'":'+aa(i,e[i])+",";return r.slice(0,-1)+"}"}function aa(e,t){if(!t)return"function(){}";if(Array.isArray(t))return"["+t.map(function(t){return aa(e,t)}).join(",")+"]";var n=ea.test(t.value),r=Qo.test(t.value);if(t.modifiers){var i="",o="",a=[];for(var s in t.modifiers)if(ia[s])o+=ia[s],ta[s]&&a.push(s);else if("exact"===s){var c=t.modifiers;o+=ra(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!('button' in $event)&&"+e.map(sa).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(n?"return "+t.value+"($event)":r?"return ("+t.value+")($event)":t.value)+"}"}return n||r?t.value:"function($event){"+t.value+"}"}function sa(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=ta[e],r=na[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var ca={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:L},ua=function(e){this.options=e,this.warn=e.warn||gr,this.transforms=yr(e.modules,"transformCode"),this.dataGenFns=yr(e.modules,"genData"),this.directives=T(T({},ca),e.directives);var t=e.isReservedTag||M;this.maybeComponent=function(e){return!t(e.tag)},this.onceId=0,this.staticRenderFns=[]};function la(e,t){var n=new ua(t);return{render:"with(this){return "+(e?fa(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function fa(e,t){if(e.staticRoot&&!e.staticProcessed)return pa(e,t);if(e.once&&!e.onceProcessed)return da(e,t);if(e.for&&!e.forProcessed)return function(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";0;return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||fa)(e,t)+"})"}(e,t);if(e.if&&!e.ifProcessed)return ha(e,t);if("template"!==e.tag||e.slotTarget){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=ga(e,t),i="_t("+n+(r?","+r:""),o=e.attrs&&"{"+e.attrs.map(function(e){return C(e.name)+":"+e.value}).join(",")+"}",a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:ga(t,n,!0);return"_c("+e+","+va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r=e.plain?void 0:va(e,t),i=e.inlineTemplate?null:ga(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return ga(e,t)||"void 0"}function pa(e,t){return e.staticProcessed=!0,t.staticRenderFns.push("with(this){return "+fa(e,t)+"}"),"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function da(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return ha(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+fa(e,t)+","+t.onceId+++","+n+")":fa(e,t)}return pa(e,t)}function ha(e,t,n,r){return e.ifProcessed=!0,function e(t,n,r,i){if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+a(o.block)+":"+e(t,n,r,i):""+a(o.block);function a(e){return r?r(e,n):e.once?da(e,n):fa(e,n)}}(e.ifConditions.slice(),t,n,r)}function va(e,t){var n="{",r=function(e,t){var n=e.directives;if(!n)return;var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?',arg:"'+o.arg+'"':"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}if(c)return s.slice(0,-1)+"]"}(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:{"+ba(e.attrs)+"},"),e.props&&(n+="domProps:{"+ba(e.props)+"},"),e.events&&(n+=oa(e.events,!1,t.warn)+","),e.nativeEvents&&(n+=oa(e.nativeEvents,!0,t.warn)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=function(e,t){return"scopedSlots:_u(["+Object.keys(e).map(function(n){return ma(n,e[n],t)}).join(",")+"])"}(e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];0;if(1===n.type){var r=la(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function ma(e,t,n){return t.for&&!t.forProcessed?function(e,t,n){var r=t.for,i=t.alias,o=t.iterator1?","+t.iterator1:"",a=t.iterator2?","+t.iterator2:"";return t.forProcessed=!0,"_l(("+r+"),function("+i+o+a+"){return "+ma(e,t,n)+"})"}(e,t,n):"{key:"+e+",fn:"+("function("+String(t.slotScope)+"){return "+("template"===t.tag?t.if?t.if+"?"+(ga(t,n)||"undefined")+":undefined":ga(t,n)||"undefined":fa(t,n))+"}")+"}"}function ga(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag)return(r||fa)(a,t);var s=n?function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(ya(i)||i.ifConditions&&i.ifConditions.some(function(e){return ya(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}(o,t.maybeComponent):0,c=i||_a;return"["+o.map(function(e){return c(e,t)}).join(",")+"]"+(s?","+s:"")}}function ya(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function _a(e,t){return 1===e.type?fa(e,t):3===e.type&&e.isComment?function(e){return"_e("+JSON.stringify(e.text)+")"}(e):function(e){return"_v("+(2===e.type?e.expression:wa(JSON.stringify(e.text)))+")"}(e)}function ba(e){for(var t="",n=0;n<e.length;n++){var r=e[n];t+='"'+r.name+'":'+wa(r.value)+","}return t.slice(0,-1)}function wa(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),new RegExp("\\b"+"delete,typeof,void".split(",").join("\\s*\\([^\\)]*\\)|\\b")+"\\s*\\([^\\)]*\\)");function xa(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),L}}var Ca,Oa=function(e){return function(t){function n(n,r){var i=Object.create(t),o=[],a=[];if(i.warn=function(e,t){(t?a:o).push(e)},r)for(var s in r.modules&&(i.modules=(t.modules||[]).concat(r.modules)),r.directives&&(i.directives=T(Object.create(t.directives||null),r.directives)),r)"modules"!==s&&"directives"!==s&&(i[s]=r[s]);var c=e(n,i);return c.errors=o,c.tips=a,c}return{compile:n,compileToFunctions:function(e){var t=Object.create(null);return function(n,r,i){(r=T({},r)).warn,delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r),s={},c=[];return s.render=xa(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return xa(e,c)}),t[o]=s}}(n)}}}(function(e,t){var n=Ro(e.trim(),t);!1!==t.optimize&&Yo(n,t);var r=la(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}})(Xo).compileToFunctions;function ka(e){return(Ca=Ca||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',Ca.innerHTML.indexOf("&#10;")>0}var $a=!!K&&ka(!1),Sa=!!K&&ka(!0),Aa=w(function(e){var t=Vn(e);return t&&t.innerHTML}),Ta=dn.prototype.$mount;dn.prototype.$mount=function(e,t){if((e=e&&Vn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=Aa(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){0;var i=Oa(r,{shouldDecodeNewlines:$a,shouldDecodeNewlinesForHref:Sa,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return Ta.call(this,e,t)},dn.compile=Oa,t.a=dn}).call(this,n(2),n(7).setImmediate)},function(e,t,n){e.exports=function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="/",t(0)}([function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.mixins=t.VueSelect=void 0;var i=n(85),o=r(i),a=n(42),s=r(a);t.default=o.default,t.VueSelect=o.default,t.mixins=s.default},function(e,t){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(e,t){var n=e.exports={version:"2.5.3"};"number"==typeof __e&&(__e=n)},function(e,t,n){e.exports=!n(9)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},function(e,t,n){var r=n(11),i=n(33),o=n(25),a=Object.defineProperty;t.f=n(3)?Object.defineProperty:function(e,t,n){if(r(e),t=o(t,!0),r(n),i)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},function(e,t,n){var r=n(5),i=n(14);e.exports=n(3)?function(e,t,n){return r.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},function(e,t,n){var r=n(61),i=n(16);e.exports=function(e){return r(i(e))}},function(e,t,n){var r=n(23)("wks"),i=n(15),o=n(1).Symbol,a="function"==typeof o,s=e.exports=function(e){return r[e]||(r[e]=a&&o[e]||(a?o:i)("Symbol."+e))};s.store=r},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},function(e,t,n){var r=n(10);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},function(e,t,n){var r=n(1),i=n(2),o=n(58),a=n(6),s="prototype",c=function(e,t,n){var u,l,f,p=e&c.F,d=e&c.G,h=e&c.S,v=e&c.P,m=e&c.B,g=e&c.W,y=d?i:i[t]||(i[t]={}),_=y[s],b=d?r:h?r[t]:(r[t]||{})[s];for(u in d&&(n=t),n)(l=!p&&b&&void 0!==b[u])&&u in y||(f=l?b[u]:n[u],y[u]=d&&"function"!=typeof b[u]?n[u]:m&&l?o(f,r):g&&b[u]==f?function(e){var t=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return t[s]=e[s],t}(f):v&&"function"==typeof f?o(Function.call,f):f,v&&((y.virtual||(y.virtual={}))[u]=f,e&c.R&&_&&!_[u]&&a(_,u,f)))};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,e.exports=c},function(e,t,n){var r=n(38),i=n(17);e.exports=Object.keys||function(e){return r(e,i)}},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++n+r).toString(36))}},function(e,t){e.exports=function(e){if(void 0==e)throw TypeError("Can't call method on "+e);return e}},function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(e,t){e.exports={}},function(e,t){e.exports=!0},function(e,t){t.f={}.propertyIsEnumerable},function(e,t,n){var r=n(5).f,i=n(4),o=n(8)("toStringTag");e.exports=function(e,t,n){e&&!i(e=n?e:e.prototype,o)&&r(e,o,{configurable:!0,value:t})}},function(e,t,n){var r=n(23)("keys"),i=n(15);e.exports=function(e){return r[e]||(r[e]=i(e))}},function(e,t,n){var r=n(1),i="__core-js_shared__",o=r[i]||(r[i]={});e.exports=function(e){return o[e]||(o[e]={})}},function(e,t){var n=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:n)(e)}},function(e,t,n){var r=n(10);e.exports=function(e,t){if(!r(e))return e;var n,i;if(t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;if("function"==typeof(n=e.valueOf)&&!r(i=n.call(e)))return i;if(!t&&"function"==typeof(n=e.toString)&&!r(i=n.call(e)))return i;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var r=n(1),i=n(2),o=n(19),a=n(27),s=n(5).f;e.exports=function(e){var t=i.Symbol||(i.Symbol=o?{}:r.Symbol||{});"_"==e.charAt(0)||e in t||s(t,e,{value:a.f(e)})}},function(e,t,n){t.f=n(8)},function(e,t){"use strict";e.exports={props:{loading:{type:Boolean,default:!1},onSearch:{type:Function,default:function(e,t){}}},data:function(){return{mutableLoading:!1}},watch:{search:function(){this.search.length>0&&(this.onSearch(this.search,this.toggleLoading),this.$emit("search",this.search,this.toggleLoading))},loading:function(e){this.mutableLoading=e}},methods:{toggleLoading:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return this.mutableLoading=null==e?!this.mutableLoading:e}}}},function(e,t){"use strict";e.exports={watch:{typeAheadPointer:function(){this.maybeAdjustScroll()}},methods:{maybeAdjustScroll:function(){var e=this.pixelsToPointerTop(),t=this.pixelsToPointerBottom();return e<=this.viewport().top?this.scrollTo(e):t>=this.viewport().bottom?this.scrollTo(this.viewport().top+this.pointerHeight()):void 0},pixelsToPointerTop:function(){var e=0;if(this.$refs.dropdownMenu)for(var t=0;t<this.typeAheadPointer;t++)e+=this.$refs.dropdownMenu.children[t].offsetHeight;return e},pixelsToPointerBottom:function(){return this.pixelsToPointerTop()+this.pointerHeight()},pointerHeight:function(){var e=!!this.$refs.dropdownMenu&&this.$refs.dropdownMenu.children[this.typeAheadPointer];return e?e.offsetHeight:0},viewport:function(){return{top:this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop:0,bottom:this.$refs.dropdownMenu?this.$refs.dropdownMenu.offsetHeight+this.$refs.dropdownMenu.scrollTop:0}},scrollTo:function(e){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop=e:null}}}},function(e,t){"use strict";e.exports={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){this.typeAheadPointer=0}},methods:{typeAheadUp:function(){this.typeAheadPointer>0&&(this.typeAheadPointer--,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadDown:function(){this.typeAheadPointer<this.filteredOptions.length-1&&(this.typeAheadPointer++,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadSelect:function(){this.filteredOptions[this.typeAheadPointer]?this.select(this.filteredOptions[this.typeAheadPointer]):this.taggable&&this.search.length&&this.select(this.search),this.clearSearchOnSelect&&(this.search="")}}}},function(e,t){var n={}.toString;e.exports=function(e){return n.call(e).slice(8,-1)}},function(e,t,n){var r=n(10),i=n(1).document,o=r(i)&&r(i.createElement);e.exports=function(e){return o?i.createElement(e):{}}},function(e,t,n){e.exports=!n(3)&&!n(9)(function(){return 7!=Object.defineProperty(n(32)("div"),"a",{get:function(){return 7}}).a})},function(e,t,n){"use strict";var r=n(19),i=n(12),o=n(39),a=n(6),s=n(4),c=n(18),u=n(63),l=n(21),f=n(69),p=n(8)("iterator"),d=!([].keys&&"next"in[].keys()),h="keys",v="values",m=function(){return this};e.exports=function(e,t,n,g,y,_,b){u(n,t,g);var w,x,C,O=function(e){if(!d&&e in A)return A[e];switch(e){case h:case v:return function(){return new n(this,e)}}return function(){return new n(this,e)}},k=t+" Iterator",$=y==v,S=!1,A=e.prototype,T=A[p]||A["@@iterator"]||y&&A[y],E=!d&&T||O(y),L=y?$?O("entries"):E:void 0,M="Array"==t&&A.entries||T;if(M&&(C=f(M.call(new e)))!==Object.prototype&&C.next&&(l(C,k,!0),r||s(C,p)||a(C,p,m)),$&&T&&T.name!==v&&(S=!0,E=function(){return T.call(this)}),r&&!b||!d&&!S&&A[p]||a(A,p,E),c[t]=E,c[k]=m,y)if(w={values:$?E:O(v),keys:_?E:O(h),entries:L},b)for(x in w)x in A||o(A,x,w[x]);else i(i.P+i.F*(d||S),t,w);return w}},function(e,t,n){var r=n(11),i=n(66),o=n(17),a=n(22)("IE_PROTO"),s=function(){},c="prototype",u=function(){var e,t=n(32)("iframe"),r=o.length;for(t.style.display="none",n(60).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),u=e.F;r--;)delete u[c][o[r]];return u()};e.exports=Object.create||function(e,t){var n;return null!==e?(s[c]=r(e),n=new s,s[c]=null,n[a]=e):n=u(),void 0===t?n:i(n,t)}},function(e,t,n){var r=n(38),i=n(17).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,i)}},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t,n){var r=n(4),i=n(7),o=n(57)(!1),a=n(22)("IE_PROTO");e.exports=function(e,t){var n,s=i(e),c=0,u=[];for(n in s)n!=a&&r(s,n)&&u.push(n);for(;t.length>c;)r(s,n=t[c++])&&(~o(u,n)||u.push(n));return u}},function(e,t,n){e.exports=n(6)},function(e,t,n){var r=n(16);e.exports=function(e){return Object(r(e))}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(45),o=r(i),a=n(48),s=r(a),c=n(43),u=r(c),l=n(49),f=r(l),p=n(29),d=r(p),h=n(30),v=r(h),m=n(28),g=r(m);t.default={mixins:[d.default,v.default,g.default],props:{value:{default:null},options:{type:Array,default:function(){return[]}},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},maxHeight:{type:String,default:"400px"},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:""},transition:{type:String,default:"fade"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:"label"},index:{type:String,default:null},getOptionLabel:{type:Function,default:function(e){return this.index&&(e=this.findOptionByIndexValue(e)),"object"===(void 0===e?"undefined":(0,f.default)(e))?e.hasOwnProperty(this.label)?e[this.label]:console.warn('[vue-select warn]: Label key "option.'+this.label+'" does not exist in options object '+(0,u.default)(e)+".\nhttp://sagalbot.github.io/vue-select/#ex-labels"):e}},onChange:{type:Function,default:function(e){this.$emit("input",e)}},onTab:{type:Function,default:function(){this.selectOnTab&&this.typeAheadSelect()}},taggable:{type:Boolean,default:!1},tabindex:{type:Number,default:null},pushTags:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},filterBy:{type:Function,default:function(e,t,n){return(t||"").toLowerCase().indexOf(n.toLowerCase())>-1}},filter:{type:Function,default:function(e,t){var n=this;return e.filter(function(e){var r=n.getOptionLabel(e);return"number"==typeof r&&(r=r.toString()),n.filterBy(e,r,t)})}},createOption:{type:Function,default:function(e){return"object"===(0,f.default)(this.mutableOptions[0])&&(e=(0,s.default)({},this.label,e)),this.$emit("option:created",e),e}},resetOnOptionsChange:{type:Boolean,default:!1},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:"auto"},selectOnTab:{type:Boolean,default:!1}},data:function(){return{search:"",open:!1,mutableValue:null,mutableOptions:[]}},watch:{value:function(e){this.mutableValue=e},mutableValue:function(e,t){this.multiple?this.onChange&&this.onChange(e):this.onChange&&e!==t&&this.onChange(e)},options:function(e){this.mutableOptions=e},mutableOptions:function(){!this.taggable&&this.resetOnOptionsChange&&(this.mutableValue=this.multiple?[]:null)},multiple:function(e){this.mutableValue=e?[]:null}},created:function(){this.mutableValue=this.value,this.mutableOptions=this.options.slice(0),this.mutableLoading=this.loading,this.$on("option:created",this.maybePushTag)},methods:{select:function(e){if(!this.isOptionSelected(e)){if(this.taggable&&!this.optionExists(e)&&(e=this.createOption(e)),this.index){if(!e.hasOwnProperty(this.index))return console.warn('[vue-select warn]: Index key "option.'+this.index+'" does not exist in options object '+(0,u.default)(e)+".");e=e[this.index]}this.multiple&&!this.mutableValue?this.mutableValue=[e]:this.multiple?this.mutableValue.push(e):this.mutableValue=e}this.onAfterSelect(e)},deselect:function(e){var t=this;if(this.multiple){var n=-1;this.mutableValue.forEach(function(r){(r===e||t.index&&r===e[t.index]||"object"===(void 0===r?"undefined":(0,f.default)(r))&&r[t.label]===e[t.label])&&(n=r)});var r=this.mutableValue.indexOf(n);this.mutableValue.splice(r,1)}else this.mutableValue=null},clearSelection:function(){this.mutableValue=this.multiple?[]:null},onAfterSelect:function(e){this.closeOnSelect&&(this.open=!this.open,this.$refs.search.blur()),this.clearSearchOnSelect&&(this.search="")},toggleDropdown:function(e){(e.target===this.$refs.openIndicator||e.target===this.$refs.search||e.target===this.$refs.toggle||e.target.classList.contains("selected-tag")||e.target===this.$el)&&(this.open?this.$refs.search.blur():this.disabled||(this.open=!0,this.$refs.search.focus()))},isOptionSelected:function(e){var t=this,n=!1;return this.valueAsArray.forEach(function(r){"object"===(void 0===r?"undefined":(0,f.default)(r))?n=t.optionObjectComparator(r,e):r!==e&&r!==e[t.index]||(n=!0)}),n},optionObjectComparator:function(e,t){return!(!this.index||e!==t[this.index])||e[this.label]===t[this.label]||e[this.label]===t||!(!this.index||e[this.index]!==t[this.index])},findOptionByIndexValue:function(e){var t=this;return this.options.forEach(function(n){(0,u.default)(n[t.index])===(0,u.default)(e)&&(e=n)}),e},onEscape:function(){this.search.length?this.search="":this.$refs.search.blur()},onSearchBlur:function(){this.mousedown&&!this.searching?this.mousedown=!1:(this.clearSearchOnBlur&&(this.search=""),this.open=!1,this.$emit("search:blur"))},onSearchFocus:function(){this.open=!0,this.$emit("search:focus")},maybeDeleteValue:function(){if(!this.$refs.search.value.length&&this.mutableValue)return this.multiple?this.mutableValue.pop():this.mutableValue=null},optionExists:function(e){var t=this,n=!1;return this.mutableOptions.forEach(function(r){"object"===(void 0===r?"undefined":(0,f.default)(r))&&r[t.label]===e?n=!0:r===e&&(n=!0)}),n},maybePushTag:function(e){this.pushTags&&this.mutableOptions.push(e)},onMousedown:function(){this.mousedown=!0}},computed:{dropdownClasses:function(){return{open:this.dropdownOpen,single:!this.multiple,searching:this.searching,searchable:this.searchable,unsearchable:!this.searchable,loading:this.mutableLoading,rtl:"rtl"===this.dir,disabled:this.disabled}},clearSearchOnBlur:function(){return this.clearSearchOnSelect&&!this.multiple},searching:function(){return!!this.search},dropdownOpen:function(){return!this.noDrop&&this.open&&!this.mutableLoading},searchPlaceholder:function(){if(this.isValueEmpty&&this.placeholder)return this.placeholder},filteredOptions:function(){if(!this.filterable&&!this.taggable)return this.mutableOptions.slice();var e=this.search.length?this.filter(this.mutableOptions,this.search,this):this.mutableOptions;return this.taggable&&this.search.length&&!this.optionExists(this.search)&&e.unshift(this.search),e},isValueEmpty:function(){return!this.mutableValue||("object"===(0,f.default)(this.mutableValue)?!(0,o.default)(this.mutableValue).length:!this.valueAsArray.length)},valueAsArray:function(){return this.multiple&&this.mutableValue?this.mutableValue:this.mutableValue?[].concat(this.mutableValue):[]},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&null!=this.mutableValue}}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(28),o=r(i),a=n(30),s=r(a),c=n(29),u=r(c);t.default={ajax:o.default,pointer:s.default,pointerScroll:u.default}},function(e,t,n){e.exports={default:n(50),__esModule:!0}},function(e,t,n){e.exports={default:n(51),__esModule:!0}},function(e,t,n){e.exports={default:n(52),__esModule:!0}},function(e,t,n){e.exports={default:n(53),__esModule:!0}},function(e,t,n){e.exports={default:n(54),__esModule:!0}},function(e,t,n){"use strict";t.__esModule=!0;var r=n(44),i=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default=function(e,t,n){return t in e?(0,i.default)(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=n(47),o=r(i),a=n(46),s=r(a),c="function"==typeof s.default&&"symbol"==typeof o.default?function(e){return typeof e}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":typeof e};t.default="function"==typeof s.default&&"symbol"===c(o.default)?function(e){return void 0===e?"undefined":c(e)}:function(e){return e&&"function"==typeof s.default&&e.constructor===s.default&&e!==s.default.prototype?"symbol":void 0===e?"undefined":c(e)}},function(e,t,n){var r=n(2),i=r.JSON||(r.JSON={stringify:JSON.stringify});e.exports=function(e){return i.stringify.apply(i,arguments)}},function(e,t,n){n(75);var r=n(2).Object;e.exports=function(e,t,n){return r.defineProperty(e,t,n)}},function(e,t,n){n(76),e.exports=n(2).Object.keys},function(e,t,n){n(79),n(77),n(80),n(81),e.exports=n(2).Symbol},function(e,t,n){n(78),n(82),e.exports=n(27).f("iterator")},function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},function(e,t){e.exports=function(){}},function(e,t,n){var r=n(7),i=n(73),o=n(72);e.exports=function(e){return function(t,n,a){var s,c=r(t),u=i(c.length),l=o(a,u);if(e&&n!=n){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((e||l in c)&&c[l]===n)return e||l||0;return!e&&-1}}},function(e,t,n){var r=n(55);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){var r=n(13),i=n(37),o=n(20);e.exports=function(e){var t=r(e),n=i.f;if(n)for(var a,s=n(e),c=o.f,u=0;s.length>u;)c.call(e,a=s[u++])&&t.push(a);return t}},function(e,t,n){var r=n(1).document;e.exports=r&&r.documentElement},function(e,t,n){var r=n(31);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},function(e,t,n){var r=n(31);e.exports=Array.isArray||function(e){return"Array"==r(e)}},function(e,t,n){"use strict";var r=n(35),i=n(14),o=n(21),a={};n(6)(a,n(8)("iterator"),function(){return this}),e.exports=function(e,t,n){e.prototype=r(a,{next:i(1,n)}),o(e,t+" Iterator")}},function(e,t){e.exports=function(e,t){return{value:t,done:!!e}}},function(e,t,n){var r=n(15)("meta"),i=n(10),o=n(4),a=n(5).f,s=0,c=Object.isExtensible||function(){return!0},u=!n(9)(function(){return c(Object.preventExtensions({}))}),l=function(e){a(e,r,{value:{i:"O"+ ++s,w:{}}})},f=e.exports={KEY:r,NEED:!1,fastKey:function(e,t){if(!i(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!o(e,r)){if(!c(e))return"F";if(!t)return"E";l(e)}return e[r].i},getWeak:function(e,t){if(!o(e,r)){if(!c(e))return!0;if(!t)return!1;l(e)}return e[r].w},onFreeze:function(e){return u&&f.NEED&&c(e)&&!o(e,r)&&l(e),e}}},function(e,t,n){var r=n(5),i=n(11),o=n(13);e.exports=n(3)?Object.defineProperties:function(e,t){i(e);for(var n,a=o(t),s=a.length,c=0;s>c;)r.f(e,n=a[c++],t[n]);return e}},function(e,t,n){var r=n(20),i=n(14),o=n(7),a=n(25),s=n(4),c=n(33),u=Object.getOwnPropertyDescriptor;t.f=n(3)?u:function(e,t){if(e=o(e),t=a(t,!0),c)try{return u(e,t)}catch(e){}if(s(e,t))return i(!r.f.call(e,t),e[t])}},function(e,t,n){var r=n(7),i=n(36).f,o={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return a&&"[object Window]"==o.call(e)?function(e){try{return i(e)}catch(e){return a.slice()}}(e):i(r(e))}},function(e,t,n){var r=n(4),i=n(40),o=n(22)("IE_PROTO"),a=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=i(e),r(e,o)?e[o]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?a:null}},function(e,t,n){var r=n(12),i=n(2),o=n(9);e.exports=function(e,t){var n=(i.Object||{})[e]||Object[e],a={};a[e]=t(n),r(r.S+r.F*o(function(){n(1)}),"Object",a)}},function(e,t,n){var r=n(24),i=n(16);e.exports=function(e){return function(t,n){var o,a,s=String(i(t)),c=r(n),u=s.length;return c<0||c>=u?e?"":void 0:(o=s.charCodeAt(c))<55296||o>56319||c+1===u||(a=s.charCodeAt(c+1))<56320||a>57343?e?s.charAt(c):o:e?s.slice(c,c+2):a-56320+(o-55296<<10)+65536}}},function(e,t,n){var r=n(24),i=Math.max,o=Math.min;e.exports=function(e,t){return(e=r(e))<0?i(e+t,0):o(e,t)}},function(e,t,n){var r=n(24),i=Math.min;e.exports=function(e){return e>0?i(r(e),9007199254740991):0}},function(e,t,n){"use strict";var r=n(56),i=n(64),o=n(18),a=n(7);e.exports=n(34)(Array,"Array",function(e,t){this._t=a(e),this._i=0,this._k=t},function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,i(1)):i(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},function(e,t,n){var r=n(12);r(r.S+r.F*!n(3),"Object",{defineProperty:n(5).f})},function(e,t,n){var r=n(40),i=n(13);n(70)("keys",function(){return function(e){return i(r(e))}})},function(e,t){},function(e,t,n){"use strict";var r=n(71)(!0);n(34)(String,"String",function(e){this._t=String(e),this._i=0},function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})})},function(e,t,n){"use strict";var r=n(1),i=n(4),o=n(3),a=n(12),s=n(39),c=n(65).KEY,u=n(9),l=n(23),f=n(21),p=n(15),d=n(8),h=n(27),v=n(26),m=n(59),g=n(62),y=n(11),_=n(10),b=n(7),w=n(25),x=n(14),C=n(35),O=n(68),k=n(67),$=n(5),S=n(13),A=k.f,T=$.f,E=O.f,L=r.Symbol,M=r.JSON,j=M&&M.stringify,P="prototype",N=d("_hidden"),I=d("toPrimitive"),D={}.propertyIsEnumerable,U=l("symbol-registry"),R=l("symbols"),F=l("op-symbols"),V=Object[P],B="function"==typeof L,H=r.QObject,W=!H||!H[P]||!H[P].findChild,z=o&&u(function(){return 7!=C(T({},"a",{get:function(){return T(this,"a",{value:7}).a}})).a})?function(e,t,n){var r=A(V,t);r&&delete V[t],T(e,t,n),r&&e!==V&&T(V,t,r)}:T,K=function(e){var t=R[e]=C(L[P]);return t._k=e,t},G=B&&"symbol"==typeof L.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof L},J=function(e,t,n){return e===V&&J(F,t,n),y(e),t=w(t,!0),y(n),i(R,t)?(n.enumerable?(i(e,N)&&e[N][t]&&(e[N][t]=!1),n=C(n,{enumerable:x(0,!1)})):(i(e,N)||T(e,N,x(1,{})),e[N][t]=!0),z(e,t,n)):T(e,t,n)},q=function(e,t){y(e);for(var n,r=m(t=b(t)),i=0,o=r.length;o>i;)J(e,n=r[i++],t[n]);return e},X=function(e){var t=D.call(this,e=w(e,!0));return!(this===V&&i(R,e)&&!i(F,e))&&(!(t||!i(this,e)||!i(R,e)||i(this,N)&&this[N][e])||t)},Z=function(e,t){if(e=b(e),t=w(t,!0),e!==V||!i(R,t)||i(F,t)){var n=A(e,t);return!n||!i(R,t)||i(e,N)&&e[N][t]||(n.enumerable=!0),n}},Y=function(e){for(var t,n=E(b(e)),r=[],o=0;n.length>o;)i(R,t=n[o++])||t==N||t==c||r.push(t);return r},Q=function(e){for(var t,n=e===V,r=E(n?F:b(e)),o=[],a=0;r.length>a;)!i(R,t=r[a++])||n&&!i(V,t)||o.push(R[t]);return o};B||(s((L=function(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var e=p(arguments.length>0?arguments[0]:void 0),t=function(n){this===V&&t.call(F,n),i(this,N)&&i(this[N],e)&&(this[N][e]=!1),z(this,e,x(1,n))};return o&&W&&z(V,e,{configurable:!0,set:t}),K(e)})[P],"toString",function(){return this._k}),k.f=Z,$.f=J,n(36).f=O.f=Y,n(20).f=X,n(37).f=Q,o&&!n(19)&&s(V,"propertyIsEnumerable",X,!0),h.f=function(e){return K(d(e))}),a(a.G+a.W+a.F*!B,{Symbol:L});for(var ee="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),te=0;ee.length>te;)d(ee[te++]);for(var ne=S(d.store),re=0;ne.length>re;)v(ne[re++]);a(a.S+a.F*!B,"Symbol",{for:function(e){return i(U,e+="")?U[e]:U[e]=L(e)},keyFor:function(e){if(!G(e))throw TypeError(e+" is not a symbol!");for(var t in U)if(U[t]===e)return t},useSetter:function(){W=!0},useSimple:function(){W=!1}}),a(a.S+a.F*!B,"Object",{create:function(e,t){return void 0===t?C(e):q(C(e),t)},defineProperty:J,defineProperties:q,getOwnPropertyDescriptor:Z,getOwnPropertyNames:Y,getOwnPropertySymbols:Q}),M&&a(a.S+a.F*(!B||u(function(){var e=L();return"[null]"!=j([e])||"{}"!=j({a:e})||"{}"!=j(Object(e))})),"JSON",{stringify:function(e){for(var t,n,r=[e],i=1;arguments.length>i;)r.push(arguments[i++]);if(n=t=r[1],(_(t)||void 0!==e)&&!G(e))return g(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!G(t))return t}),r[1]=t,j.apply(M,r)}}),L[P][I]||n(6)(L[P],I,L[P].valueOf),f(L,"Symbol"),f(Math,"Math",!0),f(r.JSON,"JSON",!0)},function(e,t,n){n(26)("asyncIterator")},function(e,t,n){n(26)("observable")},function(e,t,n){n(74);for(var r=n(1),i=n(6),o=n(18),a=n(8)("toStringTag"),s="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<s.length;c++){var u=s[c],l=r[u],f=l&&l.prototype;f&&!f[a]&&i(f,a,u),o[u]=o.Array}},function(e,t,n){(e.exports=n(84)()).push([e.id,'.v-select{position:relative;font-family:inherit}.v-select,.v-select *{box-sizing:border-box}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .dropdown-toggle .clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .selected-tag .close{margin-left:0;margin-right:2px}.v-select[dir=rtl] .dropdown-menu{text-align:right}.v-select .open-indicator{display:flex;align-items:center;cursor:pointer;pointer-events:all;opacity:1;width:12px}.v-select .open-indicator,.v-select .open-indicator:before{transition:all .15s cubic-bezier(1,-.115,.975,.855);transition-timing-function:cubic-bezier(1,-.115,.975,.855)}.v-select .open-indicator:before{border-color:rgba(60,60,60,.5);border-style:solid;border-width:3px 3px 0 0;content:"";display:inline-block;height:10px;width:10px;vertical-align:text-top;transform:rotate(133deg);box-sizing:inherit}.v-select.open .open-indicator:before{transform:rotate(315deg)}.v-select.loading .open-indicator{opacity:0}.v-select .dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;padding:0 0 4px;background:none;border:1px solid rgba(60,60,60,.26);border-radius:4px;white-space:normal}.v-select .vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px;position:relative}.v-select .vs__actions{display:flex;align-items:stretch;padding:0 6px 0 3px}.v-select .dropdown-toggle .clear{font-size:23px;font-weight:700;line-height:1;color:rgba(60,60,60,.5);padding:0;border:0;background-color:transparent;cursor:pointer;margin-right:6px}.v-select.searchable .dropdown-toggle{cursor:text}.v-select.unsearchable .dropdown-toggle{cursor:pointer}.v-select.open .dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.v-select .dropdown-menu{display:block;position:absolute;top:100%;left:0;z-index:1000;min-width:160px;padding:5px 0;margin:0;width:100%;overflow-y:scroll;border:1px solid rgba(0,0,0,.26);box-shadow:0 3px 6px 0 rgba(0,0,0,.15);border-top:none;border-radius:0 0 4px 4px;text-align:left;list-style:none;background:#fff}.v-select .no-options{text-align:center}.v-select .selected-tag{display:flex;align-items:center;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;color:#333;line-height:1.42857143;margin:4px 2px 0;padding:0 .25em;transition:opacity .25s}.v-select.single .selected-tag{background-color:transparent;border-color:transparent}.v-select.single.open .selected-tag{position:absolute;opacity:.4}.v-select.single.searching .selected-tag{display:none}.v-select .selected-tag .close{margin-left:2px;font-size:1.25em;appearance:none;padding:0;cursor:pointer;background:0 0;border:0;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.v-select.single.searching:not(.open):not(.loading) input[type=search]{opacity:.2}.v-select input[type=search]::-webkit-search-cancel-button,.v-select input[type=search]::-webkit-search-decoration,.v-select input[type=search]::-webkit-search-results-button,.v-select input[type=search]::-webkit-search-results-decoration{display:none}.v-select input[type=search]::-ms-clear{display:none}.v-select input[type=search],.v-select input[type=search]:focus{appearance:none;-webkit-appearance:none;-moz-appearance:none;line-height:1.42857143;font-size:1em;display:inline-block;border:1px solid transparent;border-left:none;outline:none;margin:4px 0 0;padding:0 7px;max-width:100%;background:none;box-shadow:none;flex-grow:1;width:0}.v-select.unsearchable input[type=search]{opacity:0}.v-select.unsearchable input[type=search]:hover{cursor:pointer}.v-select li{line-height:1.42857143}.v-select li>a{display:block;padding:3px 20px;clear:both;color:#333;white-space:nowrap}.v-select li:hover{cursor:pointer}.v-select .dropdown-menu .active>a{color:#333;background:rgba(50,50,50,.1)}.v-select .dropdown-menu>.highlight>a{background:#5897fb;color:#fff}.v-select .highlight:not(:last-child){margin-bottom:0}.v-select .spinner{align-self:center;opacity:0;font-size:5px;text-indent:-9999em;overflow:hidden;border-top:.9em solid hsla(0,0%,39%,.1);border-right:.9em solid hsla(0,0%,39%,.1);border-bottom:.9em solid hsla(0,0%,39%,.1);border-left:.9em solid rgba(60,60,60,.45);transform:translateZ(0);animation:vSelectSpinner 1.1s infinite linear;transition:opacity .1s}.v-select .spinner,.v-select .spinner:after{border-radius:50%;width:5em;height:5em}.v-select.disabled .dropdown-toggle,.v-select.disabled .dropdown-toggle .clear,.v-select.disabled .dropdown-toggle input,.v-select.disabled .open-indicator,.v-select.disabled .selected-tag .close{cursor:not-allowed;background-color:#f8f8f8}.v-select.loading .spinner{opacity:1}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fade-enter-active,.fade-leave-active{transition:opacity .15s cubic-bezier(1,.5,.8,1)}.fade-enter,.fade-leave-to{opacity:0}',""])},function(e,t){e.exports=function(){var e=[];return e.toString=function(){for(var e=[],t=0;t<this.length;t++){var n=this[t];n[2]?e.push("@media "+n[2]+"{"+n[1]+"}"):e.push(n[1])}return e.join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var r={},i=0;i<this.length;i++){var o=this[i][0];"number"==typeof o&&(r[o]=!0)}for(i=0;i<t.length;i++){var a=t[i];"number"==typeof a[0]&&r[a[0]]||(n&&!a[2]?a[2]=n:n&&(a[2]="("+a[2]+") and ("+n+")"),e.push(a))}},e}},function(e,t,n){n(89);var r=n(86)(n(41),n(87),null,null);e.exports=r.exports},function(e,t){e.exports=function(e,t,n,r){var i,o=e=e||{},a=typeof e.default;"object"!==a&&"function"!==a||(i=e,o=e.default);var s="function"==typeof o?o.options:o;if(t&&(s.render=t.render,s.staticRenderFns=t.staticRenderFns),n&&(s._scopeId=n),r){var c=s.computed||(s.computed={});Object.keys(r).forEach(function(e){var t=r[e];c[e]=function(){return t}})}return{esModule:i,exports:o,options:s}}},function(e,t){e.exports={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"dropdown v-select",class:e.dropdownClasses,attrs:{dir:e.dir}},[n("div",{ref:"toggle",staticClass:"dropdown-toggle",on:{mousedown:function(t){t.preventDefault(),e.toggleDropdown(t)}}},[n("div",{ref:"selectedOptions",staticClass:"vs__selected-options"},[e._l(e.valueAsArray,function(t){return e._t("selected-option-container",[n("span",{key:t.index,staticClass:"selected-tag"},[e._t("selected-option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,"object"==typeof t?t:(r={},r[e.label]=t,r)),e._v(" "),e.multiple?n("button",{staticClass:"close",attrs:{disabled:e.disabled,type:"button","aria-label":"Remove option"},on:{click:function(n){e.deselect(t)}}},[n("span",{attrs:{"aria-hidden":"true"}},[e._v("×")])]):e._e()],2)],{option:"object"==typeof t?t:(i={},i[e.label]=t,i),deselect:e.deselect,multiple:e.multiple,disabled:e.disabled});var r,i}),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.search,expression:"search"}],ref:"search",staticClass:"form-control",attrs:{type:"search",autocomplete:"off",disabled:e.disabled,placeholder:e.searchPlaceholder,tabindex:e.tabindex,readonly:!e.searchable,id:e.inputId,role:"combobox","aria-expanded":e.dropdownOpen,"aria-label":"Search for option"},domProps:{value:e.search},on:{keydown:[function(t){return"button"in t||!e._k(t.keyCode,"delete",[8,46],t.key)?void e.maybeDeleteValue(t):null},function(t){return"button"in t||!e._k(t.keyCode,"up",38,t.key)?(t.preventDefault(),void e.typeAheadUp(t)):null},function(t){return"button"in t||!e._k(t.keyCode,"down",40,t.key)?(t.preventDefault(),void e.typeAheadDown(t)):null},function(t){return"button"in t||!e._k(t.keyCode,"enter",13,t.key)?(t.preventDefault(),void e.typeAheadSelect(t)):null},function(t){return"button"in t||!e._k(t.keyCode,"tab",9,t.key)?void e.onTab(t):null}],keyup:function(t){return"button"in t||!e._k(t.keyCode,"esc",27,t.key)?void e.onEscape(t):null},blur:e.onSearchBlur,focus:e.onSearchFocus,input:function(t){t.target.composing||(e.search=t.target.value)}}})],2),e._v(" "),n("div",{staticClass:"vs__actions"},[n("button",{directives:[{name:"show",rawName:"v-show",value:e.showClearButton,expression:"showClearButton"}],staticClass:"clear",attrs:{disabled:e.disabled,type:"button",title:"Clear selection"},on:{click:e.clearSelection}},[n("span",{attrs:{"aria-hidden":"true"}},[e._v("×")])]),e._v(" "),e.noDrop?e._e():n("i",{ref:"openIndicator",staticClass:"open-indicator",attrs:{role:"presentation"}}),e._v(" "),e._t("spinner",[n("div",{directives:[{name:"show",rawName:"v-show",value:e.mutableLoading,expression:"mutableLoading"}],staticClass:"spinner"},[e._v("Loading...")])])],2)]),e._v(" "),n("transition",{attrs:{name:e.transition}},[e.dropdownOpen?n("ul",{ref:"dropdownMenu",staticClass:"dropdown-menu",style:{"max-height":e.maxHeight},attrs:{role:"listbox"},on:{mousedown:e.onMousedown}},[e._l(e.filteredOptions,function(t,r){return n("li",{key:r,class:{active:e.isOptionSelected(t),highlight:r===e.typeAheadPointer},attrs:{role:"option"},on:{mouseover:function(t){e.typeAheadPointer=r}}},[n("a",{on:{mousedown:function(n){n.preventDefault(),n.stopPropagation(),e.select(t)}}},[e._t("option",[e._v("\n "+e._s(e.getOptionLabel(t))+"\n ")],null,"object"==typeof t?t:(i={},i[e.label]=t,i))],2)]);var i}),e._v(" "),e.filteredOptions.length?e._e():n("li",{staticClass:"no-options"},[e._t("no-options",[e._v("Sorry, no matching options.")])],2)],2):e._e()])],1)},staticRenderFns:[]}},function(e,t,n){function r(e,t){for(var n=0;n<e.length;n++){var r=e[n],i=c[r.id];if(i){i.refs++;for(var o=0;o<i.parts.length;o++)i.parts[o](r.parts[o]);for(;o<r.parts.length;o++)i.parts.push(a(r.parts[o],t))}else{for(var s=[],o=0;o<r.parts.length;o++)s.push(a(r.parts[o],t));c[r.id]={id:r.id,refs:1,parts:s}}}}function i(e){for(var t=[],n={},r=0;r<e.length;r++){var i=e[r],o=i[0],a=i[1],s=i[2],c=i[3],u={css:a,media:s,sourceMap:c};n[o]?n[o].parts.push(u):t.push(n[o]={id:o,parts:[u]})}return t}function o(e){var t=document.createElement("style");return t.type="text/css",function(e,t){var n=f(),r=h[h.length-1];if("top"===e.insertAt)r?r.nextSibling?n.insertBefore(t,r.nextSibling):n.appendChild(t):n.insertBefore(t,n.firstChild),h.push(t);else{if("bottom"!==e.insertAt)throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");n.appendChild(t)}}(e,t),t}function a(e,t){var n,r,i;if(t.singleton){var a=d++;n=p||(p=o(t)),r=s.bind(null,n,a,!1),i=s.bind(null,n,a,!0)}else n=o(t),r=function(e,t){var n=t.css,r=t.media,i=t.sourceMap;if(r&&e.setAttribute("media",r),i&&(n+="\n/*# sourceURL="+i.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n))}}.bind(null,n),i=function(){!function(e){e.parentNode.removeChild(e);var t=h.indexOf(e);t>=0&&h.splice(t,1)}(n)};return r(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap)return;r(e=t)}else i()}}function s(e,t,n,r){var i=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=v(t,i);else{var o=document.createTextNode(i),a=e.childNodes;a[t]&&e.removeChild(a[t]),a.length?e.insertBefore(o,a[t]):e.appendChild(o)}}var c={},u=function(e){var t;return function(){return void 0===t&&(t=e.apply(this,arguments)),t}},l=u(function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())}),f=u(function(){return document.head||document.getElementsByTagName("head")[0]}),p=null,d=0,h=[];e.exports=function(e,t){void 0===(t=t||{}).singleton&&(t.singleton=l()),void 0===t.insertAt&&(t.insertAt="bottom");var n=i(e);return r(n,t),function(e){for(var o=[],a=0;a<n.length;a++){var s=n[a],u=c[s.id];u.refs--,o.push(u)}if(e){var l=i(e);r(l,t)}for(var a=0;a<o.length;a++){var u=o[a];if(0===u.refs){for(var f=0;f<u.parts.length;f++)u.parts[f]();delete c[u.id]}}}};var v=function(){var e=[];return function(t,n){return e[t]=n,e.filter(Boolean).join("\n")}}()},function(e,t,n){var r=n(83);"string"==typeof r&&(r=[[e.id,r,""]]),n(88)(r,{}),r.locals&&(e.exports=r.locals)}])},function(e,t){function n(e){return"function"==typeof e.value||(console.warn("[Vue-click-outside:] provided expression",e.expression,"is not a function."),!1)}function r(e){return void 0!==e.componentInstance&&e.componentInstance.$isServer}e.exports={bind:function(e,t,i){function o(t){if(i.context){var n=t.path||t.composedPath&&t.composedPath();n&&n.length>0&&n.unshift(t.target),e.contains(t.target)||function(e,t){if(!e||!t)return!1;for(var n=0,r=t.length;n<r;n++)try{if(e.contains(t[n]))return!0;if(t[n].contains(e))return!1}catch(e){return!1}return!1}(i.context.popupItem,n)||e.__vueClickOutside__.callback(t)}}n(t)&&(e.__vueClickOutside__={handler:o,callback:t.value},!r(i)&&document.addEventListener("click",o))},update:function(e,t){n(t)&&(e.__vueClickOutside__.callback=t.value)},unbind:function(e,t,n){!r(n)&&document.removeEventListener("click",e.__vueClickOutside__.handler),delete e.__vueClickOutside__}}},function(e,t,n){"use strict";var r=function(){var e=this.$createElement,t=this._self._c||e;return t("ul",this._l(this.menu,function(e,n){return t("popover-item",{key:n,attrs:{item:e}})}))};r._withStripped=!0;var i=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("li",[e.item.href?n("a",{attrs:{href:e.item.href?e.item.href:"#",target:e.item.target?e.item.target:"",rel:"noreferrer noopener"},on:{click:e.item.action}},[n("span",{class:e.item.icon}),e._v(" "),e.item.text?n("span",[e._v(e._s(e.item.text))]):e.item.longtext?n("p",[e._v(e._s(e.item.longtext))]):e._e()]):e.item.action?n("button",{on:{click:e.item.action}},[n("span",{class:e.item.icon}),e._v(" "),e.item.text?n("span",[e._v(e._s(e.item.text))]):e.item.longtext?n("p",[e._v(e._s(e.item.longtext))]):e._e()]):n("span",{staticClass:"menuitem"},[n("span",{class:e.item.icon}),e._v(" "),e.item.text?n("span",[e._v(e._s(e.item.text))]):e.item.longtext?n("p",[e._v(e._s(e.item.longtext))]):e._e()])])};i._withStripped=!0;var o={props:["item"]},a=n(0),s=Object(a.a)(o,i,[],!1,null,null,null);s.options.__file="src/components/popoverMenu/popoverItem.vue";var c={name:"popoverMenu",props:["menu"],components:{popoverItem:s.exports}},u=Object(a.a)(c,r,[],!1,null,null,null);u.options.__file="src/components/popoverMenu.vue";t.a=u.exports},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function o(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new o(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new o(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n(8),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(2))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i=1,o={},a=!1,s=e.document,c=Object.getPrototypeOf&&Object.getPrototypeOf(e);c=c&&c.setTimeout?c:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick(function(){l(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?function(){var t="setImmediate$"+Math.random()+"$",n=function(n){n.source===e&&"string"==typeof n.data&&0===n.data.indexOf(t)&&l(+n.data.slice(t.length))};e.addEventListener?e.addEventListener("message",n,!1):e.attachEvent("onmessage",n),r=function(n){e.postMessage(t+n,"*")}}():e.MessageChannel?function(){var e=new MessageChannel;e.port1.onmessage=function(e){l(e.data)},r=function(t){e.port2.postMessage(t)}}():s&&"onreadystatechange"in s.createElement("script")?function(){var e=s.documentElement;r=function(t){var n=s.createElement("script");n.onreadystatechange=function(){l(t),n.onreadystatechange=null,e.removeChild(n),n=null},e.appendChild(n)}}():r=function(e){setTimeout(l,0,e)},c.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var a={callback:e,args:t};return o[i]=a,r(i),i++},c.clearImmediate=u}function u(e){delete o[e]}function l(e){if(a)setTimeout(l,0,e);else{var t=o[e];if(t){a=!0;try{!function(e){var t=e.callback,r=e.args;switch(r.length){case 0:t();break;case 1:t(r[0]);break;case 2:t(r[0],r[1]);break;case 3:t(r[0],r[1],r[2]);break;default:t.apply(n,r)}}(t)}finally{u(e),a=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(2),n(9))},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var c,u=[],l=!1,f=-1;function p(){l&&c&&(l=!1,c.length?u=c.concat(u):f=-1,u.length&&d())}function d(){if(!l){var e=s(p);l=!0;for(var t=u.length;t;){for(c=u,u=[];++f<t;)c&&c[f].run();f=-1,t=u.length}c=null,l=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===a||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function h(e,t){this.fun=e,this.array=t}function v(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];u.push(new h(e,t)),1!==u.length||l||s(d)},h.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=v,i.addListener=v,i.once=v,i.off=v,i.removeListener=v,i.removeAllListeners=v,i.emit=v,i.prependListener=v,i.prependOnceListener=v,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){"use strict";n.r(t);var r=n(3),i=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"followupsection",attrs:{id:"updatenotification"}},[n("div",{staticClass:"update"},[e.isNewVersionAvailable?[e.versionIsEol?n("p",[n("span",{staticClass:"warning"},[n("span",{staticClass:"icon icon-error"}),e._v("\n\t\t\t\t\t"+e._s(e.t("updatenotification","The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible."))+"\n\t\t\t\t")])]):e._e(),e._v(" "),n("p",[n("span",{domProps:{innerHTML:e._s(e.newVersionAvailableString)}}),n("br"),e._v(" "),e.isListFetched?e._e():n("span",{staticClass:"icon icon-loading-small"}),e._v(" "),n("span",{domProps:{innerHTML:e._s(e.statusText)}})]),e._v(" "),e.missingAppUpdates.length?[n("h3",{on:{click:e.toggleHideMissingUpdates}},[e._v("\n\t\t\t\t\t"+e._s(e.t("updatenotification","Apps missing updates"))+"\n\t\t\t\t\t"),e.hideMissingUpdates?e._e():n("span",{staticClass:"icon icon-triangle-n"}),e._v(" "),e.hideMissingUpdates?n("span",{staticClass:"icon icon-triangle-s"}):e._e()]),e._v(" "),e.hideMissingUpdates?e._e():n("ul",{staticClass:"applist"},e._l(e.missingAppUpdates,function(t){return n("li",[n("a",{attrs:{href:"https://apps.nextcloud.com/apps/"+t.appId,title:e.t("settings","View in store")}},[e._v(e._s(t.appName)+" ↗")])])}))]:e._e(),e._v(" "),e.availableAppUpdates.length?[n("h3",{on:{click:e.toggleHideAvailableUpdates}},[e._v("\n\t\t\t\t\t"+e._s(e.t("updatenotification","Apps with available updates"))+"\n\t\t\t\t\t"),e.hideAvailableUpdates?e._e():n("span",{staticClass:"icon icon-triangle-n"}),e._v(" "),e.hideAvailableUpdates?n("span",{staticClass:"icon icon-triangle-s"}):e._e()]),e._v(" "),n("ul",{staticClass:"applist"},e._l(e.availableAppUpdates,function(t){return e.hideAvailableUpdates?e._e():n("li",[n("a",{attrs:{href:"https://apps.nextcloud.com/apps/"+t.appId,title:e.t("settings","View in store")}},[e._v(e._s(t.appName)+" ↗")])])}))]:e._e(),e._v(" "),e.updaterEnabled?n("a",{staticClass:"button",attrs:{href:"#"},on:{click:e.clickUpdaterButton}},[e._v(e._s(e.t("updatenotification","Open updater")))]):e._e(),e._v(" "),e.downloadLink?n("a",{staticClass:"button",class:{hidden:!e.updaterEnabled},attrs:{href:e.downloadLink}},[e._v(e._s(e.t("updatenotification","Download now")))]):e._e(),e._v(" "),e.whatsNew?n("div",{staticClass:"whatsNew"},[n("div",{staticClass:"toggleWhatsNew"},[n("span",{directives:[{name:"click-outside",rawName:"v-click-outside",value:e.hideMenu,expression:"hideMenu"}],on:{click:e.toggleMenu}},[e._v(e._s(e.t("updatenotification","What's new?")))]),e._v(" "),n("div",{staticClass:"popovermenu",class:{"menu-center":!0,open:e.openedWhatsNew}},[n("popover-menu",{attrs:{menu:e.whatsNew}})],1)])]):e._e()]:e.isUpdateChecked?[e._v("\n\t\t\t"+e._s(e.t("updatenotification","Your version is up to date."))+"\n\t\t\t"),n("span",{staticClass:"icon-info svg",attrs:{title:e.lastCheckedOnString}})]:[e._v(e._s(e.t("updatenotification","The update check is not yet finished. Please refresh the page.")))],e._v(" "),e.isDefaultUpdateServerURL?e._e():[n("br"),e._v(" "),n("em",[e._v(e._s(e.t("updatenotification","A non-default update server is in use to be checked for updates:"))+" "),n("code",[e._v(e._s(e.updateServerURL))])])]],2),e._v(" "),n("p",[n("label",{attrs:{for:"release-channel"}},[e._v(e._s(e.t("updatenotification","Update channel:")))]),e._v(" "),n("select",{directives:[{name:"model",rawName:"v-model",value:e.currentChannel,expression:"currentChannel"}],attrs:{id:"release-channel"},on:{change:[function(t){var n=Array.prototype.filter.call(t.target.options,function(e){return e.selected}).map(function(e){return"_value"in e?e._value:e.value});e.currentChannel=t.target.multiple?n:n[0]},e.changeReleaseChannel]}},e._l(e.channels,function(t){return n("option",{domProps:{value:t}},[e._v(e._s(t))])})),e._v(" "),n("span",{staticClass:"msg",attrs:{id:"channel_save_msg"}}),n("br"),e._v(" "),n("em",[e._v(e._s(e.t("updatenotification","You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel.")))]),n("br"),e._v(" "),n("em",[e._v(e._s(e.t("updatenotification","Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found.")))])]),e._v(" "),n("p",{staticClass:"channel-description"},[n("span",{domProps:{innerHTML:e._s(e.productionInfoString)}}),n("br"),e._v(" "),n("span",{domProps:{innerHTML:e._s(e.stableInfoString)}}),n("br"),e._v(" "),n("span",{domProps:{innerHTML:e._s(e.betaInfoString)}})]),e._v(" "),n("p",{attrs:{id:"oca_updatenotification_groups"}},[e._v("\n\t\t"+e._s(e.t("updatenotification","Notify members of the following groups about available updates:"))+"\n\t\t"),n("v-select",{attrs:{multiple:"",value:e.notifyGroups,options:e.availableGroups}}),n("br"),e._v(" "),"daily"===e.currentChannel||"git"===e.currentChannel?n("em",[e._v(e._s(e.t("updatenotification","Only notification for app updates are available.")))]):e._e(),e._v(" "),"daily"===e.currentChannel?n("em",[e._v(e._s(e.t("updatenotification","The selected update channel makes dedicated notifications for the server obsolete.")))]):e._e(),e._v(" "),"git"===e.currentChannel?n("em",[e._v(e._s(e.t("updatenotification","The selected update channel does not support updates of the server.")))]):e._e()],1)])};i._withStripped=!0;var o=n(1).a,a=n(0),s=Object(a.a)(o,i,[],!1,null,null,null);s.options.__file="src/components/root.vue";var c=s.exports;
/**
* @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>
*
diff --git a/apps/updatenotification/js/updatenotification.js.map b/apps/updatenotification/js/updatenotification.js.map
index 14d6f9e2af4..3bd72c96609 100644
--- a/apps/updatenotification/js/updatenotification.js.map
+++ b/apps/updatenotification/js/updatenotification.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///src/components/root.vue","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/vue/dist/vue.esm.js","webpack:///./node_modules/vue-select/dist/vue-select.js","webpack:///./node_modules/vue-click-outside/index.js","webpack:///./src/components/popoverMenu.vue?6abc","webpack:///./src/components/popoverMenu/popoverItem.vue?e129","webpack:///src/components/popoverMenu/popoverItem.vue","webpack:///./src/components/popoverMenu/popoverItem.vue?37ea","webpack:///./src/components/popoverMenu/popoverItem.vue","webpack:///./src/components/popoverMenu.vue?f184","webpack:///src/components/popoverMenu.vue","webpack:///./src/components/popoverMenu.vue","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/process/browser.js","webpack:///./src/components/root.vue?7b3c","webpack:///./src/components/root.vue?3eba","webpack:///./src/components/root.vue","webpack:///./src/init.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","options","_compiled","functional","_scopeId","context","this","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","concat","__webpack_exports__","components","vSelect","vue_select__WEBPACK_IMPORTED_MODULE_0___default","popoverMenu","_popoverMenu__WEBPACK_IMPORTED_MODULE_1__","directives","ClickOutside","vue_click_outside__WEBPACK_IMPORTED_MODULE_2___default","data","newVersionString","lastCheckedDate","isUpdateChecked","updaterEnabled","versionIsEol","downloadLink","isNewVersionAvailable","updateServerURL","changelogURL","whatsNewData","currentChannel","channels","notifyGroups","availableGroups","isDefaultUpdateServerURL","enableChangeWatcher","availableAppUpdates","missingAppUpdates","appStoreFailed","appStoreDisabled","isListFetched","hideMissingUpdates","hideAvailableUpdates","openedWhatsNew","_$el","_$releaseChannel","_$notifyGroups","watch","selectedOptions","selectedGroups","_","each","group","push","OCP","AppConfig","setValue","JSON","stringify","$","ajax","url","OC","linkToOCS","type","beforeSend","request","setRequestHeader","success","response","ocs","available","missing","error","xhr","responseJSON","appstore_disabled","computed","newVersionAvailableString","lastCheckedOnString","statusText","appstoreDisabled","appstoreFailed","length","version","productionInfoString","stableInfoString","betaInfoString","whatsNew","icon","longtext","href","text","target","action","methods","clickUpdaterButton","generateUrl","getRootPath","headers","X-Updater-Auth","method","body","remove","html","dom","filter","eval","textContent","innerHTML","removeAttr","attr","Notification","showTemporary","changeReleaseChannel","val","channel","msg","finishedAction","toggleHideMissingUpdates","toggleHideAvailableUpdates","toggleMenu","hideMenu","beforeMount","parse","lastChecked","changes","admin","regular","mounted","$el","find","on","$emit","dataType","results","groups","label","updated","tooltip","placement","g","Function","e","window","global","setImmediate","emptyObject","freeze","isUndef","v","undefined","isDef","isTrue","isPrimitive","isObject","obj","_toString","toString","isPlainObject","isRegExp","isValidArrayIndex","parseFloat","String","Math","floor","isFinite","toNumber","isNaN","makeMap","str","expectsLowerCase","map","list","split","toLowerCase","isBuiltInTag","isReservedAttribute","arr","item","index","indexOf","splice","hasOwn","cached","fn","cache","camelizeRE","camelize","replace","toUpperCase","capitalize","charAt","slice","hyphenateRE","hyphenate","ctx","boundFn","a","arguments","apply","_length","toArray","start","ret","Array","extend","to","_from","toObject","res","noop","b","no","identity","looseEqual","isObjectA","isObjectB","isArrayA","isArray","isArrayB","every","keysA","keys","keysB","looseIndexOf","once","called","SSR_ATTR","ASSET_TYPES","LIFECYCLE_HOOKS","config","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","_lifecycleHooks","isReserved","charCodeAt","def","writable","configurable","bailRE","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","navigator","userAgent","isIE","test","isIE9","isEdge","isIOS","nativeWatch","supportsPassive","opts","addEventListener","isServerRendering","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","_Set","hasSymbol","Reflect","ownKeys","Set","set","has","clear","warn","uid","Dep","id","subs","addSub","sub","removeSub","depend","addDep","notify","update","targetStack","pushTarget","_target","popTarget","pop","VNode","tag","children","elm","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","forEach","original","args","len","inserted","result","ob","__ob__","observeArray","dep","arrayKeys","getOwnPropertyNames","shouldObserve","toggleObserving","Observer","vmCount","protoAugment","copyAugment","walk","src","__proto__","observe","asRootData","isExtensible","_isVue","defineReactive","customSetter","shallow","getOwnPropertyDescriptor","setter","childOb","dependArray","newVal","max","del","items","strats","mergeData","from","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","mergeAssets","key$1","props","inject","provide","defaultStrat","mergeOptions","normalizeProps","normalized","normalizeInject","dirs","normalizeDirectives","extendsFrom","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","prop","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","default","_props","getType","getPropDefaultValue","prevShouldObserve","match","isSameType","expectedTypes","handleError","err","info","cur","$parent","hooks","errorCaptured","globalHandleError","logError","console","microTimerFunc","macroTimerFunc","callbacks","pending","flushCallbacks","copies","useMacroTask","MessageChannel","setTimeout","port","port2","port1","onmessage","postMessage","Promise","resolve","then","nextTick","cb","_resolve","seenObjects","traverse","_traverse","seen","isA","isFrozen","depId","normalizeEvent","passive","once$$1","capture","createFnInvoker","fns","invoker","arguments$1","updateListeners","oldOn","remove$$1","old","event","params","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","hash","altKey","preserve","normalizeChildren","normalizeArrayChildren","nestedIndex","lastIndex","last","isTextNode","shift","_isVList","isFalse","ensureCtor","comp","base","getFirstComponentChild","$once","$on","remove$1","$off","updateComponentListeners","listeners","oldListeners","resolveSlots","slots","attrs","slot","name$1","isWhitespace","resolveScopedSlots","activeInstance","isInInactiveTree","_inactive","activateChildComponent","direct","_directInactive","$children","callHook","handlers","j","_hasHookEvent","queue","activatedChildren","waiting","flushing","flushSchedulerQueue","watcher","sort","run","activatedQueue","updatedQueue","callActivatedHooks","_watcher","_isMounted","callUpdatedHooks","emit","uid$1","Watcher","expOrFn","isRenderWatcher","_watchers","deep","user","lazy","sync","active","dirty","deps","newDeps","depIds","newDepIds","expression","path","segments","parsePath","cleanupDeps","tmp","queueWatcher","oldValue","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","proxy","sourceKey","initState","propsOptions","_propKeys","loop","initProps","initMethods","_data","getData","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","handler","createWatcher","initWatch","shouldCache","createComputedGetter","$watch","resolveInject","provideKey","source","_provided","provideDefault","renderList","renderSlot","fallback","bindObject","nodes","scopedSlotFn","$scopedSlots","slotNodes","$slots","_rendered","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","domProps","$event","renderStatic","isInFor","_staticTrees","tree","markStatic","_renderProxy","markOnce","markStaticNode","bindObjectListeners","ours","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","FunctionalRenderContext","contextVm","_original","isCompiled","needNormalization","injections","scopedSlots","_c","createElement","cloneAndMarkFunctionalResult","clone","mergeProps","componentVNodeHooks","init","hydrating","parentElm","refElm","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","_parentElm","_refElm","inlineTemplate","createComponentInstanceForVnode","$mount","oldVnode","parentVnode","renderChildren","hasChildren","_renderChildren","_vnode","$attrs","$listeners","propKeys","_parentListeners","$forceUpdate","updateChildComponent","insert","queueActivatedComponent","destroy","deactivateChildComponent","$destroy","hooksToMerge","createComponent","baseCtor","_base","cid","factory","errorComp","resolved","loading","loadingComp","contexts","forceRender","reject","reason","component","delay","timeout","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","callback","transformModel","extractPropsFromVNodeData","renderContext","vnodes","createFunctionalComponent","nativeOn","abstract","installComponentHooks","SIMPLE_NORMALIZE","ALWAYS_NORMALIZE","normalizationType","alwaysNormalize","is","simpleNormalizeChildren","applyNS","force","style","class","registerDeepBindings","_createElement","uid$3","super","superOptions","modifiedOptions","modified","latest","extended","extendOptions","sealed","sealedOptions","dedupe","resolveModifiedOptions","Vue","_init","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","constructor","Comp","initProps$1","initComputed$1","mixin","use","getComponentName","matches","pattern","pruneCache","keepAliveInstance","cachedNode","pruneCacheEntry","current","cached$$1","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","_self","$refs","initLifecycle","_events","initEvents","parentData","initRender","initInjections","initProvide","el","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","cbs","i$1","eventsMixin","_update","prevEl","prevVnode","prevActiveInstance","__patch__","__vue__","lifecycleMixin","$nextTick","_render","ref","renderMixin","patternTypes","RegExp","builtInComponents","KeepAlive","include","exclude","Number","created","destroyed","this$1","parseInt","configDef","util","delete","plugin","installedPlugins","_installedPlugins","unshift","install","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","acceptValue","isEnumeratedAttr","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","parentNode","childNode","mergeClassData","staticClass","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","query","selected","document","querySelector","nodeOps","tagName","multiple","setAttribute","createElementNS","namespace","createTextNode","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","setStyleScope","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","dir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","callHook$1","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","join","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","removeAttribute","baseSetAttr","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","chr","index$1","expressionPos","expressionEndPos","klass","validDivisionCharRE","parseFilters","exp","prev","filters","inSingle","inDouble","inTemplateString","inRegex","curly","square","paren","lastFilterIndex","trim","pushFilter","wrapFilter","baseWarn","pluckModuleFunction","addProp","plain","addAttr","addRawAttr","attrsMap","attrsList","addDirective","arg","addHandler","important","events","right","middle","native","nativeEvents","newHandler","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","genComponentModel","number","valueExpression","assignment","genAssignmentCode","lastIndexOf","eof","isStringStart","next","parseString","parseBracket","parseModel","inBracket","stringQuote","target$1","RANGE_TOKEN","CHECKBOX_RADIO_TOKEN","add$1","_withTask","withMacroTask","onceHandler","remove$2","createOnceHandler","updateDOMListeners","change","normalizeEvents","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","checkVal","composing","notInFocus","activeElement","isNotInFocusAndDirty","_vModifiers","isDirtyWithModifiers","parseStyleText","cssText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","TRANSITION","ANIMATION","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","end","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","duration","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","patch","backend","removeNode","createElm","insertedVnodeQueue","nested","ownerArray","isReactivated","initComponent","innerNode","activate","reactivateComponent","setScope","createChildren","invokeCreateHooks","pendingInsert","isPatchable","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","childElm","createRmCb","findIdxInOld","oldCh","patchVnode","removeOnly","hydrate","newCh","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","updateChildren","postpatch","invokeInsertHook","initial","isRenderedModule","inVPre","pre","hasChildNodes","childrenMatch","firstChild","fullInvoke","isInitialPatch","isRealElement","hasAttribute","emptyNodeAt","oldElm","parentElm$1","patchable","i$2","createPatchFunction","vmodel","trigger","directive","binding","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","some","hasNoMatchingOption","actuallySetSelected","isMultiple","option","selectedIndex","createEvent","initEvent","dispatchEvent","locateNode","platformDirectives","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","rawChild","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","getBoundingClientRect","applyTranslation","oldPos","pos","dx","left","dy","top","moved","transform","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","prevChildren","rawChildren","transitionData","kept","removed","c$1","beforeUpdate","hasMove","_reflow","offsetHeight","propertyName","_hasMove","cloneNode","HTMLUnknownElement","HTMLElement","mountComponent","defaultTagRE","regexEscapeRE","buildRegex","delimiters","open","close","klass$1","staticKeys","transformNode","classBinding","genData","decoder","style$1","styleBinding","he","isUnaryTag","canBeLeftOpenTag","isNonPhrasingTag","attribute","ncname","qnameCapture","startTagOpen","startTagClose","endTag","doctype","comment","conditionalComment","IS_REGEX_CAPTURING_BROKEN","isPlainTextElement","reCache","decodingMap","&lt;","&gt;","&quot;","&amp;","&#10;","&#9;","encodedAttr","encodedAttrWithNewLines","isIgnoreNewlineTag","shouldIgnoreFirstNewline","decodeAttr","shouldDecodeNewlines","re","warn$2","transforms","preTransforms","postTransforms","platformIsPreTag","platformMustUseProp","platformGetTagNamespace","onRE","dirRE","forAliasRE","forIteratorRE","stripParensRE","argRE","bindRE","modifierRE","decodeHTMLCached","createASTElement","makeAttrsMap","template","isPreTag","root","currentParent","stack","preserveWhitespace","inPre","closeElement","element","lastTag","expectHTML","isUnaryTag$$1","canBeLeftOpenTag$$1","endTagLength","stackedTag","reStackedTag","rest$1","all","chars","parseEndTag","textEnd","commentEnd","shouldKeepComment","substring","advance","conditionalEnd","doctypeMatch","endTagMatch","curIndex","startTagMatch","parseStartTag","handleStartTag","rest","unarySlash","unary","shouldDecodeNewlinesForHref","lowerCasedTag","lowerCasedTagName","parseHTML","comments","ieNSBug","ieNSPrefix","guardIESVGBug","isForbiddenTag","forbidden","checkRootConstraints","processPre","processRawAttrs","processed","processFor","if","addIfCondition","block","else","elseif","processIf","processOnce","processElement","findPrevElement","processIfConditions","slotScope","slotTarget","lastNode","isTextTag","tagRE","tokenValue","tokens","rawTokens","exec","@binding","parseText","processKey","for","checkInFor","processRef","slotName","processSlot","processComponent","isProp","hasBindings","parseModifiers","camel","argMatch","processAttrs","inMatch","alias","iteratorMatch","iterator1","iterator2","parseFor","condition","ifConditions","cloneASTElement","modules$1","preTransformNode","typeBinding","ifCondition","ifConditionExtra","hasElse","elseIfCondition","branch0","branch1","branch2","isStaticKey","isPlatformReservedTag","baseOptions","_warn","code","genSelect","valueBinding","trueValueBinding","falseValueBinding","genCheckboxModel","genRadioModel","needCompositionGuard","genDefaultModel","reduce","genStaticKeys","genStaticKeysCached","optimize","markStatic$1","static","isDirectChildOfTemplateFor","l$1","markStaticRoots","staticInFor","staticRoot","fnExpRE","simplePathRE","esc","tab","space","up","down","keyNames","genGuard","modifierCode","stop","prevent","self","ctrl","alt","meta","genHandlers","genHandler","isMethodPath","isFunctionExpression","genModifierCode","keyModifier","genFilterCode","genKeyFilter","keyVal","keyCode","keyName","baseDirectives","wrapListeners","wrapData","cloak","CodegenState","dataGenFns","maybeComponent","onceId","generate","ast","state","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","altGen","altHelper","genFor","ifProcessed","genIf","genChildren","bind$$1","genSlot","componentName","genData$2","genComponent","altEmpty","genIfConditions","conditions","genTernaryExp","needRuntime","hasRuntime","gen","genDirectives","genProps","genScopedSlot","inlineRenderFns","genInlineTemplate","genForScopedSlot","checkSkip","altGenElement","altGenNode","el$1","needsNormalization","getNormalizationType","genNode","genComment","transformSpecialNewlines","genText","createFunction","errors","div","compileToFunctions","baseCompile","compile","finalOptions","tips","tip","compiled","fnGenErrors","createCompileToFunctionFn","createCompilerCreator","createCompiler","getShouldDecode","idToTemplate","mount","documentElement","outerHTML","container","getOuterHTML","loaded","VueSelect","__g","__e","f","TypeError","store","u","F","G","S","P","B","W","y","x","virtual","R","U","random","propertyIsEnumerable","ceil","valueOf","onSearch","mutableLoading","search","toggleLoading","typeAheadPointer","maybeAdjustScroll","pixelsToPointerTop","pixelsToPointerBottom","viewport","scrollTo","bottom","pointerHeight","dropdownMenu","scrollTop","filteredOptions","typeAheadUp","typeAheadDown","typeAheadSelect","select","taggable","clearSearchOnSelect","w","O","A","k","C","M","L","T","E","entries","values","contentWindow","write","getOwnPropertySymbols","disabled","clearable","maxHeight","searchable","closeOnSelect","getOptionLabel","findOptionByIndexValue","onChange","onTab","selectOnTab","tabindex","pushTags","filterable","filterBy","createOption","mutableOptions","resetOnOptionsChange","noDrop","inputId","mutableValue","maybePushTag","isOptionSelected","optionExists","onAfterSelect","deselect","clearSelection","blur","toggleDropdown","openIndicator","toggle","contains","focus","valueAsArray","optionObjectComparator","onEscape","onSearchBlur","mousedown","searching","clearSearchOnBlur","onSearchFocus","maybeDeleteValue","onMousedown","dropdownClasses","dropdownOpen","single","unsearchable","rtl","inputClasses","hidden","isValueEmpty","searchPlaceholder","showClearButton","pointer","pointerScroll","done","preventExtensions","KEY","NEED","fastKey","getWeak","onFreeze","getPrototypeOf","min","Arguments","V","N","D","I","z","H","QObject","findChild","J","iterator","K","Y","Q","Z","X","tt","et","nt","rt","ot","keyFor","useSetter","useSimple","esModule","preventDefault","aria-label","click","aria-hidden","autocomplete","readonly","role","aria-expanded","keydown","keyup","input","title","max-height","highlight","mouseover","stopPropagation","parts","media","sourceMap","insertAt","Error","singleton","sources","btoa","unescape","encodeURIComponent","styleSheet","head","getElementsByTagName","locals","validate","isServer","vNode","$isServer","elements","composedPath","popupItem","isPopup","__vueClickOutside__","_h","menu","_withStripped","popoverItemvue_type_template_id_4c6af9e6_render","_vm","rel","popoverMenu_popoverItemvue_type_script_lang_js_","componentNormalizer","__file","components_popoverMenuvue_type_script_lang_js_","popoverItem","popoverMenu_component","scope","Timeout","clearFn","_id","_clearFn","clearTimeout","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","clearImmediate","process","registerImmediate","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","importScripts","postMessageIsAsynchronous","oldOnMessage","canUsePostMessage","messagePrefix","onGlobalMessage","attachEvent","installPostMessageImplementation","installMessageChannelImplementation","script","onreadystatechange","installReadyStateChangeImplementation","task","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","array","browser","argv","versions","addListener","off","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","app","appId","appName","menu-center","$$selectedVal","components_rootvue_type_script_lang_js_","vue_esm","vars","count","L10N","translate","textSingular","textPlural","translatePlural"],"mappings":"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","file":"updatenotification.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 10);\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","<template>\n\t<div id=\"updatenotification\" class=\"followupsection\">\n\t\t<div class=\"update\">\n\t\t\t<template v-if=\"isNewVersionAvailable\">\n\t\t\t\t<p v-if=\"versionIsEol\">\n\t\t\t\t\t<span class=\"warning\">\n\t\t\t\t\t\t<span class=\"icon icon-error\"></span>\n\t\t\t\t\t\t{{ t('updatenotification', 'The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible.') }}\n\t\t\t\t\t</span>\n\t\t\t\t</p>\n\n\t\t\t\t<p>\n\t\t\t\t\t<span v-html=\"newVersionAvailableString\"></span><br>\n\t\t\t\t\t<span v-if=\"!isListFetched\" class=\"icon icon-loading-small\"></span>\n\t\t\t\t\t<span v-html=\"statusText\"></span>\n\t\t\t\t</p>\n\n\t\t\t\t<template v-if=\"missingAppUpdates.length\">\n\t\t\t\t\t<h3 @click=\"toggleHideMissingUpdates\">\n\t\t\t\t\t\t{{ t('updatenotification', 'Apps missing updates') }}\n\t\t\t\t\t\t<span v-if=\"!hideMissingUpdates\" class=\"icon icon-triangle-n\"></span>\n\t\t\t\t\t\t<span v-if=\"hideMissingUpdates\" class=\"icon icon-triangle-s\"></span>\n\t\t\t\t\t</h3>\n\t\t\t\t\t<ul class=\"applist\" v-if=\"!hideMissingUpdates\">\n\t\t\t\t\t\t<li v-for=\"app in missingAppUpdates\"><a :href=\"'https://apps.nextcloud.com/apps/' + app.appId\" :title=\"t('settings', 'View in store')\">{{app.appName}} ↗</a></li>\n\t\t\t\t\t</ul>\n\t\t\t\t</template>\n\n\t\t\t\t<template v-if=\"availableAppUpdates.length\">\n\t\t\t\t\t<h3 @click=\"toggleHideAvailableUpdates\">\n\t\t\t\t\t\t{{ t('updatenotification', 'Apps with available updates') }}\n\t\t\t\t\t\t<span v-if=\"!hideAvailableUpdates\" class=\"icon icon-triangle-n\"></span>\n\t\t\t\t\t\t<span v-if=\"hideAvailableUpdates\" class=\"icon icon-triangle-s\"></span>\n\t\t\t\t\t</h3>\n\t\t\t\t\t<ul class=\"applist\">\n\t\t\t\t\t\t<li v-for=\"app in availableAppUpdates\" v-if=\"!hideAvailableUpdates\"><a :href=\"'https://apps.nextcloud.com/apps/' + app.appId\" :title=\"t('settings', 'View in store')\">{{app.appName}} ↗</a></li>\n\t\t\t\t\t</ul>\n\t\t\t\t</template>\n\n\t\t\t\t<a v-if=\"updaterEnabled\" href=\"#\" class=\"button\" @click=\"clickUpdaterButton\">{{ t('updatenotification', 'Open updater') }}</a>\n\t\t\t\t<a v-if=\"downloadLink\" :href=\"downloadLink\" class=\"button\" :class=\"{ hidden: !updaterEnabled }\">{{ t('updatenotification', 'Download now') }}</a>\n\t\t\t\t<div class=\"whatsNew\" v-if=\"whatsNew\">\n\t\t\t\t\t<div class=\"toggleWhatsNew\">\n\t\t\t\t\t\t<span v-click-outside=\"hideMenu\" @click=\"toggleMenu\">{{ t('updatenotification', 'What\\'s new?') }}</span>\n\t\t\t\t\t\t<div class=\"popovermenu\" :class=\"{ 'menu-center': true, open: openedWhatsNew }\">\n\t\t\t\t\t\t\t<popover-menu :menu=\"whatsNew\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</template>\n\t\t\t<template v-else-if=\"!isUpdateChecked\">{{ t('updatenotification', 'The update check is not yet finished. Please refresh the page.') }}</template>\n\t\t\t<template v-else>\n\t\t\t\t{{ t('updatenotification', 'Your version is up to date.') }}\n\t\t\t\t<span class=\"icon-info svg\" :title=\"lastCheckedOnString\"></span>\n\t\t\t</template>\n\n\t\t\t<template v-if=\"!isDefaultUpdateServerURL\">\n\t\t\t\t<br />\n\t\t\t\t<em>{{ t('updatenotification', 'A non-default update server is in use to be checked for updates:') }} <code>{{updateServerURL}}</code></em>\n\t\t\t</template>\n\t\t</div>\n\n\t\t<p>\n\t\t\t<label for=\"release-channel\">{{ t('updatenotification', 'Update channel:') }}</label>\n\t\t\t<select id=\"release-channel\" v-model=\"currentChannel\" @change=\"changeReleaseChannel\">\n\t\t\t\t<option v-for=\"channel in channels\" :value=\"channel\">{{channel}}</option>\n\t\t\t</select>\n\t\t\t<span id=\"channel_save_msg\" class=\"msg\"></span><br />\n\t\t\t<em>{{ t('updatenotification', 'You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel.') }}</em><br />\n\t\t\t<em>{{ t('updatenotification', 'Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found.') }}</em>\n\t\t</p>\n\n\t\t<p class=\"channel-description\">\n\t\t\t<span v-html=\"productionInfoString\"></span><br>\n\t\t\t<span v-html=\"stableInfoString\"></span><br>\n\t\t\t<span v-html=\"betaInfoString\"></span>\n\t\t</p>\n\n\t\t<p id=\"oca_updatenotification_groups\">\n\t\t\t{{ t('updatenotification', 'Notify members of the following groups about available updates:') }}\n\t\t\t<v-select multiple :value=\"notifyGroups\" :options=\"availableGroups\"></v-select><br />\n\t\t\t<em v-if=\"currentChannel === 'daily' || currentChannel === 'git'\">{{ t('updatenotification', 'Only notification for app updates are available.') }}</em>\n\t\t\t<em v-if=\"currentChannel === 'daily'\">{{ t('updatenotification', 'The selected update channel makes dedicated notifications for the server obsolete.') }}</em>\n\t\t\t<em v-if=\"currentChannel === 'git'\">{{ t('updatenotification', 'The selected update channel does not support updates of the server.') }}</em>\n\t\t</p>\n\t</div>\n</template>\n\n<script>\n\timport vSelect from 'vue-select';\n\timport popoverMenu from './popoverMenu';\n\timport ClickOutside from 'vue-click-outside';\n\n\texport default {\n\t\tname: 'root',\n\t\tcomponents: {\n\t\t\tvSelect,\n\t\t\tpopoverMenu,\n\t\t},\n\t\tdirectives: {\n\t\t\tClickOutside\n\t\t},\n\t\tdata: function () {\n\t\t\treturn {\n\t\t\t\tnewVersionString: '',\n\t\t\t\tlastCheckedDate: '',\n\t\t\t\tisUpdateChecked: false,\n\t\t\t\tupdaterEnabled: true,\n\t\t\t\tversionIsEol: false,\n\t\t\t\tdownloadLink: '',\n\t\t\t\tisNewVersionAvailable: false,\n\t\t\t\tupdateServerURL: '',\n\t\t\t\tchangelogURL: '',\n\t\t\t\twhatsNewData: [],\n\t\t\t\tcurrentChannel: '',\n\t\t\t\tchannels: [],\n\t\t\t\tnotifyGroups: '',\n\t\t\t\tavailableGroups: [],\n\t\t\t\tisDefaultUpdateServerURL: true,\n\t\t\t\tenableChangeWatcher: false,\n\n\t\t\t\tavailableAppUpdates: [],\n\t\t\t\tmissingAppUpdates: [],\n\t\t\t\tappStoreFailed: false,\n\t\t\t\tappStoreDisabled: false,\n\t\t\t\tisListFetched: false,\n\t\t\t\thideMissingUpdates: false,\n\t\t\t\thideAvailableUpdates: true,\n\t\t\t\topenedWhatsNew: false,\n\t\t\t};\n\t\t},\n\n\t\t_$el: null,\n\t\t_$releaseChannel: null,\n\t\t_$notifyGroups: null,\n\n\t\twatch: {\n\t\t\tnotifyGroups: function(selectedOptions) {\n\t\t\t\tif (!this.enableChangeWatcher) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar selectedGroups = [];\n\t\t\t\t_.each(selectedOptions, function(group) {\n\t\t\t\t\tselectedGroups.push(group.value);\n\t\t\t\t});\n\n\t\t\t\tOCP.AppConfig.setValue('updatenotification', 'notify_groups', JSON.stringify(selectedGroups));\n\t\t\t},\n\t\t\tisNewVersionAvailable: function() {\n\t\t\t\tif (!this.isNewVersionAvailable) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: OC.linkToOCS('apps/updatenotification/api/v1/applist', 2) + this.newVersionString,\n\t\t\t\t\ttype: 'GET',\n\t\t\t\t\tbeforeSend: function (request) {\n\t\t\t\t\t\trequest.setRequestHeader('Accept', 'application/json');\n\t\t\t\t\t},\n\t\t\t\t\tsuccess: function(response) {\n\t\t\t\t\t\tthis.availableAppUpdates = response.ocs.data.available;\n\t\t\t\t\t\tthis.missingAppUpdates = response.ocs.data.missing;\n\t\t\t\t\t\tthis.isListFetched = true;\n\t\t\t\t\t\tthis.appStoreFailed = false;\n\t\t\t\t\t}.bind(this),\n\t\t\t\t\terror: function(xhr) {\n\t\t\t\t\t\tthis.availableAppUpdates = [];\n\t\t\t\t\t\tthis.missingAppUpdates = [];\n\t\t\t\t\t\tthis.appStoreDisabled = xhr.responseJSON.ocs.data.appstore_disabled;\n\t\t\t\t\t\tthis.isListFetched = true;\n\t\t\t\t\t\tthis.appStoreFailed = true;\n\t\t\t\t\t}.bind(this)\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\n\t\tcomputed: {\n\t\t\tnewVersionAvailableString: function() {\n\t\t\t\treturn t('updatenotification', 'A new version is available: <strong>{newVersionString}</strong>', {\n\t\t\t\t\tnewVersionString: this.newVersionString\n\t\t\t\t});\n\t\t\t},\n\n\t\t\tlastCheckedOnString: function() {\n\t\t\t\treturn t('updatenotification', 'Checked on {lastCheckedDate}', {\n\t\t\t\t\tlastCheckedDate: this.lastCheckedDate\n\t\t\t\t});\n\t\t\t},\n\n\t\t\tstatusText: function() {\n\t\t\t\tif (!this.isListFetched) {\n\t\t\t\t\treturn t('updatenotification', 'Checking apps for compatible updates');\n\t\t\t\t}\n\n\t\t\t\tif (this.appstoreDisabled) {\n\t\t\t\t\treturn t('updatenotification', 'Please make sure your config.php does not set <samp>appstoreenabled</samp> to false.');\n\t\t\t\t}\n\n\t\t\t\tif (this.appstoreFailed) {\n\t\t\t\t\treturn t('updatenotification', 'Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore.');\n\t\t\t\t}\n\n\t\t\t\treturn this.missingAppUpdates.length === 0 ? t('updatenotification', '<strong>All</strong> apps have an update for this version available', this) : n('updatenotification',\n\t\t\t\t\t'<strong>%n</strong> app has no update for this version available',\n\t\t\t\t\t'<strong>%n</strong> apps have no update for this version available',\n\t\t\t\t\tthis.missingAppUpdates.length, {\n\t\t\t\t\t\tversion: this.newVersionString\n\t\t\t\t\t});\n\t\t\t},\n\n\t\t\tproductionInfoString: function() {\n\t\t\t\treturn t('updatenotification', '<strong>production</strong> will always provide the latest patch level, but not update to the next major release immediately. That update usually happens with the second minor release (x.0.2).');\n\t\t\t},\n\n\t\t\tstableInfoString: function() {\n\t\t\t\treturn t('updatenotification', '<strong>stable</strong> is the most recent stable version. It is suited for regular use and will always update to the latest major version.');\n\t\t\t},\n\n\t\t\tbetaInfoString: function() {\n\t\t\t\treturn t('updatenotification', '<strong>beta</strong> is a pre-release version only for testing new features, not for production environments.');\n\t\t\t},\n\n\t\t\twhatsNew: function () {\n\t\t\t\tif(this.whatsNewData.length === 0) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tvar whatsNew = [];\n\t\t\t\tfor (var i in this.whatsNewData) {\n\t\t\t\t\twhatsNew[i] = { icon: 'icon-checkmark', longtext: this.whatsNewData[i] };\n\t\t\t\t}\n\t\t\t\tif(this.changelogURL) {\n\t\t\t\t\twhatsNew.push({\n\t\t\t\t\t\thref: this.changelogURL,\n\t\t\t\t\t\ttext: t('updatenotificaiton', 'View changelog'),\n\t\t\t\t\t\ticon: 'icon-link',\n\t\t\t\t\t\ttarget: '_blank',\n\t\t\t\t\t\taction: ''\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn whatsNew;\n\t\t\t}\n\t\t},\n\n\t\tmethods: {\n\t\t\t/**\n\t\t\t * Creates a new authentication token and loads the updater URL\n\t\t\t */\n\t\t\tclickUpdaterButton: function() {\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: OC.generateUrl('/apps/updatenotification/credentials')\n\t\t\t\t}).success(function(data) {\n\t\t\t\t\t$.ajax({\n\t\t\t\t\t\turl: OC.getRootPath()+'/updater/',\n\t\t\t\t\t\theaders: {\n\t\t\t\t\t\t\t'X-Updater-Auth': data\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\t\tsuccess: function(data){\n\t\t\t\t\t\t\tif(data !== 'false') {\n\t\t\t\t\t\t\t\tvar body = $('body');\n\t\t\t\t\t\t\t\t$('head').remove();\n\t\t\t\t\t\t\t\tbody.html(data);\n\n\t\t\t\t\t\t\t\t// Eval the script elements in the response\n\t\t\t\t\t\t\t\tvar dom = $(data);\n\t\t\t\t\t\t\t\tdom.filter('script').each(function() {\n\t\t\t\t\t\t\t\t\teval(this.text || this.textContent || this.innerHTML || '');\n\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\tbody.removeAttr('id');\n\t\t\t\t\t\t\t\tbody.attr('id', 'body-settings');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\terror: function() {\n\t\t\t\t\t\t\tOC.Notification.showTemporary(t('updatenotification', 'Could not start updater, please try the manual update'));\n\t\t\t\t\t\t\tthis.updaterEnabled = false;\n\t\t\t\t\t\t}.bind(this)\n\t\t\t\t\t});\n\t\t\t\t}.bind(this));\n\t\t\t},\n\t\t\tchangeReleaseChannel: function() {\n\t\t\t\tthis.currentChannel = this._$releaseChannel.val();\n\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: OC.generateUrl('/apps/updatenotification/channel'),\n\t\t\t\t\ttype: 'POST',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\t'channel': this.currentChannel\n\t\t\t\t\t},\n\t\t\t\t\tsuccess: function (data) {\n\t\t\t\t\t\tOC.msg.finishedAction('#channel_save_msg', data);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t},\n\t\t\ttoggleHideMissingUpdates: function() {\n\t\t\t\tthis.hideMissingUpdates = !this.hideMissingUpdates;\n\t\t\t},\n\t\t\ttoggleHideAvailableUpdates: function() {\n\t\t\t\tthis.hideAvailableUpdates = !this.hideAvailableUpdates;\n\t\t\t},\n\t\t\ttoggleMenu: function() {\n\t\t\t\tthis.openedWhatsNew = !this.openedWhatsNew;\n\t\t\t},\n\t\t\thideMenu: function() {\n\t\t\t\tthis.openedWhatsNew = false;\n\t\t\t},\n\t\t},\n\t\tbeforeMount: function() {\n\t\t\t// Parse server data\n\t\t\tvar data = JSON.parse($('#updatenotification').attr('data-json'));\n\n\t\t\tthis.newVersionString = data.newVersionString;\n\t\t\tthis.lastCheckedDate = data.lastChecked;\n\t\t\tthis.isUpdateChecked = data.isUpdateChecked;\n\t\t\tthis.updaterEnabled = data.updaterEnabled;\n\t\t\tthis.downloadLink = data.downloadLink;\n\t\t\tthis.isNewVersionAvailable = data.isNewVersionAvailable;\n\t\t\tthis.updateServerURL = data.updateServerURL;\n\t\t\tthis.currentChannel = data.currentChannel;\n\t\t\tthis.channels = data.channels;\n\t\t\tthis.notifyGroups = data.notifyGroups;\n\t\t\tthis.isDefaultUpdateServerURL = data.isDefaultUpdateServerURL;\n\t\t\tthis.versionIsEol = data.versionIsEol;\n\t\t\tif(data.changes && data.changes.changelogURL) {\n\t\t\t\tthis.changelogURL = data.changes.changelogURL;\n\t\t\t}\n\t\t\tif(data.changes && data.changes.whatsNew) {\n\t\t\t\tif(data.changes.whatsNew.admin) {\n\t\t\t\t\tthis.whatsNewData = this.whatsNewData.concat(data.changes.whatsNew.admin);\n\t\t\t\t}\n\t\t\t\tthis.whatsNewData = this.whatsNewData.concat(data.changes.whatsNew.regular);\n\t\t\t}\n\t\t},\n\t\tmounted: function () {\n\t\t\tthis._$el = $(this.$el);\n\t\t\tthis._$releaseChannel = this._$el.find('#release-channel');\n\t\t\tthis._$notifyGroups = this._$el.find('#oca_updatenotification_groups_list');\n\t\t\tthis._$notifyGroups.on('change', function () {\n\t\t\t\tthis.$emit('input');\n\t\t\t}.bind(this));\n\n\t\t\t$.ajax({\n\t\t\t\turl: OC.linkToOCS('cloud', 2)+ '/groups',\n\t\t\t\tdataType: 'json',\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\tvar results = [];\n\t\t\t\t\t$.each(data.ocs.data.groups, function(i, group) {\n\t\t\t\t\t\tresults.push({value: group, label: group});\n\t\t\t\t\t});\n\n\t\t\t\t\tthis.availableGroups = results;\n\t\t\t\t\tthis.enableChangeWatcher = true;\n\t\t\t\t}.bind(this)\n\t\t\t});\n\t\t},\n\n\t\tupdated: function () {\n\t\t\tthis._$el.find('.icon-info').tooltip({placement: 'right'});\n\t\t}\n\t}\n</script>\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || Function(\"return this\")() || (1, eval)(\"this\");\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/*!\n * Vue.js v2.5.17\n * (c) 2014-2018 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// these helpers produces better vm code in JS engines due to their\n// explicitness and function inlining\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value e.g. [object Object]\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if a attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it... e.g.\n * PhantomJS 1.x. Technically we don't need this anymore since native bind is\n * now more performant in most browsers, but removing it would be breaking for\n * code that was able to run in PhantomJS 1.x, so this must be kept for\n * backwards compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/)\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured'\n];\n\n/* */\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n})\n\n/* */\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src, keys) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n if (!getter && arguments.length === 2) {\n val = obj[key];\n }\n var setter = property && property.set;\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!/^[a-zA-Z][\\w-]*$/.test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'can only contain alphanumeric characters and the hyphen, ' +\n 'and must start with a letter.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false && isObject(value) && ('@binding' in value))\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', ')) +\n \", got \" + (toRawType(value)) + \".\",\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n logError(e, null, 'config.errorHandler');\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n/* globals MessageChannel */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using both microtasks and (macro) tasks.\n// In < 2.4 we used microtasks everywhere, but there are some scenarios where\n// microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690) or even between bubbling of the same\n// event (#6566). However, using (macro) tasks everywhere also has subtle problems\n// when state is changed right before repaint (e.g. #6813, out-in transitions).\n// Here we use microtask by default, but expose a way to force (macro) task when\n// needed (e.g. in event handlers attached by v-on).\nvar microTimerFunc;\nvar macroTimerFunc;\nvar useMacroTask = false;\n\n// Determine (macro) task defer implementation.\n// Technically setImmediate should be the ideal choice, but it's only available\n// in IE. The only polyfill that consistently queues the callback after all DOM\n// events triggered in the same loop is by using MessageChannel.\n/* istanbul ignore if */\nif (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n macroTimerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else if (typeof MessageChannel !== 'undefined' && (\n isNative(MessageChannel) ||\n // PhantomJS\n MessageChannel.toString() === '[object MessageChannelConstructor]'\n)) {\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = flushCallbacks;\n macroTimerFunc = function () {\n port.postMessage(1);\n };\n} else {\n /* istanbul ignore next */\n macroTimerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\n// Determine microtask defer implementation.\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n microTimerFunc = function () {\n p.then(flushCallbacks);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else {\n // fallback to macro\n microTimerFunc = macroTimerFunc;\n}\n\n/**\n * Wrap a function so that if any code inside triggers state change,\n * the changes are queued using a (macro) task instead of a microtask.\n */\nfunction withMacroTask (fn) {\n return fn._withTask || (fn._withTask = function () {\n useMacroTask = true;\n var res = fn.apply(null, arguments);\n useMacroTask = false;\n return res\n })\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n if (useMacroTask) {\n macroTimerFunc();\n } else {\n microTimerFunc();\n }\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n cloned[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, def, cur, old, event;\n for (name in on) {\n def = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n /* istanbul ignore if */\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor,\n context\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (isDef(factory.contexts)) {\n // already pending\n factory.contexts.push(context);\n } else {\n var contexts = factory.contexts = [context];\n var sync = true;\n\n var forceRender = function () {\n for (var i = 0, l = contexts.length; i < l; i++) {\n contexts[i].$forceUpdate();\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender();\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender();\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (typeof res.then === 'function') {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isDef(res.component) && typeof res.component.then === 'function') {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n setTimeout(function () {\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender();\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n setTimeout(function () {\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn, once) {\n if (once) {\n target.$once(event, fn);\n } else {\n target.$on(event, fn);\n }\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$off(event[i], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n if (fn) {\n // specific handler\n var cb;\n var i$1 = cbs.length;\n while (i$1--) {\n cb = cbs[i$1];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i$1, 1);\n break\n }\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n for (var i = 0, l = cbs.length; i < l; i++) {\n try {\n cbs[i].apply(vm, args);\n } catch (e) {\n handleError(e, vm, (\"event handler for \\\"\" + event + \"\\\"\"));\n }\n }\n }\n return vm\n };\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n var slots = {};\n if (!children) {\n return slots\n }\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res\n) {\n res = res || {};\n for (var i = 0; i < fns.length; i++) {\n if (Array.isArray(fns[i])) {\n resolveScopedSlots(fns[i], res);\n } else {\n res[fns[i].key] = fns[i].fn;\n }\n }\n return res\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n if (vm._isMounted) {\n callHook(vm, 'beforeUpdate');\n }\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(\n vm.$el, vnode, hydrating, false /* removeOnly */,\n vm.$options._parentElm,\n vm.$options._refElm\n );\n // no need for the ref nodes after initial patch\n // this prevents keeping a detached DOM tree in memory (#5851)\n vm.$options._parentElm = vm.$options._refElm = null;\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n activeInstance = prevActiveInstance;\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, null, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren\n var hasChildren = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n parentVnode.data.scopedSlots || // has new scoped slots\n vm.$scopedSlots !== emptyObject // has old scoped slots\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (hasChildren) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n try {\n handlers[i].call(vm);\n } catch (e) {\n handleError(e, vm, (hook + \" hook\"));\n }\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\nvar uid$1 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$1; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = function () {};\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n var dep = this$1.deps[i];\n if (!this$1.newDepIds.has(dep.id)) {\n dep.removeSub(this$1);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n var this$1 = this;\n\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].removeSub(this$1);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive(props, key, value, function () {\n if (vm.$parent && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : userDef;\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : userDef.get\n : noop;\n sharedPropertyDefinition.set = userDef.set\n ? userDef.set\n : noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (methods[key] == null) {\n warn(\n \"Method \\\"\" + key + \"\\\" has an undefined value in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = methods[key] == null ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function (newData) {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n cb.call(vm, watcher.value);\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject).filter(function (key) {\n /* istanbul ignore next */\n return Object.getOwnPropertyDescriptor(inject, key).enumerable\n })\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n if (isDef(ret)) {\n (ret)._isVList = true;\n }\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n var slotNodes = this.$slots[name];\n // warn duplicate slot usage\n if (slotNodes) {\n if (process.env.NODE_ENV !== 'production' && slotNodes._rendered) {\n warn(\n \"Duplicate presence of slot \\\"\" + name + \"\\\" found in the same render tree \" +\n \"- this will likely cause render errors.\",\n this\n );\n }\n slotNodes._rendered = true;\n }\n nodes = slotNodes || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n if (!(key in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () { return resolveSlots(children, parent); };\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = data.scopedSlots || emptyObject;\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n\n\n\n// Register the component hook to weex native render engine.\n// The hook will be triggered by native, not javascript.\n\n\n// Updates the state of the component to weex native render engine.\n\n/* */\n\n// https://github.com/Hanks10100/weex-native-directive/tree/master/component\n\n// listening on native callback\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (\n vnode,\n hydrating,\n parentElm,\n refElm\n ) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance,\n parentElm,\n refElm\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor, context);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n // Weex specific: invoke recycle-list optimized @render function for\n // extracting cell-slot template.\n // https://github.com/Hanks10100/weex-native-directive/tree/master/component\n /* istanbul ignore if */\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent, // activeInstance in lifecycle state\n parentElm,\n refElm\n) {\n var options = {\n _isComponent: true,\n parent: parent,\n _parentVnode: vnode,\n _parentElm: parentElm || null,\n _refElm: refElm || null\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n hooks[key] = componentVNodeHooks[key];\n }\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input';(data.props || (data.props = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n if (isDef(on[event])) {\n on[event] = [data.model.callback].concat(on[event]);\n } else {\n on[event] = data.model.callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if (isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n // reset _rendered flag on slots for duplicate slot check\n if (process.env.NODE_ENV !== 'production') {\n for (var key in vm.$slots) {\n // $flow-disable-line\n vm.$slots[key]._rendered = false;\n }\n }\n\n if (_parentVnode) {\n vm.$scopedSlots = _parentVnode.data.scopedSlots || emptyObject;\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n if (vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n opts._parentElm = options._parentElm;\n opts._refElm = options._refElm;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var extended = Ctor.extendOptions;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = dedupe(latest[key], extended[key], sealed[key]);\n }\n }\n return modified\n}\n\nfunction dedupe (latest, extended, sealed) {\n // compare latest and sealed to ensure lifecycle hooks won't be duplicated\n // between merges\n if (Array.isArray(latest)) {\n var res = [];\n sealed = Array.isArray(sealed) ? sealed : [sealed];\n extended = Array.isArray(extended) ? extended : [extended];\n for (var i = 0; i < latest.length; i++) {\n // push original options and not sealed options to exclude duplicated options\n if (extended.indexOf(latest[i]) >= 0 || sealed.indexOf(latest[i]) < 0) {\n res.push(latest[i]);\n }\n }\n return res\n } else {\n return latest\n }\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n var this$1 = this;\n\n for (var key in this$1.cache) {\n pruneCacheEntry(this$1.cache, key, this$1.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n}\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n}\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.5.17';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\n\nvar nodeOps = Object.freeze({\n\tcreateElement: createElement$1,\n\tcreateElementNS: createElementNS,\n\tcreateTextNode: createTextNode,\n\tcreateComment: createComment,\n\tinsertBefore: insertBefore,\n\tremoveChild: removeChild,\n\tappendChild: appendChild,\n\tparentNode: parentNode,\n\tnextSibling: nextSibling,\n\ttagName: tagName,\n\tsetTextContent: setTextContent,\n\tsetStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n}\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove () {\n if (--remove.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove.listeners = listeners;\n return remove\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */, parentElm, refElm);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (ref$$1.parentNode === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) {\n if (oldVnode === vnode) {\n return\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly, parentElm, refElm) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue, parentElm, refElm);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm$1 = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm$1,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm$1)) {\n removeVnodes(parentElm$1, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n}\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n]\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true');\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n}\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n}\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + (args !== ')' ? ',' + args : args))\n }\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n el.plain = false;\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n el.plain = false;\n}\n\n// add a raw attr (use this in preTransforms)\nfunction addRawAttr (el, name, value) {\n el.attrsMap[name] = value;\n el.attrsList.push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n el.plain = false;\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn\n) {\n modifiers = modifiers || emptyObject;\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.'\n );\n }\n\n // check capture modifier\n if (modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n /* istanbul ignore if */\n if (modifiers.passive) {\n delete modifiers.passive;\n name = '&' + name; // mark the event as passive\n }\n\n // normalize click.right and click.middle since they don't actually fire\n // this is technically browser-specific, but at least for now browsers are\n // the only target envs that have right/middle clicks.\n if (name === 'click') {\n if (modifiers.right) {\n name = 'contextmenu';\n delete modifiers.right;\n } else if (modifiers.middle) {\n name = 'mouseup';\n }\n }\n\n var events;\n if (modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n\n var newHandler = {\n value: value.trim()\n };\n if (modifiers !== emptyObject) {\n newHandler.modifiers = modifiers;\n }\n\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n\n el.plain = false;\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: (\"\\\"\" + value + \"\\\"\"),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n\n\nfunction parseModel (val) {\n // Fix https://github.com/vuejs/vue/pull/7730\n // allow v-model=\"obj.val \" (trailing whitespace)\n val = val.trim();\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\"\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.'\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + (genAssignmentCode(value, '$$a.concat([$$v])')) + \")}\" +\n \"else{$$i>-1&&(\" + (genAssignmentCode(value, '$$a.slice(0,$$i).concat($$a.slice($$i+1))')) + \")}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n\n // warn if v-bind:value conflicts with v-model\n // except for inputs with v-bind:type\n if (process.env.NODE_ENV !== 'production') {\n var value$1 = el.attrsMap['v-bind:value'] || el.attrsMap[':value'];\n var typeBinding = el.attrsMap['v-bind:type'] || el.attrsMap[':type'];\n if (value$1 && !typeBinding) {\n var binding = el.attrsMap['v-bind:value'] ? 'v-bind:value' : ':value';\n warn$1(\n binding + \"=\\\"\" + value$1 + \"\\\" conflicts with v-model on the same element \" +\n 'because the latter already expands to a value binding internally'\n );\n }\n }\n\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler (handler, event, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\nfunction add$1 (\n event,\n handler,\n once$$1,\n capture,\n passive\n) {\n handler = withMacroTask(handler);\n if (once$$1) { handler = createOnceHandler(handler, event, capture); }\n target$1.addEventListener(\n event,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n event,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n event,\n handler._withTask || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n}\n\n/* */\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (isUndef(props[key])) {\n elm[key] = '';\n }\n }\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else {\n elm[key] = cur;\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.lazy) {\n // inputs with lazy should only be updated when not in focus\n return false\n }\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n}\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(name, val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n}\n\n/* */\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def) {\n if (!def) {\n return\n }\n /* istanbul ignore else */\n if (typeof def === 'object') {\n var res = {};\n if (def.css !== false) {\n extend(res, autoCssTransition(def.name || 'v'));\n }\n extend(res, def);\n return res\n } else if (typeof def === 'string') {\n return autoCssTransition(def)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n var transitionDelays = styles[transitionProp + 'Delay'].split(', ');\n var transitionDurations = styles[transitionProp + 'Duration'].split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = styles[animationProp + 'Delay'].split(', ');\n var animationDurations = styles[animationProp + 'Duration'].split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\nfunction toMs (s) {\n return Number(s.slice(0, -1)) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n transitionNode = transitionNode.parent;\n context = transitionNode.context;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {}\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n]\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n}\n\nvar platformDirectives = {\n model: directive,\n show: show\n}\n\n/* */\n\n// Provides transition support for a single element/component.\n// supports transition mode (out-in / in-out)\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(function (c) { return c.tag || isAsyncPlaceholder(c); });\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(function (d) { return d.name === 'show'; })) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n}\n\n/* */\n\n// Provides transition support for list items.\n// supports move transitions using the FLIP technique.\n\n// Because the vdom's children update algorithm is \"unstable\" - i.e.\n// it doesn't guarantee the relative positioning of removed elements,\n// we force transition-group to update its children into two passes:\n// in the first pass, we remove all nodes that need to be removed,\n// triggering their leaving transition; in the second pass, we insert/move\n// into the final desired state. This way in the second pass removed\n// nodes will remain where they should be.\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n beforeUpdate: function beforeUpdate () {\n // force removing pass\n this.__patch__(\n this._vnode,\n this.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this._vnode = this.kept;\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n}\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n}\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n isChrome\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\n\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var rawTokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index, tokenValue;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n rawTokens.push(tokenValue = text.slice(lastIndex, index));\n tokens.push(JSON.stringify(tokenValue));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n rawTokens.push({ '@binding': exp });\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n rawTokens.push(tokenValue = text.slice(lastIndex));\n tokens.push(JSON.stringify(tokenValue));\n }\n return {\n expression: tokens.join('+'),\n tokens: rawTokens\n }\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var res = parseText(staticClass, options.delimiters);\n if (res) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.'\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n}\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(staticStyle, options.delimiters);\n if (res) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.'\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n}\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n}\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n/*!\n * HTML Parser By John Resig (ejohn.org)\n * Modified by Juriy \"kangax\" Zaytsev\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\n// could use https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-QName\n// but for Vue templates we can enforce a simple charset\nvar ncname = '[a-zA-Z_][\\\\w\\\\-\\\\.]*';\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\n// #7298: escape - to avoid being pased as HTML comment when inlined in page\nvar comment = /^<!\\--/;\nvar conditionalComment = /^<!\\[/;\n\nvar IS_REGEX_CAPTURING_BROKEN = false;\n'x'.replace(/x(.)?/g, function (m, g) {\n IS_REGEX_CAPTURING_BROKEN = g === '';\n});\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n',\n '&#9;': '\\t'\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#10|#9);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd));\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(lastTag, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!\\--([\\s\\S]*?)-->/g, '$1') // #7298\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"));\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n var shouldDecodeNewlines = tagName === 'a' && args[1] === 'href'\n ? options.shouldDecodeNewlinesForHref\n : options.shouldDecodeNewlines;\n attrs[i] = {\n name: args[1],\n value: decodeAttr(value, shouldDecodeNewlines)\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\")\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /([^]*?)\\s+(?:in|of)\\s+([^]*)/;\nvar forIteratorRE = /,([^,\\}\\]]*)(?:,([^,\\}\\]]*))?$/;\nvar stripParensRE = /^\\(|\\)$/g;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^v-bind:/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(he.decode);\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\n\n\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg) {\n if (!warned) {\n warned = true;\n warn$2(msg);\n }\n }\n\n function closeElement (element) {\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n // apply post-transforms\n for (var i = 0; i < postTransforms.length; i++) {\n postTransforms[i](element, options);\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,\n shouldKeepComment: options.comments,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n // element-scope stuff\n processElement(element, options);\n }\n\n function checkRootConstraints (el) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.'\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.'\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n closeElement(element);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ' && !inPre) {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n closeElement(element);\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.'\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\")\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? isTextTag(currentParent) ? text : decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var res;\n if (!inVPre && text !== ' ' && (res = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: res.expression,\n tokens: res.tokens,\n text: text\n });\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n children.push({\n type: 3,\n text: text\n });\n }\n }\n },\n comment: function comment (text) {\n currentParent.children.push({\n type: 3,\n text: text,\n isComment: true\n });\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.attrsList.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production' && el.tag === 'template') {\n warn$2(\"<template> cannot be keyed. Place the key on real elements instead.\");\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var res = parseFor(exp);\n if (res) {\n extend(el, res);\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n (\"Invalid v-for expression: \" + exp)\n );\n }\n }\n}\n\n\n\nfunction parseFor (exp) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) { return }\n var res = {};\n res.for = inMatch[2].trim();\n var alias = inMatch[1].trim().replace(stripParensRE, '');\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n res.alias = alias.replace(forIteratorRE, '');\n res.iterator1 = iteratorMatch[1].trim();\n if (iteratorMatch[2]) {\n res.iterator2 = iteratorMatch[2].trim();\n }\n } else {\n res.alias = alias;\n }\n return res\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\"\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\"\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\nfunction processSlot (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\"\n );\n }\n } else {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && el.attrsMap['v-for']) {\n warn$2(\n \"Ambiguous combined usage of slot-scope and v-for on <\" + (el.tag) + \"> \" +\n \"(v-for takes higher priority). Use a wrapper <template> for the \" +\n \"scoped slot to make it clearer.\",\n true\n );\n }\n el.slotScope = slotScope;\n }\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (el.tag !== 'template' && !el.slotScope) {\n addAttr(el, 'slot', slotTarget);\n }\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, isProp;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name);\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isProp = false;\n if (modifiers) {\n if (modifiers.prop) {\n isProp = true;\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n genAssignmentCode(value, \"$event\")\n );\n }\n }\n if (isProp || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value);\n } else {\n addAttr(el, name, value);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n addHandler(el, name, value, modifiers, false, warn$2);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n }\n addDirective(el, name, rawName, value, arg, modifiers);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(value, delimiters);\n if (res) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.'\n );\n }\n }\n addAttr(el, name, JSON.stringify(value));\n // #6887 firefox doesn't update muted state if set via attribute\n // even immediately after element creation\n if (!el.component &&\n name === 'muted' &&\n platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, 'true');\n }\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\"\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\n/**\n * Expand input[v-model] with dyanmic type bindings into v-if-else chains\n * Turn this:\n * <input v-model=\"data[type]\" :type=\"type\">\n * into this:\n * <input v-if=\"type === 'checkbox'\" type=\"checkbox\" v-model=\"data[type]\">\n * <input v-else-if=\"type === 'radio'\" type=\"radio\" v-model=\"data[type]\">\n * <input v-else :type=\"type\" v-model=\"data[type]\">\n */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (!map['v-model']) {\n return\n }\n\n var typeBinding;\n if (map[':type'] || map['v-bind:type']) {\n typeBinding = getBindingAttr(el, 'type');\n }\n if (!map.type && !typeBinding && map['v-bind']) {\n typeBinding = \"(\" + (map['v-bind']) + \").type\";\n }\n\n if (typeBinding) {\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n var hasElse = getAndRemoveAttr(el, 'v-else', true) != null;\n var elseIfCondition = getAndRemoveAttr(el, 'v-else-if', true);\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n\n if (hasElse) {\n branch0.else = true;\n } else if (elseIfCondition) {\n branch0.elseif = elseIfCondition;\n }\n\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nvar model$2 = {\n preTransformNode: preTransformNode\n}\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$2\n]\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n}\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^([\\w$_]+|\\([^)]*?\\))\\s*=>|^function\\s*\\(/;\nvar simplePathRE = /^[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['[^']*?']|\\[\"[^\"]*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*$/;\n\n// KeyboardEvent.keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// KeyboardEvent.key aliases\nvar keyNames = {\n esc: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: ' ',\n // #7806: IE11 uses key names without `Arrow` prefix for arrow keys.\n up: ['Up', 'ArrowUp'],\n left: ['Left', 'ArrowLeft'],\n right: ['Right', 'ArrowRight'],\n down: ['Down', 'ArrowDown'],\n 'delete': ['Backspace', 'Delete']\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative,\n warn\n) {\n var res = isNative ? 'nativeOn:{' : 'on:{';\n for (var name in events) {\n res += \"\\\"\" + name + \"\\\":\" + (genHandler(name, events[name])) + \",\";\n }\n return res.slice(0, -1) + '}'\n}\n\nfunction genHandler (\n name,\n handler\n) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(name, handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n\n if (!handler.modifiers) {\n if (isMethodPath || isFunctionExpression) {\n return handler.value\n }\n /* istanbul ignore if */\n return (\"function($event){\" + (handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? (\"return \" + (handler.value) + \"($event)\")\n : isFunctionExpression\n ? (\"return (\" + (handler.value) + \")($event)\")\n : handler.value;\n /* istanbul ignore if */\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\"if(!('button' in $event)&&\" + (keys.map(genFilterCode).join('&&')) + \")return null;\")\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var keyCode = keyCodes[key];\n var keyName = keyNames[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(keyCode)) + \",\" +\n \"$event.key,\" +\n \"\" + (JSON.stringify(keyName)) +\n \")\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (process.env.NODE_ENV !== 'production' && dir.modifiers) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n}\n\n/* */\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data = el.plain ? undefined : genData$2(el, state);\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n process.env.NODE_ENV !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \"\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (process.env.NODE_ENV !== 'production' &&\n state.maybeComponent(el) &&\n el.tag !== 'slot' &&\n el.tag !== 'template' &&\n !el.key\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:{\" + (genProps(el.attrs)) + \"},\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:{\" + (genProps(el.props)) + \"},\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false, state.warn)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true, state.warn)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\\\"\" + (dir.arg) + \"\\\"\") : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (process.env.NODE_ENV !== 'production' && (\n el.children.length !== 1 || ast.type !== 1\n )) {\n state.warn('Inline-template components must have exactly one child element.');\n }\n if (ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n slots,\n state\n) {\n return (\"scopedSlots:_u([\" + (Object.keys(slots).map(function (key) {\n return genScopedSlot(key, slots[key], state)\n }).join(',')) + \"])\")\n}\n\nfunction genScopedSlot (\n key,\n el,\n state\n) {\n if (el.for && !el.forProcessed) {\n return genForScopedSlot(key, el, state)\n }\n var fn = \"function(\" + (String(el.slotScope)) + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if\n ? ((el.if) + \"?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n return (\"{key:\" + key + \",fn:\" + fn + \"}\")\n}\n\nfunction genForScopedSlot (\n key,\n el,\n state\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n el.forProcessed = true; // avoid recursion\n return \"_l((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + (genScopedSlot(key, el, state)) +\n '})'\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n return (altGenElement || genElement)(el$1, state)\n }\n var normalizationType = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType ? (\",\" + normalizationType) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs && (\"{\" + (el.attrs.map(function (a) { return ((camelize(a.name)) + \":\" + (a.value)); }).join(',')) + \"}\");\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var res = '';\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n /* istanbul ignore if */\n {\n res += \"\\\"\" + (prop.name) + \"\\\":\" + (transformSpecialNewlines(prop.value)) + \",\";\n }\n }\n return res.slice(0, -1)\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast) {\n var errors = [];\n if (ast) {\n checkNode(ast, errors);\n }\n return errors\n}\n\nfunction checkNode (node, errors) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), errors);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], errors);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, errors);\n }\n}\n\nfunction checkEvent (exp, text, errors) {\n var stipped = exp.replace(stripStringRE, '');\n var keywordMatch = stipped.match(unaryOperatorsRE);\n if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {\n errors.push(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim())\n );\n }\n checkExpression(exp, text, errors);\n}\n\nfunction checkFor (node, text, errors) {\n checkExpression(node.for || '', text, errors);\n checkIdentifier(node.alias, 'v-for alias', text, errors);\n checkIdentifier(node.iterator1, 'v-for iterator', text, errors);\n checkIdentifier(node.iterator2, 'v-for iterator', text, errors);\n}\n\nfunction checkIdentifier (\n ident,\n type,\n text,\n errors\n) {\n if (typeof ident === 'string') {\n try {\n new Function((\"var \" + ident + \"=_\"));\n } catch (e) {\n errors.push((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())));\n }\n }\n}\n\nfunction checkExpression (exp, text, errors) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n errors.push(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim())\n );\n } else {\n errors.push(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\"\n );\n }\n }\n}\n\n/* */\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (process.env.NODE_ENV !== 'production') {\n if (compiled.errors && compiled.errors.length) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n if (compiled.tips && compiled.tips.length) {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n finalOptions.warn = function (msg, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives || null),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n var compiled = baseCompile(template, finalOptions);\n if (process.env.NODE_ENV !== 'production') {\n errors.push.apply(errors, detectErrors(compiled.ast));\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n if (options.optimize !== false) {\n optimize(ast, options);\n }\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nvar div;\nfunction getShouldDecode (href) {\n div = div || document.createElement('div');\n div.innerHTML = href ? \"<a href=\\\"\\n\\\"/>\" : \"<div a=\\\"\\n\\\"/>\";\n return div.innerHTML.indexOf('&#10;') > 0\n}\n\n// #3663: IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? getShouldDecode(false) : false;\n// #6828: chrome encodes content in a[href]\nvar shouldDecodeNewlinesForHref = inBrowser ? getShouldDecode(true) : false;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue.prototype.$mount;\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !template) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n shouldDecodeNewlines: shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: shouldDecodeNewlinesForHref,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue.compile = compileToFunctions;\n\nexport default Vue;\n","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.VueSelect=e():t.VueSelect=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p=\"/\",e(0)}([function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0}),e.mixins=e.VueSelect=void 0;var o=n(85),i=r(o),s=n(42),a=r(s);e.default=i.default,e.VueSelect=i.default,e.mixins=a.default},function(t,e){var n=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=n)},function(t,e){var n=t.exports={version:\"2.5.3\"};\"number\"==typeof __e&&(__e=n)},function(t,e,n){t.exports=!n(9)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(11),o=n(33),i=n(25),s=Object.defineProperty;e.f=n(3)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return s(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw TypeError(\"Accessors not supported!\");return\"value\"in n&&(t[e]=n.value),t}},function(t,e,n){var r=n(5),o=n(14);t.exports=n(3)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){var r=n(61),o=n(16);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(23)(\"wks\"),o=n(15),i=n(1).Symbol,s=\"function\"==typeof i,a=t.exports=function(t){return r[t]||(r[t]=s&&i[t]||(s?i:o)(\"Symbol.\"+t))};a.store=r},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},function(t,e,n){var r=n(10);t.exports=function(t){if(!r(t))throw TypeError(t+\" is not an object!\");return t}},function(t,e,n){var r=n(1),o=n(2),i=n(58),s=n(6),a=\"prototype\",u=function(t,e,n){var l,c,f,p=t&u.F,d=t&u.G,h=t&u.S,b=t&u.P,v=t&u.B,g=t&u.W,y=d?o:o[e]||(o[e]={}),m=y[a],x=d?r:h?r[e]:(r[e]||{})[a];d&&(n=e);for(l in n)c=!p&&x&&void 0!==x[l],c&&l in y||(f=c?x[l]:n[l],y[l]=d&&\"function\"!=typeof x[l]?n[l]:v&&c?i(f,r):g&&x[l]==f?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e[a]=t[a],e}(f):b&&\"function\"==typeof f?i(Function.call,f):f,b&&((y.virtual||(y.virtual={}))[l]=f,t&u.R&&m&&!m[l]&&s(m,l,f)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},function(t,e,n){var r=n(38),o=n(17);t.exports=Object.keys||function(t){return r(t,o)}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++n+r).toString(36))}},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},function(t,e){t.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(t,e){t.exports={}},function(t,e){t.exports=!0},function(t,e){e.f={}.propertyIsEnumerable},function(t,e,n){var r=n(5).f,o=n(4),i=n(8)(\"toStringTag\");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e,n){var r=n(23)(\"keys\"),o=n(15);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,e,n){var r=n(1),o=\"__core-js_shared__\",i=r[o]||(r[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},function(t,e,n){var r=n(10);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&\"function\"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if(\"function\"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&\"function\"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError(\"Can't convert object to primitive value\")}},function(t,e,n){var r=n(1),o=n(2),i=n(19),s=n(27),a=n(5).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});\"_\"==t.charAt(0)||t in e||a(e,t,{value:s.f(t)})}},function(t,e,n){e.f=n(8)},function(t,e){\"use strict\";t.exports={props:{loading:{type:Boolean,default:!1},onSearch:{type:Function,default:function(t,e){}}},data:function(){return{mutableLoading:!1}},watch:{search:function(){this.search.length>0&&(this.onSearch(this.search,this.toggleLoading),this.$emit(\"search\",this.search,this.toggleLoading))},loading:function(t){this.mutableLoading=t}},methods:{toggleLoading:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null==t?this.mutableLoading=!this.mutableLoading:this.mutableLoading=t}}}},function(t,e){\"use strict\";t.exports={watch:{typeAheadPointer:function(){this.maybeAdjustScroll()}},methods:{maybeAdjustScroll:function(){var t=this.pixelsToPointerTop(),e=this.pixelsToPointerBottom();return t<=this.viewport().top?this.scrollTo(t):e>=this.viewport().bottom?this.scrollTo(this.viewport().top+this.pointerHeight()):void 0},pixelsToPointerTop:function t(){var t=0;if(this.$refs.dropdownMenu)for(var e=0;e<this.typeAheadPointer;e++)t+=this.$refs.dropdownMenu.children[e].offsetHeight;return t},pixelsToPointerBottom:function(){return this.pixelsToPointerTop()+this.pointerHeight()},pointerHeight:function(){var t=!!this.$refs.dropdownMenu&&this.$refs.dropdownMenu.children[this.typeAheadPointer];return t?t.offsetHeight:0},viewport:function(){return{top:this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop:0,bottom:this.$refs.dropdownMenu?this.$refs.dropdownMenu.offsetHeight+this.$refs.dropdownMenu.scrollTop:0}},scrollTo:function(t){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop=t:null}}}},function(t,e){\"use strict\";t.exports={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){this.typeAheadPointer=0}},methods:{typeAheadUp:function(){this.typeAheadPointer>0&&(this.typeAheadPointer--,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadDown:function(){this.typeAheadPointer<this.filteredOptions.length-1&&(this.typeAheadPointer++,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadSelect:function(){this.filteredOptions[this.typeAheadPointer]?this.select(this.filteredOptions[this.typeAheadPointer]):this.taggable&&this.search.length&&this.select(this.search),this.clearSearchOnSelect&&(this.search=\"\")}}}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){var r=n(10),o=n(1).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,e,n){t.exports=!n(3)&&!n(9)(function(){return 7!=Object.defineProperty(n(32)(\"div\"),\"a\",{get:function(){return 7}}).a})},function(t,e,n){\"use strict\";var r=n(19),o=n(12),i=n(39),s=n(6),a=n(4),u=n(18),l=n(63),c=n(21),f=n(69),p=n(8)(\"iterator\"),d=!([].keys&&\"next\"in[].keys()),h=\"@@iterator\",b=\"keys\",v=\"values\",g=function(){return this};t.exports=function(t,e,n,y,m,x,w){l(n,e,y);var S,O,_,j=function(t){if(!d&&t in A)return A[t];switch(t){case b:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},k=e+\" Iterator\",P=m==v,C=!1,A=t.prototype,M=A[p]||A[h]||m&&A[m],L=!d&&M||j(m),T=m?P?j(\"entries\"):L:void 0,E=\"Array\"==e?A.entries||M:M;if(E&&(_=f(E.call(new t)),_!==Object.prototype&&_.next&&(c(_,k,!0),r||a(_,p)||s(_,p,g))),P&&M&&M.name!==v&&(C=!0,L=function(){return M.call(this)}),r&&!w||!d&&!C&&A[p]||s(A,p,L),u[e]=L,u[k]=g,m)if(S={values:P?L:j(v),keys:x?L:j(b),entries:T},w)for(O in S)O in A||i(A,O,S[O]);else o(o.P+o.F*(d||C),e,S);return S}},function(t,e,n){var r=n(11),o=n(66),i=n(17),s=n(22)(\"IE_PROTO\"),a=function(){},u=\"prototype\",l=function(){var t,e=n(32)(\"iframe\"),r=i.length,o=\"<\",s=\">\";for(e.style.display=\"none\",n(60).appendChild(e),e.src=\"javascript:\",t=e.contentWindow.document,t.open(),t.write(o+\"script\"+s+\"document.F=Object\"+o+\"/script\"+s),t.close(),l=t.F;r--;)delete l[u][i[r]];return l()};t.exports=Object.create||function(t,e){var n;return null!==t?(a[u]=r(t),n=new a,a[u]=null,n[s]=t):n=l(),void 0===e?n:o(n,e)}},function(t,e,n){var r=n(38),o=n(17).concat(\"length\",\"prototype\");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e,n){var r=n(4),o=n(7),i=n(57)(!1),s=n(22)(\"IE_PROTO\");t.exports=function(t,e){var n,a=o(t),u=0,l=[];for(n in a)n!=s&&r(a,n)&&l.push(n);for(;e.length>u;)r(a,n=e[u++])&&(~i(l,n)||l.push(n));return l}},function(t,e,n){t.exports=n(6)},function(t,e,n){var r=n(16);t.exports=function(t){return Object(r(t))}},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(45),i=r(o),s=n(48),a=r(s),u=n(43),l=r(u),c=n(49),f=r(c),p=n(29),d=r(p),h=n(30),b=r(h),v=n(28),g=r(v);e.default={mixins:[d.default,b.default,g.default],props:{value:{default:null},options:{type:Array,default:function(){return[]}},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},maxHeight:{type:String,default:\"400px\"},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:\"\"},transition:{type:String,default:\"fade\"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:\"label\"},index:{type:String,default:null},getOptionLabel:{type:Function,default:function(t){return this.index&&(t=this.findOptionByIndexValue(t)),\"object\"===(\"undefined\"==typeof t?\"undefined\":(0,f.default)(t))?t.hasOwnProperty(this.label)?t[this.label]:console.warn('[vue-select warn]: Label key \"option.'+this.label+'\" does not'+(\" exist in options object \"+(0,l.default)(t)+\".\\n\")+\"http://sagalbot.github.io/vue-select/#ex-labels\"):t}},onChange:{type:Function,default:function(t){this.$emit(\"input\",t)}},onTab:{type:Function,default:function(){this.selectOnTab&&this.typeAheadSelect()}},taggable:{type:Boolean,default:!1},tabindex:{type:Number,default:null},pushTags:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},filterBy:{type:Function,default:function(t,e,n){return(e||\"\").toLowerCase().indexOf(n.toLowerCase())>-1}},filter:{type:Function,default:function(t,e){var n=this;return t.filter(function(t){var r=n.getOptionLabel(t);return\"number\"==typeof r&&(r=r.toString()),n.filterBy(t,r,e)})}},createOption:{type:Function,default:function(t){return\"object\"===(0,f.default)(this.mutableOptions[0])&&(t=(0,a.default)({},this.label,t)),this.$emit(\"option:created\",t),t}},resetOnOptionsChange:{type:Boolean,default:!1},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:\"auto\"},selectOnTab:{type:Boolean,default:!1}},data:function(){return{search:\"\",open:!1,mutableValue:null,mutableOptions:[]}},watch:{value:function(t){this.mutableValue=t},mutableValue:function(t,e){this.multiple?this.onChange?this.onChange(t):null:this.onChange&&t!==e?this.onChange(t):null},options:function(t){this.mutableOptions=t},mutableOptions:function(){!this.taggable&&this.resetOnOptionsChange&&(this.mutableValue=this.multiple?[]:null)},multiple:function(t){this.mutableValue=t?[]:null}},created:function(){this.mutableValue=this.value,this.mutableOptions=this.options.slice(0),this.mutableLoading=this.loading,this.$on(\"option:created\",this.maybePushTag)},methods:{select:function(t){if(!this.isOptionSelected(t)){if(this.taggable&&!this.optionExists(t)&&(t=this.createOption(t)),this.index){if(!t.hasOwnProperty(this.index))return console.warn('[vue-select warn]: Index key \"option.'+this.index+'\" does not'+(\" exist in options object \"+(0,l.default)(t)+\".\"));t=t[this.index]}this.multiple&&!this.mutableValue?this.mutableValue=[t]:this.multiple?this.mutableValue.push(t):this.mutableValue=t}this.onAfterSelect(t)},deselect:function(t){var e=this;if(this.multiple){var n=-1;this.mutableValue.forEach(function(r){(r===t||e.index&&r===t[e.index]||\"object\"===(\"undefined\"==typeof r?\"undefined\":(0,f.default)(r))&&r[e.label]===t[e.label])&&(n=r)});var r=this.mutableValue.indexOf(n);this.mutableValue.splice(r,1)}else this.mutableValue=null},clearSelection:function(){this.mutableValue=this.multiple?[]:null},onAfterSelect:function(t){this.closeOnSelect&&(this.open=!this.open,this.$refs.search.blur()),this.clearSearchOnSelect&&(this.search=\"\")},toggleDropdown:function(t){(t.target===this.$refs.openIndicator||t.target===this.$refs.search||t.target===this.$refs.toggle||t.target.classList.contains(\"selected-tag\")||t.target===this.$el)&&(this.open?this.$refs.search.blur():this.disabled||(this.open=!0,this.$refs.search.focus()))},isOptionSelected:function(t){var e=this,n=!1;return this.valueAsArray.forEach(function(r){\"object\"===(\"undefined\"==typeof r?\"undefined\":(0,f.default)(r))?n=e.optionObjectComparator(r,t):r!==t&&r!==t[e.index]||(n=!0)}),n},optionObjectComparator:function(t,e){return!(!this.index||t!==e[this.index])||(t[this.label]===e[this.label]||t[this.label]===e||!(!this.index||t[this.index]!==e[this.index]))},findOptionByIndexValue:function(t){var e=this;return this.options.forEach(function(n){(0,l.default)(n[e.index])===(0,l.default)(t)&&(t=n)}),t},onEscape:function(){this.search.length?this.search=\"\":this.$refs.search.blur()},onSearchBlur:function(){this.mousedown&&!this.searching?this.mousedown=!1:(this.clearSearchOnBlur&&(this.search=\"\"),this.open=!1,this.$emit(\"search:blur\"))},onSearchFocus:function(){this.open=!0,this.$emit(\"search:focus\")},maybeDeleteValue:function(){if(!this.$refs.search.value.length&&this.mutableValue)return this.multiple?this.mutableValue.pop():this.mutableValue=null},optionExists:function(t){var e=this,n=!1;return this.mutableOptions.forEach(function(r){\"object\"===(\"undefined\"==typeof r?\"undefined\":(0,f.default)(r))&&r[e.label]===t?n=!0:r===t&&(n=!0)}),n},maybePushTag:function(t){this.pushTags&&this.mutableOptions.push(t)},onMousedown:function(){this.mousedown=!0}},computed:{dropdownClasses:function(){return{open:this.dropdownOpen,single:!this.multiple,searching:this.searching,searchable:this.searchable,unsearchable:!this.searchable,loading:this.mutableLoading,rtl:\"rtl\"===this.dir,disabled:this.disabled}},inputClasses:function(){return{hidden:!this.isValueEmpty&&!this.dropdownOpen}},clearSearchOnBlur:function(){return this.clearSearchOnSelect&&!this.multiple},searching:function(){return!!this.search},dropdownOpen:function(){return!this.noDrop&&(this.open&&!this.mutableLoading)},searchPlaceholder:function(){if(this.isValueEmpty&&this.placeholder)return this.placeholder},filteredOptions:function(){if(!this.filterable&&!this.taggable)return this.mutableOptions.slice();var t=this.search.length?this.filter(this.mutableOptions,this.search,this):this.mutableOptions;return this.taggable&&this.search.length&&!this.optionExists(this.search)&&t.unshift(this.search),t},isValueEmpty:function(){return!this.mutableValue||(\"object\"===(0,f.default)(this.mutableValue)?!(0,i.default)(this.mutableValue).length:!this.valueAsArray.length)},valueAsArray:function(){return this.multiple&&this.mutableValue?this.mutableValue:this.mutableValue?[].concat(this.mutableValue):[]},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&null!=this.mutableValue}}}},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(28),i=r(o),s=n(30),a=r(s),u=n(29),l=r(u);e.default={ajax:i.default,pointer:a.default,pointerScroll:l.default}},function(t,e,n){t.exports={default:n(50),__esModule:!0}},function(t,e,n){t.exports={default:n(51),__esModule:!0}},function(t,e,n){t.exports={default:n(52),__esModule:!0}},function(t,e,n){t.exports={default:n(53),__esModule:!0}},function(t,e,n){t.exports={default:n(54),__esModule:!0}},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var o=n(44),i=r(o);e.default=function(t,e,n){return e in t?(0,i.default)(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var o=n(47),i=r(o),s=n(46),a=r(s),u=\"function\"==typeof a.default&&\"symbol\"==typeof i.default?function(t){return typeof t}:function(t){return t&&\"function\"==typeof a.default&&t.constructor===a.default&&t!==a.default.prototype?\"symbol\":typeof t};e.default=\"function\"==typeof a.default&&\"symbol\"===u(i.default)?function(t){return\"undefined\"==typeof t?\"undefined\":u(t)}:function(t){return t&&\"function\"==typeof a.default&&t.constructor===a.default&&t!==a.default.prototype?\"symbol\":\"undefined\"==typeof t?\"undefined\":u(t)}},function(t,e,n){var r=n(2),o=r.JSON||(r.JSON={stringify:JSON.stringify});t.exports=function(t){return o.stringify.apply(o,arguments)}},function(t,e,n){n(75);var r=n(2).Object;t.exports=function(t,e,n){return r.defineProperty(t,e,n)}},function(t,e,n){n(76),t.exports=n(2).Object.keys},function(t,e,n){n(79),n(77),n(80),n(81),t.exports=n(2).Symbol},function(t,e,n){n(78),n(82),t.exports=n(27).f(\"iterator\")},function(t,e){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},function(t,e){t.exports=function(){}},function(t,e,n){var r=n(7),o=n(73),i=n(72);t.exports=function(t){return function(e,n,s){var a,u=r(e),l=o(u.length),c=i(s,l);if(t&&n!=n){for(;l>c;)if(a=u[c++],a!=a)return!0}else for(;l>c;c++)if((t||c in u)&&u[c]===n)return t||c||0;return!t&&-1}}},function(t,e,n){var r=n(55);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){var r=n(13),o=n(37),i=n(20);t.exports=function(t){var e=r(t),n=o.f;if(n)for(var s,a=n(t),u=i.f,l=0;a.length>l;)u.call(t,s=a[l++])&&e.push(s);return e}},function(t,e,n){var r=n(1).document;t.exports=r&&r.documentElement},function(t,e,n){var r=n(31);t.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==r(t)?t.split(\"\"):Object(t)}},function(t,e,n){var r=n(31);t.exports=Array.isArray||function(t){return\"Array\"==r(t)}},function(t,e,n){\"use strict\";var r=n(35),o=n(14),i=n(21),s={};n(6)(s,n(8)(\"iterator\"),function(){return this}),t.exports=function(t,e,n){t.prototype=r(s,{next:o(1,n)}),i(t,e+\" Iterator\")}},function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){var r=n(15)(\"meta\"),o=n(10),i=n(4),s=n(5).f,a=0,u=Object.isExtensible||function(){return!0},l=!n(9)(function(){return u(Object.preventExtensions({}))}),c=function(t){s(t,r,{value:{i:\"O\"+ ++a,w:{}}})},f=function(t,e){if(!o(t))return\"symbol\"==typeof t?t:(\"string\"==typeof t?\"S\":\"P\")+t;if(!i(t,r)){if(!u(t))return\"F\";if(!e)return\"E\";c(t)}return t[r].i},p=function(t,e){if(!i(t,r)){if(!u(t))return!0;if(!e)return!1;c(t)}return t[r].w},d=function(t){return l&&h.NEED&&u(t)&&!i(t,r)&&c(t),t},h=t.exports={KEY:r,NEED:!1,fastKey:f,getWeak:p,onFreeze:d}},function(t,e,n){var r=n(5),o=n(11),i=n(13);t.exports=n(3)?Object.defineProperties:function(t,e){o(t);for(var n,s=i(e),a=s.length,u=0;a>u;)r.f(t,n=s[u++],e[n]);return t}},function(t,e,n){var r=n(20),o=n(14),i=n(7),s=n(25),a=n(4),u=n(33),l=Object.getOwnPropertyDescriptor;e.f=n(3)?l:function(t,e){if(t=i(t),e=s(e,!0),u)try{return l(t,e)}catch(t){}if(a(t,e))return o(!r.f.call(t,e),t[e])}},function(t,e,n){var r=n(7),o=n(36).f,i={}.toString,s=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(t){try{return o(t)}catch(t){return s.slice()}};t.exports.f=function(t){return s&&\"[object Window]\"==i.call(t)?a(t):o(r(t))}},function(t,e,n){var r=n(4),o=n(40),i=n(22)(\"IE_PROTO\"),s=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),r(t,i)?t[i]:\"function\"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?s:null}},function(t,e,n){var r=n(12),o=n(2),i=n(9);t.exports=function(t,e){var n=(o.Object||{})[t]||Object[t],s={};s[t]=e(n),r(r.S+r.F*i(function(){n(1)}),\"Object\",s)}},function(t,e,n){var r=n(24),o=n(16);t.exports=function(t){return function(e,n){var i,s,a=String(o(e)),u=r(n),l=a.length;return u<0||u>=l?t?\"\":void 0:(i=a.charCodeAt(u),i<55296||i>56319||u+1===l||(s=a.charCodeAt(u+1))<56320||s>57343?t?a.charAt(u):i:t?a.slice(u,u+2):(i-55296<<10)+(s-56320)+65536)}}},function(t,e,n){var r=n(24),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)}},function(t,e,n){var r=n(24),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){\"use strict\";var r=n(56),o=n(64),i=n(18),s=n(7);t.exports=n(34)(Array,\"Array\",function(t,e){this._t=s(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):\"keys\"==e?o(0,n):\"values\"==e?o(0,t[n]):o(0,[n,t[n]])},\"values\"),i.Arguments=i.Array,r(\"keys\"),r(\"values\"),r(\"entries\")},function(t,e,n){var r=n(12);r(r.S+r.F*!n(3),\"Object\",{defineProperty:n(5).f})},function(t,e,n){var r=n(40),o=n(13);n(70)(\"keys\",function(){return function(t){return o(r(t))}})},function(t,e){},function(t,e,n){\"use strict\";var r=n(71)(!0);n(34)(String,\"String\",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=r(e,n),this._i+=t.length,{value:t,done:!1})})},function(t,e,n){\"use strict\";var r=n(1),o=n(4),i=n(3),s=n(12),a=n(39),u=n(65).KEY,l=n(9),c=n(23),f=n(21),p=n(15),d=n(8),h=n(27),b=n(26),v=n(59),g=n(62),y=n(11),m=n(10),x=n(7),w=n(25),S=n(14),O=n(35),_=n(68),j=n(67),k=n(5),P=n(13),C=j.f,A=k.f,M=_.f,L=r.Symbol,T=r.JSON,E=T&&T.stringify,V=\"prototype\",B=d(\"_hidden\"),F=d(\"toPrimitive\"),N={}.propertyIsEnumerable,$=c(\"symbol-registry\"),D=c(\"symbols\"),I=c(\"op-symbols\"),R=Object[V],z=\"function\"==typeof L,H=r.QObject,G=!H||!H[V]||!H[V].findChild,J=i&&l(function(){return 7!=O(A({},\"a\",{get:function(){return A(this,\"a\",{value:7}).a}})).a})?function(t,e,n){var r=C(R,e);r&&delete R[e],A(t,e,n),r&&t!==R&&A(R,e,r)}:A,U=function(t){var e=D[t]=O(L[V]);return e._k=t,e},W=z&&\"symbol\"==typeof L.iterator?function(t){return\"symbol\"==typeof t}:function(t){return t instanceof L},K=function(t,e,n){return t===R&&K(I,e,n),y(t),e=w(e,!0),y(n),o(D,e)?(n.enumerable?(o(t,B)&&t[B][e]&&(t[B][e]=!1),n=O(n,{enumerable:S(0,!1)})):(o(t,B)||A(t,B,S(1,{})),t[B][e]=!0),J(t,e,n)):A(t,e,n)},Y=function(t,e){y(t);for(var n,r=v(e=x(e)),o=0,i=r.length;i>o;)K(t,n=r[o++],e[n]);return t},q=function(t,e){return void 0===e?O(t):Y(O(t),e)},Q=function(t){var e=N.call(this,t=w(t,!0));return!(this===R&&o(D,t)&&!o(I,t))&&(!(e||!o(this,t)||!o(D,t)||o(this,B)&&this[B][t])||e)},Z=function(t,e){if(t=x(t),e=w(e,!0),t!==R||!o(D,e)||o(I,e)){var n=C(t,e);return!n||!o(D,e)||o(t,B)&&t[B][e]||(n.enumerable=!0),n}},X=function(t){for(var e,n=M(x(t)),r=[],i=0;n.length>i;)o(D,e=n[i++])||e==B||e==u||r.push(e);return r},tt=function(t){for(var e,n=t===R,r=M(n?I:x(t)),i=[],s=0;r.length>s;)!o(D,e=r[s++])||n&&!o(R,e)||i.push(D[e]);return i};z||(L=function(){if(this instanceof L)throw TypeError(\"Symbol is not a constructor!\");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===R&&e.call(I,n),o(this,B)&&o(this[B],t)&&(this[B][t]=!1),J(this,t,S(1,n))};return i&&G&&J(R,t,{configurable:!0,set:e}),U(t)},a(L[V],\"toString\",function(){return this._k}),j.f=Z,k.f=K,n(36).f=_.f=X,n(20).f=Q,n(37).f=tt,i&&!n(19)&&a(R,\"propertyIsEnumerable\",Q,!0),h.f=function(t){return U(d(t))}),s(s.G+s.W+s.F*!z,{Symbol:L});for(var et=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),nt=0;et.length>nt;)d(et[nt++]);for(var rt=P(d.store),ot=0;rt.length>ot;)b(rt[ot++]);s(s.S+s.F*!z,\"Symbol\",{for:function(t){return o($,t+=\"\")?$[t]:$[t]=L(t)},keyFor:function(t){if(!W(t))throw TypeError(t+\" is not a symbol!\");for(var e in $)if($[e]===t)return e},useSetter:function(){G=!0},useSimple:function(){G=!1}}),s(s.S+s.F*!z,\"Object\",{create:q,defineProperty:K,defineProperties:Y,getOwnPropertyDescriptor:Z,getOwnPropertyNames:X,getOwnPropertySymbols:tt}),T&&s(s.S+s.F*(!z||l(function(){var t=L();return\"[null]\"!=E([t])||\"{}\"!=E({a:t})||\"{}\"!=E(Object(t))})),\"JSON\",{stringify:function(t){for(var e,n,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(n=e=r[1],(m(e)||void 0!==t)&&!W(t))return g(e)||(e=function(t,e){if(\"function\"==typeof n&&(e=n.call(this,t,e)),!W(e))return e}),r[1]=e,E.apply(T,r)}}),L[V][F]||n(6)(L[V],F,L[V].valueOf),f(L,\"Symbol\"),f(Math,\"Math\",!0),f(r.JSON,\"JSON\",!0)},function(t,e,n){n(26)(\"asyncIterator\")},function(t,e,n){n(26)(\"observable\")},function(t,e,n){n(74);for(var r=n(1),o=n(6),i=n(18),s=n(8)(\"toStringTag\"),a=\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList\".split(\",\"),u=0;u<a.length;u++){var l=a[u],c=r[l],f=c&&c.prototype;f&&!f[s]&&o(f,s,l),i[l]=i.Array}},function(t,e,n){e=t.exports=n(84)(),e.push([t.id,'.v-select{position:relative;font-family:inherit}.v-select,.v-select *{box-sizing:border-box}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .dropdown-toggle .clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .selected-tag .close{margin-left:0;margin-right:2px}.v-select[dir=rtl] .dropdown-menu{text-align:right}.v-select .open-indicator{display:flex;align-items:center;cursor:pointer;pointer-events:all;opacity:1;width:12px}.v-select .open-indicator,.v-select .open-indicator:before{transition:all .15s cubic-bezier(1,-.115,.975,.855);transition-timing-function:cubic-bezier(1,-.115,.975,.855)}.v-select .open-indicator:before{border-color:rgba(60,60,60,.5);border-style:solid;border-width:3px 3px 0 0;content:\"\";display:inline-block;height:10px;width:10px;vertical-align:text-top;transform:rotate(133deg);box-sizing:inherit}.v-select.open .open-indicator:before{transform:rotate(315deg)}.v-select.loading .open-indicator{opacity:0}.v-select .dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;padding:0 0 4px;background:none;border:1px solid rgba(60,60,60,.26);border-radius:4px;white-space:normal}.v-select .vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px}.v-select .vs__actions{display:flex;align-items:stretch;padding:0 6px 0 3px}.v-select .dropdown-toggle .clear{font-size:23px;font-weight:700;line-height:1;color:rgba(60,60,60,.5);padding:0;border:0;background-color:transparent;cursor:pointer;margin-right:6px}.v-select.searchable .dropdown-toggle{cursor:text}.v-select.unsearchable .dropdown-toggle{cursor:pointer}.v-select.open .dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.v-select .dropdown-menu{display:block;position:absolute;top:100%;left:0;z-index:1000;min-width:160px;padding:5px 0;margin:0;width:100%;overflow-y:scroll;border:1px solid rgba(0,0,0,.26);box-shadow:0 3px 6px 0 rgba(0,0,0,.15);border-top:none;border-radius:0 0 4px 4px;text-align:left;list-style:none;background:#fff}.v-select .no-options{text-align:center}.v-select .selected-tag{display:flex;align-items:center;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;color:#333;line-height:1.42857143;margin:4px 2px 0;padding:0 .25em}.v-select.single .selected-tag{background-color:transparent;border-color:transparent}.v-select.single.loading .selected-tag,.v-select.single.open .selected-tag{display:none}.v-select .selected-tag .close{margin-left:2px;font-size:1.25em;appearance:none;padding:0;cursor:pointer;background:0 0;border:0;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.v-select.single.searching:not(.open):not(.loading) input[type=search]{opacity:.2}.v-select input[type=search]::-webkit-search-cancel-button,.v-select input[type=search]::-webkit-search-decoration,.v-select input[type=search]::-webkit-search-results-button,.v-select input[type=search]::-webkit-search-results-decoration{display:none}.v-select input[type=search]::-ms-clear{display:none}.v-select input[type=search],.v-select input[type=search]:focus{appearance:none;-webkit-appearance:none;-moz-appearance:none;line-height:1.42857143;font-size:1em;display:inline-block;border:1px solid transparent;outline:none;margin:4px 0 0;padding:0 .5em;max-width:100%;background:none;box-shadow:none;flex-grow:1;width:4em}.v-select.unsearchable input[type=search]{opacity:0}.v-select.unsearchable input[type=search]:hover{cursor:pointer}.v-select input[type=search].hidden{border:none;padding:0;width:0}.v-select li{line-height:1.42857143}.v-select li>a{display:block;padding:3px 20px;clear:both;color:#333;white-space:nowrap}.v-select li:hover{cursor:pointer}.v-select .dropdown-menu .active>a{color:#333;background:rgba(50,50,50,.1)}.v-select .dropdown-menu>.highlight>a{background:#5897fb;color:#fff}.v-select .highlight:not(:last-child){margin-bottom:0}.v-select .spinner{align-self:center;opacity:0;font-size:5px;text-indent:-9999em;overflow:hidden;border-top:.9em solid hsla(0,0%,39%,.1);border-right:.9em solid hsla(0,0%,39%,.1);border-bottom:.9em solid hsla(0,0%,39%,.1);border-left:.9em solid rgba(60,60,60,.45);transform:translateZ(0);animation:vSelectSpinner 1.1s infinite linear;transition:opacity .1s}.v-select .spinner,.v-select .spinner:after{border-radius:50%;width:5em;height:5em}.v-select.disabled .dropdown-toggle,.v-select.disabled .dropdown-toggle .clear,.v-select.disabled .dropdown-toggle input,.v-select.disabled .open-indicator,.v-select.disabled .selected-tag .close{cursor:not-allowed;background-color:#f8f8f8}.v-select.loading .spinner{opacity:1}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fade-enter-active,.fade-leave-active{transition:opacity .15s cubic-bezier(1,.5,.8,1)}.fade-enter,.fade-leave-to{opacity:0}',\"\"])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var n=this[e];n[2]?t.push(\"@media \"+n[2]+\"{\"+n[1]+\"}\"):t.push(n[1])}return t.join(\"\")},t.i=function(e,n){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var r={},o=0;o<this.length;o++){var i=this[o][0];\"number\"==typeof i&&(r[i]=!0)}for(o=0;o<e.length;o++){var s=e[o];\"number\"==typeof s[0]&&r[s[0]]||(n&&!s[2]?s[2]=n:n&&(s[2]=\"(\"+s[2]+\") and (\"+n+\")\"),t.push(s))}},t}},function(t,e,n){n(89);var r=n(86)(n(41),n(87),null,null);t.exports=r.exports},function(t,e){t.exports=function(t,e,n,r){var o,i=t=t||{},s=typeof t.default;\"object\"!==s&&\"function\"!==s||(o=t,i=t.default);var a=\"function\"==typeof i?i.options:i;if(e&&(a.render=e.render,a.staticRenderFns=e.staticRenderFns),n&&(a._scopeId=n),r){var u=a.computed||(a.computed={});Object.keys(r).forEach(function(t){var e=r[t];u[t]=function(){return e}})}return{esModule:o,exports:i,options:a}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"div\",{staticClass:\"dropdown v-select\",class:t.dropdownClasses,attrs:{dir:t.dir}},[n(\"div\",{ref:\"toggle\",staticClass:\"dropdown-toggle\",on:{mousedown:function(e){e.preventDefault(),t.toggleDropdown(e)}}},[n(\"div\",{ref:\"selectedOptions\",staticClass:\"vs__selected-options\"},[t._l(t.valueAsArray,function(e){return t._t(\"selected-option-container\",[n(\"span\",{key:e.index,staticClass:\"selected-tag\"},[t._t(\"selected-option\",[t._v(\"\\n \"+t._s(t.getOptionLabel(e))+\"\\n \")],null,\"object\"==typeof e?e:(r={},\nr[t.label]=e,r)),t._v(\" \"),t.multiple?n(\"button\",{staticClass:\"close\",attrs:{disabled:t.disabled,type:\"button\",\"aria-label\":\"Remove option\"},on:{click:function(n){t.deselect(e)}}},[n(\"span\",{attrs:{\"aria-hidden\":\"true\"}},[t._v(\"×\")])]):t._e()],2)],{option:\"object\"==typeof e?e:(o={},o[t.label]=e,o),deselect:t.deselect,multiple:t.multiple,disabled:t.disabled});var r,o}),t._v(\" \"),n(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.search,expression:\"search\"}],ref:\"search\",staticClass:\"form-control\",class:t.inputClasses,attrs:{type:\"search\",autocomplete:\"off\",disabled:t.disabled,placeholder:t.searchPlaceholder,tabindex:t.tabindex,readonly:!t.searchable,id:t.inputId,role:\"combobox\",\"aria-expanded\":t.dropdownOpen,\"aria-label\":\"Search for option\"},domProps:{value:t.search},on:{keydown:[function(e){return\"button\"in e||!t._k(e.keyCode,\"delete\",[8,46],e.key)?void t.maybeDeleteValue(e):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"up\",38,e.key)?(e.preventDefault(),void t.typeAheadUp(e)):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"down\",40,e.key)?(e.preventDefault(),void t.typeAheadDown(e)):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"enter\",13,e.key)?(e.preventDefault(),void t.typeAheadSelect(e)):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"tab\",9,e.key)?void t.onTab(e):null}],keyup:function(e){return\"button\"in e||!t._k(e.keyCode,\"esc\",27,e.key)?void t.onEscape(e):null},blur:t.onSearchBlur,focus:t.onSearchFocus,input:function(e){e.target.composing||(t.search=e.target.value)}}})],2),t._v(\" \"),n(\"div\",{staticClass:\"vs__actions\"},[n(\"button\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showClearButton,expression:\"showClearButton\"}],staticClass:\"clear\",attrs:{disabled:t.disabled,type:\"button\",title:\"Clear selection\"},on:{click:t.clearSelection}},[n(\"span\",{attrs:{\"aria-hidden\":\"true\"}},[t._v(\"×\")])]),t._v(\" \"),t.noDrop?t._e():n(\"i\",{ref:\"openIndicator\",staticClass:\"open-indicator\",attrs:{role:\"presentation\"}}),t._v(\" \"),t._t(\"spinner\",[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.mutableLoading,expression:\"mutableLoading\"}],staticClass:\"spinner\"},[t._v(\"Loading...\")])])],2)]),t._v(\" \"),n(\"transition\",{attrs:{name:t.transition}},[t.dropdownOpen?n(\"ul\",{ref:\"dropdownMenu\",staticClass:\"dropdown-menu\",style:{\"max-height\":t.maxHeight},attrs:{role:\"listbox\"},on:{mousedown:t.onMousedown}},[t._l(t.filteredOptions,function(e,r){return n(\"li\",{key:r,class:{active:t.isOptionSelected(e),highlight:r===t.typeAheadPointer},attrs:{role:\"option\"},on:{mouseover:function(e){t.typeAheadPointer=r}}},[n(\"a\",{on:{mousedown:function(n){n.preventDefault(),n.stopPropagation(),t.select(e)}}},[t._t(\"option\",[t._v(\"\\n \"+t._s(t.getOptionLabel(e))+\"\\n \")],null,\"object\"==typeof e?e:(o={},o[t.label]=e,o))],2)]);var o}),t._v(\" \"),t.filteredOptions.length?t._e():n(\"li\",{staticClass:\"no-options\"},[t._t(\"no-options\",[t._v(\"Sorry, no matching options.\")])],2)],2):t._e()])],1)},staticRenderFns:[]}},function(t,e,n){function r(t,e){for(var n=0;n<t.length;n++){var r=t[n],o=f[r.id];if(o){o.refs++;for(var i=0;i<o.parts.length;i++)o.parts[i](r.parts[i]);for(;i<r.parts.length;i++)o.parts.push(u(r.parts[i],e))}else{for(var s=[],i=0;i<r.parts.length;i++)s.push(u(r.parts[i],e));f[r.id]={id:r.id,refs:1,parts:s}}}}function o(t){for(var e=[],n={},r=0;r<t.length;r++){var o=t[r],i=o[0],s=o[1],a=o[2],u=o[3],l={css:s,media:a,sourceMap:u};n[i]?n[i].parts.push(l):e.push(n[i]={id:i,parts:[l]})}return e}function i(t,e){var n=h(),r=g[g.length-1];if(\"top\"===t.insertAt)r?r.nextSibling?n.insertBefore(e,r.nextSibling):n.appendChild(e):n.insertBefore(e,n.firstChild),g.push(e);else{if(\"bottom\"!==t.insertAt)throw new Error(\"Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.\");n.appendChild(e)}}function s(t){t.parentNode.removeChild(t);var e=g.indexOf(t);e>=0&&g.splice(e,1)}function a(t){var e=document.createElement(\"style\");return e.type=\"text/css\",i(t,e),e}function u(t,e){var n,r,o;if(e.singleton){var i=v++;n=b||(b=a(e)),r=l.bind(null,n,i,!1),o=l.bind(null,n,i,!0)}else n=a(e),r=c.bind(null,n),o=function(){s(n)};return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else o()}}function l(t,e,n,r){var o=n?\"\":r.css;if(t.styleSheet)t.styleSheet.cssText=y(e,o);else{var i=document.createTextNode(o),s=t.childNodes;s[e]&&t.removeChild(s[e]),s.length?t.insertBefore(i,s[e]):t.appendChild(i)}}function c(t,e){var n=e.css,r=e.media,o=e.sourceMap;if(r&&t.setAttribute(\"media\",r),o&&(n+=\"\\n/*# sourceURL=\"+o.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+\" */\"),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}var f={},p=function(t){var e;return function(){return\"undefined\"==typeof e&&(e=t.apply(this,arguments)),e}},d=p(function(){return/msie [6-9]\\b/.test(window.navigator.userAgent.toLowerCase())}),h=p(function(){return document.head||document.getElementsByTagName(\"head\")[0]}),b=null,v=0,g=[];t.exports=function(t,e){e=e||{},\"undefined\"==typeof e.singleton&&(e.singleton=d()),\"undefined\"==typeof e.insertAt&&(e.insertAt=\"bottom\");var n=o(t);return r(n,e),function(t){for(var i=[],s=0;s<n.length;s++){var a=n[s],u=f[a.id];u.refs--,i.push(u)}if(t){var l=o(t);r(l,e)}for(var s=0;s<i.length;s++){var u=i[s];if(0===u.refs){for(var c=0;c<u.parts.length;c++)u.parts[c]();delete f[u.id]}}}};var y=function(){var t=[];return function(e,n){return t[e]=n,t.filter(Boolean).join(\"\\n\")}}()},function(t,e,n){var r=n(83);\"string\"==typeof r&&(r=[[t.id,r,\"\"]]);n(88)(r,{});r.locals&&(t.exports=r.locals)}])});\n//# sourceMappingURL=vue-select.js.map","function validate(binding) {\r\n if (typeof binding.value !== 'function') {\r\n console.warn('[Vue-click-outside:] provided expression', binding.expression, 'is not a function.')\r\n return false\r\n }\r\n\r\n return true\r\n}\r\n\r\nfunction isPopup(popupItem, elements) {\r\n if (!popupItem || !elements)\r\n return false\r\n\r\n for (var i = 0, len = elements.length; i < len; i++) {\r\n try {\r\n if (popupItem.contains(elements[i])) {\r\n return true\r\n }\r\n if (elements[i].contains(popupItem)) {\r\n return false\r\n }\r\n } catch(e) {\r\n return false\r\n }\r\n }\r\n\r\n return false\r\n}\r\n\r\nfunction isServer(vNode) {\r\n return typeof vNode.componentInstance !== 'undefined' && vNode.componentInstance.$isServer\r\n}\r\n\r\nexports = module.exports = {\r\n bind: function (el, binding, vNode) {\r\n if (!validate(binding)) return\r\n\r\n // Define Handler and cache it on the element\r\n function handler(e) {\r\n if (!vNode.context) return\r\n\r\n // some components may have related popup item, on which we shall prevent the click outside event handler.\r\n var elements = e.path || (e.composedPath && e.composedPath())\r\n elements && elements.length > 0 && elements.unshift(e.target)\r\n \r\n if (el.contains(e.target) || isPopup(vNode.context.popupItem, elements)) return\r\n\r\n el.__vueClickOutside__.callback(e)\r\n }\r\n\r\n // add Event Listeners\r\n el.__vueClickOutside__ = {\r\n handler: handler,\r\n callback: binding.value\r\n }\r\n !isServer(vNode) && document.addEventListener('click', handler)\r\n },\r\n\r\n update: function (el, binding) {\r\n if (validate(binding)) el.__vueClickOutside__.callback = binding.value\r\n },\r\n \r\n unbind: function (el, binding, vNode) {\r\n // Remove Event Listeners\r\n !isServer(vNode) && document.removeEventListener('click', el.__vueClickOutside__.handler)\r\n delete el.__vueClickOutside__\r\n }\r\n}\r\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"ul\",\n _vm._l(_vm.menu, function(item, key) {\n return _c(\"popover-item\", { key: key, attrs: { item: item } })\n })\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"li\", [\n _vm.item.href\n ? _c(\n \"a\",\n {\n attrs: {\n href: _vm.item.href ? _vm.item.href : \"#\",\n target: _vm.item.target ? _vm.item.target : \"\",\n rel: \"noreferrer noopener\"\n },\n on: { click: _vm.item.action }\n },\n [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _vm.item.text\n ? _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n : _vm.item.longtext\n ? _c(\"p\", [_vm._v(_vm._s(_vm.item.longtext))])\n : _vm._e()\n ]\n )\n : _vm.item.action\n ? _c(\"button\", { on: { click: _vm.item.action } }, [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _vm.item.text\n ? _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n : _vm.item.longtext\n ? _c(\"p\", [_vm._v(_vm._s(_vm.item.longtext))])\n : _vm._e()\n ])\n : _c(\"span\", { staticClass: \"menuitem\" }, [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _vm.item.text\n ? _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n : _vm.item.longtext\n ? _c(\"p\", [_vm._v(_vm._s(_vm.item.longtext))])\n : _vm._e()\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","<template>\n\t<li>\n\t\t<!-- If item.href is set, a link will be directly used -->\n\t\t<a @click=\"item.action\" v-if=\"item.href\" :href=\"(item.href) ? item.href : '#' \" :target=\"(item.target) ? item.target : '' \" rel=\"noreferrer noopener\">\n\t\t\t<span :class=\"item.icon\"></span>\n\t\t\t<span v-if=\"item.text\">{{item.text}}</span>\n\t\t\t<p v-else-if=\"item.longtext\">{{item.longtext}}</p>\n\t\t</a>\n\t\t<!-- If item.action is set instead, a button will be used -->\n\t\t<button @click=\"item.action\" v-else-if=\"item.action\">\n\t\t\t<span :class=\"item.icon\"></span>\n\t\t\t<span v-if=\"item.text\">{{item.text}}</span>\n\t\t\t<p v-else-if=\"item.longtext\">{{item.longtext}}</p>\n\t\t</button>\n\t\t<!-- If item.longtext is set AND the item does not have an action -->\n\t\t<span class=\"menuitem\" v-else>\n\t\t\t<span :class=\"item.icon\"></span>\n\t\t\t<span v-if=\"item.text\">{{item.text}}</span>\n\t\t\t<p v-else-if=\"item.longtext\">{{item.longtext}}</p>\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nexport default {\n\tprops: ['item']\n}\n</script>\n","import mod from \"-!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./popoverItem.vue?vue&type=template&id=4c6af9e6&\"\nimport script from \"./popoverItem.vue?vue&type=script&lang=js&\"\nexport * from \"./popoverItem.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/server/apps/updatenotification/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!module.hot.data) {\n api.createRecord('4c6af9e6', component.options)\n } else {\n api.reload('4c6af9e6', component.options)\n }\n module.hot.accept(\"./popoverItem.vue?vue&type=template&id=4c6af9e6&\", function () {\n api.rerender('4c6af9e6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/popoverMenu/popoverItem.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverMenu.vue?vue&type=script&lang=js&\"","<template>\n\t<ul>\n\t\t<popover-item v-for=\"(item, key) in menu\" :item=\"item\" :key=\"key\" />\n\t</ul>\n</template>\n\n\n<script>\nimport popoverItem from './popoverMenu/popoverItem';\n\nexport default {\n\tname: 'popoverMenu',\n\tprops: ['menu'],\n\tcomponents: {\n\t\tpopoverItem\n\t}\n}\n</script>\n","import { render, staticRenderFns } from \"./popoverMenu.vue?vue&type=template&id=04ea21c4&\"\nimport script from \"./popoverMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./popoverMenu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/server/apps/updatenotification/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!module.hot.data) {\n api.createRecord('04ea21c4', component.options)\n } else {\n api.reload('04ea21c4', component.options)\n }\n module.hot.accept(\"./popoverMenu.vue?vue&type=template&id=04ea21c4&\", function () {\n api.rerender('04ea21c4', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/popoverMenu.vue\"\nexport default component.exports","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"followupsection\", attrs: { id: \"updatenotification\" } },\n [\n _c(\n \"div\",\n { staticClass: \"update\" },\n [\n _vm.isNewVersionAvailable\n ? [\n _vm.versionIsEol\n ? _c(\"p\", [\n _c(\"span\", { staticClass: \"warning\" }, [\n _c(\"span\", { staticClass: \"icon icon-error\" }),\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible.\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\"\n )\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"p\", [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(_vm.newVersionAvailableString)\n }\n }),\n _c(\"br\"),\n _vm._v(\" \"),\n !_vm.isListFetched\n ? _c(\"span\", { staticClass: \"icon icon-loading-small\" })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"span\", {\n domProps: { innerHTML: _vm._s(_vm.statusText) }\n })\n ]),\n _vm._v(\" \"),\n _vm.missingAppUpdates.length\n ? [\n _c(\n \"h3\",\n { on: { click: _vm.toggleHideMissingUpdates } },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Apps missing updates\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\\t\"\n ),\n !_vm.hideMissingUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-n\"\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hideMissingUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-s\"\n })\n : _vm._e()\n ]\n ),\n _vm._v(\" \"),\n !_vm.hideMissingUpdates\n ? _c(\n \"ul\",\n { staticClass: \"applist\" },\n _vm._l(_vm.missingAppUpdates, function(app) {\n return _c(\"li\", [\n _c(\n \"a\",\n {\n attrs: {\n href:\n \"https://apps.nextcloud.com/apps/\" +\n app.appId,\n title: _vm.t(\"settings\", \"View in store\")\n }\n },\n [_vm._v(_vm._s(app.appName) + \" ↗\")]\n )\n ])\n })\n )\n : _vm._e()\n ]\n : _vm._e(),\n _vm._v(\" \"),\n _vm.availableAppUpdates.length\n ? [\n _c(\n \"h3\",\n { on: { click: _vm.toggleHideAvailableUpdates } },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Apps with available updates\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\\t\"\n ),\n !_vm.hideAvailableUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-n\"\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hideAvailableUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-s\"\n })\n : _vm._e()\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n { staticClass: \"applist\" },\n _vm._l(_vm.availableAppUpdates, function(app) {\n return !_vm.hideAvailableUpdates\n ? _c(\"li\", [\n _c(\n \"a\",\n {\n attrs: {\n href:\n \"https://apps.nextcloud.com/apps/\" +\n app.appId,\n title: _vm.t(\"settings\", \"View in store\")\n }\n },\n [_vm._v(_vm._s(app.appName) + \" ↗\")]\n )\n ])\n : _vm._e()\n })\n )\n ]\n : _vm._e(),\n _vm._v(\" \"),\n _vm.updaterEnabled\n ? _c(\n \"a\",\n {\n staticClass: \"button\",\n attrs: { href: \"#\" },\n on: { click: _vm.clickUpdaterButton }\n },\n [\n _vm._v(\n _vm._s(_vm.t(\"updatenotification\", \"Open updater\"))\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.downloadLink\n ? _c(\n \"a\",\n {\n staticClass: \"button\",\n class: { hidden: !_vm.updaterEnabled },\n attrs: { href: _vm.downloadLink }\n },\n [\n _vm._v(\n _vm._s(_vm.t(\"updatenotification\", \"Download now\"))\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.whatsNew\n ? _c(\"div\", { staticClass: \"whatsNew\" }, [\n _c(\"div\", { staticClass: \"toggleWhatsNew\" }, [\n _c(\n \"span\",\n {\n directives: [\n {\n name: \"click-outside\",\n rawName: \"v-click-outside\",\n value: _vm.hideMenu,\n expression: \"hideMenu\"\n }\n ],\n on: { click: _vm.toggleMenu }\n },\n [\n _vm._v(\n _vm._s(_vm.t(\"updatenotification\", \"What's new?\"))\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"popovermenu\",\n class: {\n \"menu-center\": true,\n open: _vm.openedWhatsNew\n }\n },\n [\n _c(\"popover-menu\", {\n attrs: { menu: _vm.whatsNew }\n })\n ],\n 1\n )\n ])\n ])\n : _vm._e()\n ]\n : !_vm.isUpdateChecked\n ? [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The update check is not yet finished. Please refresh the page.\"\n )\n )\n )\n ]\n : [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Your version is up to date.\"\n )\n ) +\n \"\\n\\t\\t\\t\"\n ),\n _c(\"span\", {\n staticClass: \"icon-info svg\",\n attrs: { title: _vm.lastCheckedOnString }\n })\n ],\n _vm._v(\" \"),\n !_vm.isDefaultUpdateServerURL\n ? [\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"A non-default update server is in use to be checked for updates:\"\n )\n ) + \" \"\n ),\n _c(\"code\", [_vm._v(_vm._s(_vm.updateServerURL))])\n ])\n ]\n : _vm._e()\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"p\", [\n _c(\"label\", { attrs: { for: \"release-channel\" } }, [\n _vm._v(_vm._s(_vm.t(\"updatenotification\", \"Update channel:\")))\n ]),\n _vm._v(\" \"),\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.currentChannel,\n expression: \"currentChannel\"\n }\n ],\n attrs: { id: \"release-channel\" },\n on: {\n change: [\n function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.currentChannel = $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n },\n _vm.changeReleaseChannel\n ]\n }\n },\n _vm._l(_vm.channels, function(channel) {\n return _c(\"option\", { domProps: { value: channel } }, [\n _vm._v(_vm._s(channel))\n ])\n })\n ),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"msg\", attrs: { id: \"channel_save_msg\" } }),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel.\"\n )\n )\n )\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found.\"\n )\n )\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"channel-description\" }, [\n _c(\"span\", {\n domProps: { innerHTML: _vm._s(_vm.productionInfoString) }\n }),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", { domProps: { innerHTML: _vm._s(_vm.stableInfoString) } }),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", { domProps: { innerHTML: _vm._s(_vm.betaInfoString) } })\n ]),\n _vm._v(\" \"),\n _c(\n \"p\",\n { attrs: { id: \"oca_updatenotification_groups\" } },\n [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Notify members of the following groups about available updates:\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n _c(\"v-select\", {\n attrs: {\n multiple: \"\",\n value: _vm.notifyGroups,\n options: _vm.availableGroups\n }\n }),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm.currentChannel === \"daily\" || _vm.currentChannel === \"git\"\n ? _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Only notification for app updates are available.\"\n )\n )\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.currentChannel === \"daily\"\n ? _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The selected update channel makes dedicated notifications for the server obsolete.\"\n )\n )\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.currentChannel === \"git\"\n ? _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The selected update channel does not support updates of the server.\"\n )\n )\n )\n ])\n : _vm._e()\n ],\n 1\n )\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./root.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./root.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./root.vue?vue&type=template&id=6f6af01c&\"\nimport script from \"./root.vue?vue&type=script&lang=js&\"\nexport * from \"./root.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/admin/Docker/server/apps/updatenotification/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!module.hot.data) {\n api.createRecord('6f6af01c', component.options)\n } else {\n api.reload('6f6af01c', component.options)\n }\n module.hot.accept(\"./root.vue?vue&type=template&id=6f6af01c&\", function () {\n api.rerender('6f6af01c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/root.vue\"\nexport default component.exports","/**\n * @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* global define, $ */\nimport Vue from 'vue';\nimport Root from './components/root'\n\nVue.mixin({\n\tmethods: {\n\t\tt: function(app, text, vars, count, options) {\n\t\t\treturn OC.L10N.translate(app, text, vars, count, options);\n\t\t},\n\t\tn: function(app, textSingular, textPlural, count, vars, options) {\n\t\t\treturn OC.L10N.translatePlural(app, textSingular, textPlural, count, vars, options);\n\t\t}\n\t}\n});\n\nconst vm = new Vue({\n\trender: h => h(Root)\n}).$mount('#updatenotification');\n\n\n"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///src/components/root.vue","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/vue/dist/vue.esm.js","webpack:///./node_modules/vue-select/dist/vue-select.js","webpack:///./node_modules/vue-click-outside/index.js","webpack:///./src/components/popoverMenu.vue?6abc","webpack:///./src/components/popoverMenu/popoverItem.vue?e129","webpack:///src/components/popoverMenu/popoverItem.vue","webpack:///./src/components/popoverMenu/popoverItem.vue?37ea","webpack:///./src/components/popoverMenu/popoverItem.vue","webpack:///./src/components/popoverMenu.vue?f184","webpack:///src/components/popoverMenu.vue","webpack:///./src/components/popoverMenu.vue","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./node_modules/process/browser.js","webpack:///./src/components/root.vue?7b3c","webpack:///./src/components/root.vue?3eba","webpack:///./src/components/root.vue","webpack:///./src/init.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","options","_compiled","functional","_scopeId","context","this","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","concat","__webpack_exports__","components","vSelect","vue_select__WEBPACK_IMPORTED_MODULE_0___default","popoverMenu","_popoverMenu__WEBPACK_IMPORTED_MODULE_1__","directives","ClickOutside","vue_click_outside__WEBPACK_IMPORTED_MODULE_2___default","data","newVersionString","lastCheckedDate","isUpdateChecked","updaterEnabled","versionIsEol","downloadLink","isNewVersionAvailable","updateServerURL","changelogURL","whatsNewData","currentChannel","channels","notifyGroups","availableGroups","isDefaultUpdateServerURL","enableChangeWatcher","availableAppUpdates","missingAppUpdates","appStoreFailed","appStoreDisabled","isListFetched","hideMissingUpdates","hideAvailableUpdates","openedWhatsNew","_$el","_$releaseChannel","_$notifyGroups","watch","selectedOptions","selectedGroups","_","each","group","push","OCP","AppConfig","setValue","JSON","stringify","$","ajax","url","OC","linkToOCS","type","beforeSend","request","setRequestHeader","success","response","ocs","available","missing","error","xhr","responseJSON","appstore_disabled","computed","newVersionAvailableString","lastCheckedOnString","statusText","appstoreDisabled","appstoreFailed","length","version","productionInfoString","stableInfoString","betaInfoString","whatsNew","icon","longtext","href","text","target","action","methods","clickUpdaterButton","generateUrl","getRootPath","headers","X-Updater-Auth","method","body","remove","html","dom","filter","eval","textContent","innerHTML","removeAttr","attr","Notification","showTemporary","changeReleaseChannel","val","channel","msg","finishedAction","toggleHideMissingUpdates","toggleHideAvailableUpdates","toggleMenu","hideMenu","beforeMount","parse","lastChecked","changes","admin","regular","mounted","$el","find","on","$emit","dataType","results","groups","label","updated","tooltip","placement","g","Function","e","window","global","setImmediate","emptyObject","freeze","isUndef","v","undefined","isDef","isTrue","isPrimitive","isObject","obj","_toString","toString","isPlainObject","isRegExp","isValidArrayIndex","parseFloat","String","Math","floor","isFinite","toNumber","isNaN","makeMap","str","expectsLowerCase","map","list","split","toLowerCase","isBuiltInTag","isReservedAttribute","arr","item","index","indexOf","splice","hasOwn","cached","fn","cache","camelizeRE","camelize","replace","toUpperCase","capitalize","charAt","slice","hyphenateRE","hyphenate","ctx","boundFn","a","arguments","apply","_length","toArray","start","ret","Array","extend","to","_from","toObject","res","noop","b","no","identity","looseEqual","isObjectA","isObjectB","isArrayA","isArray","isArrayB","every","keysA","keys","keysB","looseIndexOf","once","called","SSR_ATTR","ASSET_TYPES","LIFECYCLE_HOOKS","config","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","_lifecycleHooks","isReserved","charCodeAt","def","writable","configurable","bailRE","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","navigator","userAgent","isIE","test","isIE9","isEdge","isIOS","nativeWatch","supportsPassive","opts","addEventListener","isServerRendering","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","_Set","hasSymbol","Reflect","ownKeys","Set","set","has","clear","warn","uid","Dep","id","subs","addSub","sub","removeSub","depend","addDep","notify","update","targetStack","pushTarget","_target","popTarget","pop","VNode","tag","children","elm","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","forEach","original","args","len","inserted","result","ob","__ob__","observeArray","dep","arrayKeys","getOwnPropertyNames","shouldObserve","toggleObserving","Observer","vmCount","protoAugment","copyAugment","walk","src","__proto__","observe","asRootData","isExtensible","_isVue","defineReactive","customSetter","shallow","getOwnPropertyDescriptor","setter","childOb","dependArray","newVal","max","del","items","strats","mergeData","from","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","mergeAssets","key$1","props","inject","provide","defaultStrat","mergeOptions","normalizeProps","normalized","normalizeInject","dirs","normalizeDirectives","extendsFrom","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","prop","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","default","_props","getType","getPropDefaultValue","prevShouldObserve","match","isSameType","expectedTypes","handleError","err","info","cur","$parent","hooks","errorCaptured","globalHandleError","logError","console","microTimerFunc","macroTimerFunc","callbacks","pending","flushCallbacks","copies","useMacroTask","MessageChannel","setTimeout","port","port2","port1","onmessage","postMessage","Promise","resolve","then","nextTick","cb","_resolve","seenObjects","traverse","_traverse","seen","isA","isFrozen","depId","normalizeEvent","passive","once$$1","capture","createFnInvoker","fns","invoker","arguments$1","updateListeners","oldOn","remove$$1","old","event","params","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","hash","altKey","preserve","normalizeChildren","normalizeArrayChildren","nestedIndex","lastIndex","last","isTextNode","shift","_isVList","isFalse","ensureCtor","comp","base","getFirstComponentChild","$once","$on","remove$1","$off","updateComponentListeners","listeners","oldListeners","resolveSlots","slots","attrs","slot","name$1","isWhitespace","resolveScopedSlots","activeInstance","isInInactiveTree","_inactive","activateChildComponent","direct","_directInactive","$children","callHook","handlers","j","_hasHookEvent","queue","activatedChildren","waiting","flushing","flushSchedulerQueue","watcher","sort","run","activatedQueue","updatedQueue","callActivatedHooks","_watcher","_isMounted","callUpdatedHooks","emit","uid$1","Watcher","expOrFn","isRenderWatcher","_watchers","deep","user","lazy","sync","active","dirty","deps","newDeps","depIds","newDepIds","expression","path","segments","parsePath","cleanupDeps","tmp","queueWatcher","oldValue","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","proxy","sourceKey","initState","propsOptions","_propKeys","loop","initProps","initMethods","_data","getData","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","handler","createWatcher","initWatch","shouldCache","createComputedGetter","$watch","resolveInject","provideKey","source","_provided","provideDefault","renderList","renderSlot","fallback","bindObject","nodes","scopedSlotFn","$scopedSlots","slotNodes","$slots","_rendered","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","domProps","$event","renderStatic","isInFor","_staticTrees","tree","markStatic","_renderProxy","markOnce","markStaticNode","bindObjectListeners","ours","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","FunctionalRenderContext","contextVm","_original","isCompiled","needNormalization","injections","scopedSlots","_c","createElement","cloneAndMarkFunctionalResult","clone","mergeProps","componentVNodeHooks","init","hydrating","parentElm","refElm","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","_parentElm","_refElm","inlineTemplate","createComponentInstanceForVnode","$mount","oldVnode","parentVnode","renderChildren","hasChildren","_renderChildren","_vnode","$attrs","$listeners","propKeys","_parentListeners","$forceUpdate","updateChildComponent","insert","queueActivatedComponent","destroy","deactivateChildComponent","$destroy","hooksToMerge","createComponent","baseCtor","_base","cid","factory","errorComp","resolved","loading","loadingComp","contexts","forceRender","reject","reason","component","delay","timeout","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","callback","transformModel","extractPropsFromVNodeData","renderContext","vnodes","createFunctionalComponent","nativeOn","abstract","installComponentHooks","SIMPLE_NORMALIZE","ALWAYS_NORMALIZE","normalizationType","alwaysNormalize","is","simpleNormalizeChildren","applyNS","force","style","class","registerDeepBindings","_createElement","uid$3","super","superOptions","modifiedOptions","modified","latest","extended","extendOptions","sealed","sealedOptions","dedupe","resolveModifiedOptions","Vue","_init","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","constructor","Comp","initProps$1","initComputed$1","mixin","use","getComponentName","matches","pattern","pruneCache","keepAliveInstance","cachedNode","pruneCacheEntry","current","cached$$1","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","_self","$refs","initLifecycle","_events","initEvents","parentData","initRender","initInjections","initProvide","el","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","cbs","i$1","eventsMixin","_update","prevEl","prevVnode","prevActiveInstance","__patch__","__vue__","lifecycleMixin","$nextTick","_render","ref","renderMixin","patternTypes","RegExp","builtInComponents","KeepAlive","include","exclude","Number","created","destroyed","this$1","parseInt","configDef","util","delete","plugin","installedPlugins","_installedPlugins","unshift","install","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","acceptValue","isEnumeratedAttr","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","parentNode","childNode","mergeClassData","staticClass","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","query","selected","document","querySelector","nodeOps","tagName","multiple","setAttribute","createElementNS","namespace","createTextNode","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","setStyleScope","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","dir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","callHook$1","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","join","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","removeAttribute","baseSetAttr","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","chr","index$1","expressionPos","expressionEndPos","klass","validDivisionCharRE","parseFilters","exp","prev","filters","inSingle","inDouble","inTemplateString","inRegex","curly","square","paren","lastFilterIndex","trim","pushFilter","wrapFilter","baseWarn","pluckModuleFunction","addProp","plain","addAttr","addRawAttr","attrsMap","attrsList","addDirective","arg","addHandler","important","events","right","middle","native","nativeEvents","newHandler","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","genComponentModel","number","valueExpression","assignment","genAssignmentCode","lastIndexOf","eof","isStringStart","next","parseString","parseBracket","parseModel","inBracket","stringQuote","target$1","RANGE_TOKEN","CHECKBOX_RADIO_TOKEN","add$1","_withTask","withMacroTask","onceHandler","remove$2","createOnceHandler","updateDOMListeners","change","normalizeEvents","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","checkVal","composing","notInFocus","activeElement","isNotInFocusAndDirty","_vModifiers","isDirtyWithModifiers","parseStyleText","cssText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","TRANSITION","ANIMATION","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","end","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","duration","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","patch","backend","removeNode","createElm","insertedVnodeQueue","nested","ownerArray","isReactivated","initComponent","innerNode","activate","reactivateComponent","setScope","createChildren","invokeCreateHooks","pendingInsert","isPatchable","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","childElm","createRmCb","findIdxInOld","oldCh","patchVnode","removeOnly","hydrate","newCh","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","updateChildren","postpatch","invokeInsertHook","initial","isRenderedModule","inVPre","pre","hasChildNodes","childrenMatch","firstChild","fullInvoke","isInitialPatch","isRealElement","hasAttribute","emptyNodeAt","oldElm","parentElm$1","patchable","i$2","createPatchFunction","vmodel","trigger","directive","binding","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","some","hasNoMatchingOption","actuallySetSelected","isMultiple","option","selectedIndex","createEvent","initEvent","dispatchEvent","locateNode","platformDirectives","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","rawChild","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","getBoundingClientRect","applyTranslation","oldPos","pos","dx","left","dy","top","moved","transform","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","prevChildren","rawChildren","transitionData","kept","removed","c$1","beforeUpdate","hasMove","_reflow","offsetHeight","propertyName","_hasMove","cloneNode","HTMLUnknownElement","HTMLElement","mountComponent","defaultTagRE","regexEscapeRE","buildRegex","delimiters","open","close","klass$1","staticKeys","transformNode","classBinding","genData","decoder","style$1","styleBinding","he","isUnaryTag","canBeLeftOpenTag","isNonPhrasingTag","attribute","ncname","qnameCapture","startTagOpen","startTagClose","endTag","doctype","comment","conditionalComment","IS_REGEX_CAPTURING_BROKEN","isPlainTextElement","reCache","decodingMap","&lt;","&gt;","&quot;","&amp;","&#10;","&#9;","encodedAttr","encodedAttrWithNewLines","isIgnoreNewlineTag","shouldIgnoreFirstNewline","decodeAttr","shouldDecodeNewlines","re","warn$2","transforms","preTransforms","postTransforms","platformIsPreTag","platformMustUseProp","platformGetTagNamespace","onRE","dirRE","forAliasRE","forIteratorRE","stripParensRE","argRE","bindRE","modifierRE","decodeHTMLCached","createASTElement","makeAttrsMap","template","isPreTag","root","currentParent","stack","preserveWhitespace","inPre","closeElement","element","lastTag","expectHTML","isUnaryTag$$1","canBeLeftOpenTag$$1","endTagLength","stackedTag","reStackedTag","rest$1","all","chars","parseEndTag","textEnd","commentEnd","shouldKeepComment","substring","advance","conditionalEnd","doctypeMatch","endTagMatch","curIndex","startTagMatch","parseStartTag","handleStartTag","rest","unarySlash","unary","shouldDecodeNewlinesForHref","lowerCasedTag","lowerCasedTagName","parseHTML","comments","ieNSBug","ieNSPrefix","guardIESVGBug","isForbiddenTag","forbidden","checkRootConstraints","processPre","processRawAttrs","processed","processFor","if","addIfCondition","block","else","elseif","processIf","processOnce","processElement","findPrevElement","processIfConditions","slotScope","slotTarget","lastNode","isTextTag","tagRE","tokenValue","tokens","rawTokens","exec","@binding","parseText","processKey","for","checkInFor","processRef","slotName","processSlot","processComponent","isProp","hasBindings","parseModifiers","camel","argMatch","processAttrs","inMatch","alias","iteratorMatch","iterator1","iterator2","parseFor","condition","ifConditions","cloneASTElement","modules$1","preTransformNode","typeBinding","ifCondition","ifConditionExtra","hasElse","elseIfCondition","branch0","branch1","branch2","isStaticKey","isPlatformReservedTag","baseOptions","_warn","code","genSelect","valueBinding","trueValueBinding","falseValueBinding","genCheckboxModel","genRadioModel","needCompositionGuard","genDefaultModel","reduce","genStaticKeys","genStaticKeysCached","optimize","markStatic$1","static","isDirectChildOfTemplateFor","l$1","markStaticRoots","staticInFor","staticRoot","fnExpRE","simplePathRE","esc","tab","space","up","down","keyNames","genGuard","modifierCode","stop","prevent","self","ctrl","alt","meta","genHandlers","genHandler","isMethodPath","isFunctionExpression","genModifierCode","keyModifier","genFilterCode","genKeyFilter","keyVal","keyCode","keyName","baseDirectives","wrapListeners","wrapData","cloak","CodegenState","dataGenFns","maybeComponent","onceId","generate","ast","state","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","altGen","altHelper","genFor","ifProcessed","genIf","genChildren","bind$$1","genSlot","componentName","genData$2","genComponent","altEmpty","genIfConditions","conditions","genTernaryExp","needRuntime","hasRuntime","gen","genDirectives","genProps","genScopedSlot","inlineRenderFns","genInlineTemplate","genForScopedSlot","checkSkip","altGenElement","altGenNode","el$1","needsNormalization","getNormalizationType","genNode","genComment","transformSpecialNewlines","genText","createFunction","errors","div","compileToFunctions","baseCompile","compile","finalOptions","tips","tip","compiled","fnGenErrors","createCompileToFunctionFn","createCompilerCreator","createCompiler","getShouldDecode","idToTemplate","mount","documentElement","outerHTML","container","getOuterHTML","loaded","VueSelect","__g","__e","f","TypeError","store","u","F","G","S","P","B","W","y","x","virtual","R","U","random","propertyIsEnumerable","ceil","valueOf","onSearch","mutableLoading","search","toggleLoading","typeAheadPointer","maybeAdjustScroll","pixelsToPointerTop","pixelsToPointerBottom","viewport","scrollTo","bottom","pointerHeight","dropdownMenu","scrollTop","filteredOptions","typeAheadUp","typeAheadDown","typeAheadSelect","select","taggable","clearSearchOnSelect","w","O","C","k","A","M","L","T","E","entries","values","contentWindow","write","getOwnPropertySymbols","disabled","clearable","maxHeight","searchable","closeOnSelect","getOptionLabel","findOptionByIndexValue","onChange","onTab","selectOnTab","tabindex","pushTags","filterable","filterBy","createOption","mutableOptions","resetOnOptionsChange","noDrop","inputId","mutableValue","maybePushTag","isOptionSelected","optionExists","onAfterSelect","deselect","clearSelection","blur","toggleDropdown","openIndicator","toggle","contains","focus","valueAsArray","optionObjectComparator","onEscape","onSearchBlur","mousedown","searching","clearSearchOnBlur","onSearchFocus","maybeDeleteValue","onMousedown","dropdownClasses","dropdownOpen","single","unsearchable","rtl","searchPlaceholder","isValueEmpty","showClearButton","pointer","pointerScroll","done","preventExtensions","KEY","NEED","fastKey","getWeak","onFreeze","getPrototypeOf","min","Arguments","V","N","D","I","z","H","QObject","findChild","J","iterator","K","Y","Q","Z","X","tt","et","nt","ot","rt","keyFor","useSetter","useSimple","esModule","preventDefault","aria-label","click","aria-hidden","autocomplete","readonly","role","aria-expanded","keydown","keyup","input","title","max-height","highlight","mouseover","stopPropagation","parts","media","sourceMap","insertAt","Error","singleton","sources","btoa","unescape","encodeURIComponent","styleSheet","head","getElementsByTagName","locals","validate","isServer","vNode","$isServer","elements","composedPath","popupItem","isPopup","__vueClickOutside__","_h","menu","_withStripped","popoverItemvue_type_template_id_4c6af9e6_render","_vm","rel","popoverMenu_popoverItemvue_type_script_lang_js_","componentNormalizer","__file","components_popoverMenuvue_type_script_lang_js_","popoverItem","popoverMenu_component","scope","Timeout","clearFn","_id","_clearFn","clearTimeout","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","clearImmediate","process","registerImmediate","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","importScripts","postMessageIsAsynchronous","oldOnMessage","canUsePostMessage","messagePrefix","onGlobalMessage","attachEvent","installPostMessageImplementation","installMessageChannelImplementation","script","onreadystatechange","installReadyStateChangeImplementation","task","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","array","browser","argv","versions","addListener","off","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","app","appId","appName","hidden","menu-center","$$selectedVal","components_rootvue_type_script_lang_js_","vue_esm","vars","count","L10N","translate","textSingular","textPlural","translatePlural"],"mappings":"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","file":"updatenotification.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 10);\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","<template>\n\t<div id=\"updatenotification\" class=\"followupsection\">\n\t\t<div class=\"update\">\n\t\t\t<template v-if=\"isNewVersionAvailable\">\n\t\t\t\t<p v-if=\"versionIsEol\">\n\t\t\t\t\t<span class=\"warning\">\n\t\t\t\t\t\t<span class=\"icon icon-error\"></span>\n\t\t\t\t\t\t{{ t('updatenotification', 'The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible.') }}\n\t\t\t\t\t</span>\n\t\t\t\t</p>\n\n\t\t\t\t<p>\n\t\t\t\t\t<span v-html=\"newVersionAvailableString\"></span><br>\n\t\t\t\t\t<span v-if=\"!isListFetched\" class=\"icon icon-loading-small\"></span>\n\t\t\t\t\t<span v-html=\"statusText\"></span>\n\t\t\t\t</p>\n\n\t\t\t\t<template v-if=\"missingAppUpdates.length\">\n\t\t\t\t\t<h3 @click=\"toggleHideMissingUpdates\">\n\t\t\t\t\t\t{{ t('updatenotification', 'Apps missing updates') }}\n\t\t\t\t\t\t<span v-if=\"!hideMissingUpdates\" class=\"icon icon-triangle-n\"></span>\n\t\t\t\t\t\t<span v-if=\"hideMissingUpdates\" class=\"icon icon-triangle-s\"></span>\n\t\t\t\t\t</h3>\n\t\t\t\t\t<ul class=\"applist\" v-if=\"!hideMissingUpdates\">\n\t\t\t\t\t\t<li v-for=\"app in missingAppUpdates\"><a :href=\"'https://apps.nextcloud.com/apps/' + app.appId\" :title=\"t('settings', 'View in store')\">{{app.appName}} ↗</a></li>\n\t\t\t\t\t</ul>\n\t\t\t\t</template>\n\n\t\t\t\t<template v-if=\"availableAppUpdates.length\">\n\t\t\t\t\t<h3 @click=\"toggleHideAvailableUpdates\">\n\t\t\t\t\t\t{{ t('updatenotification', 'Apps with available updates') }}\n\t\t\t\t\t\t<span v-if=\"!hideAvailableUpdates\" class=\"icon icon-triangle-n\"></span>\n\t\t\t\t\t\t<span v-if=\"hideAvailableUpdates\" class=\"icon icon-triangle-s\"></span>\n\t\t\t\t\t</h3>\n\t\t\t\t\t<ul class=\"applist\">\n\t\t\t\t\t\t<li v-for=\"app in availableAppUpdates\" v-if=\"!hideAvailableUpdates\"><a :href=\"'https://apps.nextcloud.com/apps/' + app.appId\" :title=\"t('settings', 'View in store')\">{{app.appName}} ↗</a></li>\n\t\t\t\t\t</ul>\n\t\t\t\t</template>\n\n\t\t\t\t<a v-if=\"updaterEnabled\" href=\"#\" class=\"button\" @click=\"clickUpdaterButton\">{{ t('updatenotification', 'Open updater') }}</a>\n\t\t\t\t<a v-if=\"downloadLink\" :href=\"downloadLink\" class=\"button\" :class=\"{ hidden: !updaterEnabled }\">{{ t('updatenotification', 'Download now') }}</a>\n\t\t\t\t<div class=\"whatsNew\" v-if=\"whatsNew\">\n\t\t\t\t\t<div class=\"toggleWhatsNew\">\n\t\t\t\t\t\t<span v-click-outside=\"hideMenu\" @click=\"toggleMenu\">{{ t('updatenotification', 'What\\'s new?') }}</span>\n\t\t\t\t\t\t<div class=\"popovermenu\" :class=\"{ 'menu-center': true, open: openedWhatsNew }\">\n\t\t\t\t\t\t\t<popover-menu :menu=\"whatsNew\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</template>\n\t\t\t<template v-else-if=\"!isUpdateChecked\">{{ t('updatenotification', 'The update check is not yet finished. Please refresh the page.') }}</template>\n\t\t\t<template v-else>\n\t\t\t\t{{ t('updatenotification', 'Your version is up to date.') }}\n\t\t\t\t<span class=\"icon-info svg\" :title=\"lastCheckedOnString\"></span>\n\t\t\t</template>\n\n\t\t\t<template v-if=\"!isDefaultUpdateServerURL\">\n\t\t\t\t<br />\n\t\t\t\t<em>{{ t('updatenotification', 'A non-default update server is in use to be checked for updates:') }} <code>{{updateServerURL}}</code></em>\n\t\t\t</template>\n\t\t</div>\n\n\t\t<p>\n\t\t\t<label for=\"release-channel\">{{ t('updatenotification', 'Update channel:') }}</label>\n\t\t\t<select id=\"release-channel\" v-model=\"currentChannel\" @change=\"changeReleaseChannel\">\n\t\t\t\t<option v-for=\"channel in channels\" :value=\"channel\">{{channel}}</option>\n\t\t\t</select>\n\t\t\t<span id=\"channel_save_msg\" class=\"msg\"></span><br />\n\t\t\t<em>{{ t('updatenotification', 'You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel.') }}</em><br />\n\t\t\t<em>{{ t('updatenotification', 'Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found.') }}</em>\n\t\t</p>\n\n\t\t<p class=\"channel-description\">\n\t\t\t<span v-html=\"productionInfoString\"></span><br>\n\t\t\t<span v-html=\"stableInfoString\"></span><br>\n\t\t\t<span v-html=\"betaInfoString\"></span>\n\t\t</p>\n\n\t\t<p id=\"oca_updatenotification_groups\">\n\t\t\t{{ t('updatenotification', 'Notify members of the following groups about available updates:') }}\n\t\t\t<v-select multiple :value=\"notifyGroups\" :options=\"availableGroups\"></v-select><br />\n\t\t\t<em v-if=\"currentChannel === 'daily' || currentChannel === 'git'\">{{ t('updatenotification', 'Only notification for app updates are available.') }}</em>\n\t\t\t<em v-if=\"currentChannel === 'daily'\">{{ t('updatenotification', 'The selected update channel makes dedicated notifications for the server obsolete.') }}</em>\n\t\t\t<em v-if=\"currentChannel === 'git'\">{{ t('updatenotification', 'The selected update channel does not support updates of the server.') }}</em>\n\t\t</p>\n\t</div>\n</template>\n\n<script>\n\timport vSelect from 'vue-select';\n\timport popoverMenu from './popoverMenu';\n\timport ClickOutside from 'vue-click-outside';\n\n\texport default {\n\t\tname: 'root',\n\t\tcomponents: {\n\t\t\tvSelect,\n\t\t\tpopoverMenu,\n\t\t},\n\t\tdirectives: {\n\t\t\tClickOutside\n\t\t},\n\t\tdata: function () {\n\t\t\treturn {\n\t\t\t\tnewVersionString: '',\n\t\t\t\tlastCheckedDate: '',\n\t\t\t\tisUpdateChecked: false,\n\t\t\t\tupdaterEnabled: true,\n\t\t\t\tversionIsEol: false,\n\t\t\t\tdownloadLink: '',\n\t\t\t\tisNewVersionAvailable: false,\n\t\t\t\tupdateServerURL: '',\n\t\t\t\tchangelogURL: '',\n\t\t\t\twhatsNewData: [],\n\t\t\t\tcurrentChannel: '',\n\t\t\t\tchannels: [],\n\t\t\t\tnotifyGroups: '',\n\t\t\t\tavailableGroups: [],\n\t\t\t\tisDefaultUpdateServerURL: true,\n\t\t\t\tenableChangeWatcher: false,\n\n\t\t\t\tavailableAppUpdates: [],\n\t\t\t\tmissingAppUpdates: [],\n\t\t\t\tappStoreFailed: false,\n\t\t\t\tappStoreDisabled: false,\n\t\t\t\tisListFetched: false,\n\t\t\t\thideMissingUpdates: false,\n\t\t\t\thideAvailableUpdates: true,\n\t\t\t\topenedWhatsNew: false,\n\t\t\t};\n\t\t},\n\n\t\t_$el: null,\n\t\t_$releaseChannel: null,\n\t\t_$notifyGroups: null,\n\n\t\twatch: {\n\t\t\tnotifyGroups: function(selectedOptions) {\n\t\t\t\tif (!this.enableChangeWatcher) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar selectedGroups = [];\n\t\t\t\t_.each(selectedOptions, function(group) {\n\t\t\t\t\tselectedGroups.push(group.value);\n\t\t\t\t});\n\n\t\t\t\tOCP.AppConfig.setValue('updatenotification', 'notify_groups', JSON.stringify(selectedGroups));\n\t\t\t},\n\t\t\tisNewVersionAvailable: function() {\n\t\t\t\tif (!this.isNewVersionAvailable) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: OC.linkToOCS('apps/updatenotification/api/v1/applist', 2) + this.newVersionString,\n\t\t\t\t\ttype: 'GET',\n\t\t\t\t\tbeforeSend: function (request) {\n\t\t\t\t\t\trequest.setRequestHeader('Accept', 'application/json');\n\t\t\t\t\t},\n\t\t\t\t\tsuccess: function(response) {\n\t\t\t\t\t\tthis.availableAppUpdates = response.ocs.data.available;\n\t\t\t\t\t\tthis.missingAppUpdates = response.ocs.data.missing;\n\t\t\t\t\t\tthis.isListFetched = true;\n\t\t\t\t\t\tthis.appStoreFailed = false;\n\t\t\t\t\t}.bind(this),\n\t\t\t\t\terror: function(xhr) {\n\t\t\t\t\t\tthis.availableAppUpdates = [];\n\t\t\t\t\t\tthis.missingAppUpdates = [];\n\t\t\t\t\t\tthis.appStoreDisabled = xhr.responseJSON.ocs.data.appstore_disabled;\n\t\t\t\t\t\tthis.isListFetched = true;\n\t\t\t\t\t\tthis.appStoreFailed = true;\n\t\t\t\t\t}.bind(this)\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\n\t\tcomputed: {\n\t\t\tnewVersionAvailableString: function() {\n\t\t\t\treturn t('updatenotification', 'A new version is available: <strong>{newVersionString}</strong>', {\n\t\t\t\t\tnewVersionString: this.newVersionString\n\t\t\t\t});\n\t\t\t},\n\n\t\t\tlastCheckedOnString: function() {\n\t\t\t\treturn t('updatenotification', 'Checked on {lastCheckedDate}', {\n\t\t\t\t\tlastCheckedDate: this.lastCheckedDate\n\t\t\t\t});\n\t\t\t},\n\n\t\t\tstatusText: function() {\n\t\t\t\tif (!this.isListFetched) {\n\t\t\t\t\treturn t('updatenotification', 'Checking apps for compatible updates');\n\t\t\t\t}\n\n\t\t\t\tif (this.appstoreDisabled) {\n\t\t\t\t\treturn t('updatenotification', 'Please make sure your config.php does not set <samp>appstoreenabled</samp> to false.');\n\t\t\t\t}\n\n\t\t\t\tif (this.appstoreFailed) {\n\t\t\t\t\treturn t('updatenotification', 'Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore.');\n\t\t\t\t}\n\n\t\t\t\treturn this.missingAppUpdates.length === 0 ? t('updatenotification', '<strong>All</strong> apps have an update for this version available', this) : n('updatenotification',\n\t\t\t\t\t'<strong>%n</strong> app has no update for this version available',\n\t\t\t\t\t'<strong>%n</strong> apps have no update for this version available',\n\t\t\t\t\tthis.missingAppUpdates.length, {\n\t\t\t\t\t\tversion: this.newVersionString\n\t\t\t\t\t});\n\t\t\t},\n\n\t\t\tproductionInfoString: function() {\n\t\t\t\treturn t('updatenotification', '<strong>production</strong> will always provide the latest patch level, but not update to the next major release immediately. That update usually happens with the second minor release (x.0.2).');\n\t\t\t},\n\n\t\t\tstableInfoString: function() {\n\t\t\t\treturn t('updatenotification', '<strong>stable</strong> is the most recent stable version. It is suited for regular use and will always update to the latest major version.');\n\t\t\t},\n\n\t\t\tbetaInfoString: function() {\n\t\t\t\treturn t('updatenotification', '<strong>beta</strong> is a pre-release version only for testing new features, not for production environments.');\n\t\t\t},\n\n\t\t\twhatsNew: function () {\n\t\t\t\tif(this.whatsNewData.length === 0) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tvar whatsNew = [];\n\t\t\t\tfor (var i in this.whatsNewData) {\n\t\t\t\t\twhatsNew[i] = { icon: 'icon-checkmark', longtext: this.whatsNewData[i] };\n\t\t\t\t}\n\t\t\t\tif(this.changelogURL) {\n\t\t\t\t\twhatsNew.push({\n\t\t\t\t\t\thref: this.changelogURL,\n\t\t\t\t\t\ttext: t('updatenotificaiton', 'View changelog'),\n\t\t\t\t\t\ticon: 'icon-link',\n\t\t\t\t\t\ttarget: '_blank',\n\t\t\t\t\t\taction: ''\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn whatsNew;\n\t\t\t}\n\t\t},\n\n\t\tmethods: {\n\t\t\t/**\n\t\t\t * Creates a new authentication token and loads the updater URL\n\t\t\t */\n\t\t\tclickUpdaterButton: function() {\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: OC.generateUrl('/apps/updatenotification/credentials')\n\t\t\t\t}).success(function(data) {\n\t\t\t\t\t$.ajax({\n\t\t\t\t\t\turl: OC.getRootPath()+'/updater/',\n\t\t\t\t\t\theaders: {\n\t\t\t\t\t\t\t'X-Updater-Auth': data\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\t\tsuccess: function(data){\n\t\t\t\t\t\t\tif(data !== 'false') {\n\t\t\t\t\t\t\t\tvar body = $('body');\n\t\t\t\t\t\t\t\t$('head').remove();\n\t\t\t\t\t\t\t\tbody.html(data);\n\n\t\t\t\t\t\t\t\t// Eval the script elements in the response\n\t\t\t\t\t\t\t\tvar dom = $(data);\n\t\t\t\t\t\t\t\tdom.filter('script').each(function() {\n\t\t\t\t\t\t\t\t\teval(this.text || this.textContent || this.innerHTML || '');\n\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\tbody.removeAttr('id');\n\t\t\t\t\t\t\t\tbody.attr('id', 'body-settings');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\terror: function() {\n\t\t\t\t\t\t\tOC.Notification.showTemporary(t('updatenotification', 'Could not start updater, please try the manual update'));\n\t\t\t\t\t\t\tthis.updaterEnabled = false;\n\t\t\t\t\t\t}.bind(this)\n\t\t\t\t\t});\n\t\t\t\t}.bind(this));\n\t\t\t},\n\t\t\tchangeReleaseChannel: function() {\n\t\t\t\tthis.currentChannel = this._$releaseChannel.val();\n\n\t\t\t\t$.ajax({\n\t\t\t\t\turl: OC.generateUrl('/apps/updatenotification/channel'),\n\t\t\t\t\ttype: 'POST',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\t'channel': this.currentChannel\n\t\t\t\t\t},\n\t\t\t\t\tsuccess: function (data) {\n\t\t\t\t\t\tOC.msg.finishedAction('#channel_save_msg', data);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t},\n\t\t\ttoggleHideMissingUpdates: function() {\n\t\t\t\tthis.hideMissingUpdates = !this.hideMissingUpdates;\n\t\t\t},\n\t\t\ttoggleHideAvailableUpdates: function() {\n\t\t\t\tthis.hideAvailableUpdates = !this.hideAvailableUpdates;\n\t\t\t},\n\t\t\ttoggleMenu: function() {\n\t\t\t\tthis.openedWhatsNew = !this.openedWhatsNew;\n\t\t\t},\n\t\t\thideMenu: function() {\n\t\t\t\tthis.openedWhatsNew = false;\n\t\t\t},\n\t\t},\n\t\tbeforeMount: function() {\n\t\t\t// Parse server data\n\t\t\tvar data = JSON.parse($('#updatenotification').attr('data-json'));\n\n\t\t\tthis.newVersionString = data.newVersionString;\n\t\t\tthis.lastCheckedDate = data.lastChecked;\n\t\t\tthis.isUpdateChecked = data.isUpdateChecked;\n\t\t\tthis.updaterEnabled = data.updaterEnabled;\n\t\t\tthis.downloadLink = data.downloadLink;\n\t\t\tthis.isNewVersionAvailable = data.isNewVersionAvailable;\n\t\t\tthis.updateServerURL = data.updateServerURL;\n\t\t\tthis.currentChannel = data.currentChannel;\n\t\t\tthis.channels = data.channels;\n\t\t\tthis.notifyGroups = data.notifyGroups;\n\t\t\tthis.isDefaultUpdateServerURL = data.isDefaultUpdateServerURL;\n\t\t\tthis.versionIsEol = data.versionIsEol;\n\t\t\tif(data.changes && data.changes.changelogURL) {\n\t\t\t\tthis.changelogURL = data.changes.changelogURL;\n\t\t\t}\n\t\t\tif(data.changes && data.changes.whatsNew) {\n\t\t\t\tif(data.changes.whatsNew.admin) {\n\t\t\t\t\tthis.whatsNewData = this.whatsNewData.concat(data.changes.whatsNew.admin);\n\t\t\t\t}\n\t\t\t\tthis.whatsNewData = this.whatsNewData.concat(data.changes.whatsNew.regular);\n\t\t\t}\n\t\t},\n\t\tmounted: function () {\n\t\t\tthis._$el = $(this.$el);\n\t\t\tthis._$releaseChannel = this._$el.find('#release-channel');\n\t\t\tthis._$notifyGroups = this._$el.find('#oca_updatenotification_groups_list');\n\t\t\tthis._$notifyGroups.on('change', function () {\n\t\t\t\tthis.$emit('input');\n\t\t\t}.bind(this));\n\n\t\t\t$.ajax({\n\t\t\t\turl: OC.linkToOCS('cloud', 2)+ '/groups',\n\t\t\t\tdataType: 'json',\n\t\t\t\tsuccess: function(data) {\n\t\t\t\t\tvar results = [];\n\t\t\t\t\t$.each(data.ocs.data.groups, function(i, group) {\n\t\t\t\t\t\tresults.push({value: group, label: group});\n\t\t\t\t\t});\n\n\t\t\t\t\tthis.availableGroups = results;\n\t\t\t\t\tthis.enableChangeWatcher = true;\n\t\t\t\t}.bind(this)\n\t\t\t});\n\t\t},\n\n\t\tupdated: function () {\n\t\t\tthis._$el.find('.icon-info').tooltip({placement: 'right'});\n\t\t}\n\t}\n</script>\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || Function(\"return this\")() || (1, eval)(\"this\");\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","/*!\n * Vue.js v2.5.17\n * (c) 2014-2018 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// these helpers produces better vm code in JS engines due to their\n// explicitness and function inlining\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value e.g. [object Object]\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : typeof val === 'object'\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert a input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if a attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether the object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it... e.g.\n * PhantomJS 1.x. Technically we don't need this anymore since native bind is\n * now more performant in most browsers, but removing it would be breaking for\n * code that was able to run in PhantomJS 1.x, so this must be kept for\n * backwards compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/)\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/**\n * Return same value\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a static keys string from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured'\n];\n\n/* */\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n})\n\n/* */\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = /[^\\w.$]/;\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = (function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm || {};\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// the current target watcher being evaluated.\n// this is globally unique because there could be only one\n// watcher being evaluated at any time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (_target) {\n if (Dep.target) { targetStack.push(Dep.target); }\n Dep.target = _target;\n}\n\nfunction popTarget () {\n Dep.target = targetStack.pop();\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n vnode.children,\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n var augment = hasProto\n ? protoAugment\n : copyAugment;\n augment(value, arrayMethods, arrayKeys);\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through each property and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment an target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src, keys) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment an target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n if (!getter && arguments.length === 2) {\n val = obj[key];\n }\n var setter = property && property.set;\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n var keys = Object.keys(from);\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (isPlainObject(toVal) && isPlainObject(fromVal)) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n return childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!/^[a-zA-Z][\\w-]*$/.test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'can only contain alphanumeric characters and the hyphen, ' +\n 'and must start with a letter.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def = dirs[key];\n if (typeof def === 'function') {\n dirs[key] = { bind: def, update: def };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n var extendsFrom = child.extends;\n if (extendsFrom) {\n parent = mergeOptions(parent, extendsFrom, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false && isObject(value) && ('@binding' in value))\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n if (!valid) {\n warn(\n \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', ')) +\n \", got \" + (toRawType(value)) + \".\",\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n logError(e, null, 'config.errorHandler');\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n/* globals MessageChannel */\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using both microtasks and (macro) tasks.\n// In < 2.4 we used microtasks everywhere, but there are some scenarios where\n// microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690) or even between bubbling of the same\n// event (#6566). However, using (macro) tasks everywhere also has subtle problems\n// when state is changed right before repaint (e.g. #6813, out-in transitions).\n// Here we use microtask by default, but expose a way to force (macro) task when\n// needed (e.g. in event handlers attached by v-on).\nvar microTimerFunc;\nvar macroTimerFunc;\nvar useMacroTask = false;\n\n// Determine (macro) task defer implementation.\n// Technically setImmediate should be the ideal choice, but it's only available\n// in IE. The only polyfill that consistently queues the callback after all DOM\n// events triggered in the same loop is by using MessageChannel.\n/* istanbul ignore if */\nif (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n macroTimerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else if (typeof MessageChannel !== 'undefined' && (\n isNative(MessageChannel) ||\n // PhantomJS\n MessageChannel.toString() === '[object MessageChannelConstructor]'\n)) {\n var channel = new MessageChannel();\n var port = channel.port2;\n channel.port1.onmessage = flushCallbacks;\n macroTimerFunc = function () {\n port.postMessage(1);\n };\n} else {\n /* istanbul ignore next */\n macroTimerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\n// Determine microtask defer implementation.\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n microTimerFunc = function () {\n p.then(flushCallbacks);\n // in problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n} else {\n // fallback to macro\n microTimerFunc = macroTimerFunc;\n}\n\n/**\n * Wrap a function so that if any code inside triggers state change,\n * the changes are queued using a (macro) task instead of a microtask.\n */\nfunction withMacroTask (fn) {\n return fn._withTask || (fn._withTask = function () {\n useMacroTask = true;\n var res = fn.apply(null, arguments);\n useMacroTask = false;\n return res\n })\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n if (useMacroTask) {\n macroTimerFunc();\n } else {\n microTimerFunc();\n }\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n perf.clearMeasures(name);\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) || key.charAt(0) === '_';\n if (!has && !isAllowed) {\n warnNonPresent(target, key);\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n warnNonPresent(target, key);\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n cloned[i].apply(null, arguments$1);\n }\n } else {\n // return handler return value for single handlers\n return fns.apply(null, arguments)\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n vm\n) {\n var name, def, cur, old, event;\n for (name in on) {\n def = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n /* istanbul ignore if */\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur);\n }\n add(event.name, cur, event.once, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor,\n context\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (isDef(factory.contexts)) {\n // already pending\n factory.contexts.push(context);\n } else {\n var contexts = factory.contexts = [context];\n var sync = true;\n\n var forceRender = function () {\n for (var i = 0, l = contexts.length; i < l; i++) {\n contexts[i].$forceUpdate();\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender();\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender();\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (typeof res.then === 'function') {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isDef(res.component) && typeof res.component.then === 'function') {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n setTimeout(function () {\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender();\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n setTimeout(function () {\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn, once) {\n if (once) {\n target.$once(event, fn);\n } else {\n target.$on(event, fn);\n }\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var this$1 = this;\n\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n this$1.$off(event[i], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n if (fn) {\n // specific handler\n var cb;\n var i$1 = cbs.length;\n while (i$1--) {\n cb = cbs[i$1];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i$1, 1);\n break\n }\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n for (var i = 0, l = cbs.length; i < l; i++) {\n try {\n cbs[i].apply(vm, args);\n } catch (e) {\n handleError(e, vm, (\"event handler for \\\"\" + event + \"\\\"\"));\n }\n }\n }\n return vm\n };\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n var slots = {};\n if (!children) {\n return slots\n }\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res\n) {\n res = res || {};\n for (var i = 0; i < fns.length; i++) {\n if (Array.isArray(fns[i])) {\n resolveScopedSlots(fns[i], res);\n } else {\n res[fns[i].key] = fns[i].fn;\n }\n }\n return res\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n if (vm._isMounted) {\n callHook(vm, 'beforeUpdate');\n }\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(\n vm.$el, vnode, hydrating, false /* removeOnly */,\n vm.$options._parentElm,\n vm.$options._refElm\n );\n // no need for the ref nodes after initial patch\n // this prevents keeping a detached DOM tree in memory (#5851)\n vm.$options._parentElm = vm.$options._refElm = null;\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n activeInstance = prevActiveInstance;\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, null, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren\n var hasChildren = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n parentVnode.data.scopedSlots || // has new scoped slots\n vm.$scopedSlots !== emptyObject // has old scoped slots\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (hasChildren) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n try {\n handlers[i].call(vm);\n } catch (e) {\n handleError(e, vm, (hook + \" hook\"));\n }\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\nvar uid$1 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$1; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = function () {};\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n var dep = this$1.deps[i];\n if (!this$1.newDepIds.has(dep.id)) {\n dep.removeSub(this$1);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var this$1 = this;\n\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n var this$1 = this;\n\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this$1.deps[i].removeSub(this$1);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive(props, key, value, function () {\n if (vm.$parent && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : userDef;\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : userDef.get\n : noop;\n sharedPropertyDefinition.set = userDef.set\n ? userDef.set\n : noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (methods[key] == null) {\n warn(\n \"Method \\\"\" + key + \"\\\" has an undefined value in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = methods[key] == null ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function (newData) {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n cb.call(vm, watcher.value);\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject).filter(function (key) {\n /* istanbul ignore next */\n return Object.getOwnPropertyDescriptor(inject, key).enumerable\n })\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n if (isDef(ret)) {\n (ret)._isVList = true;\n }\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n var slotNodes = this.$slots[name];\n // warn duplicate slot usage\n if (slotNodes) {\n if (process.env.NODE_ENV !== 'production' && slotNodes._rendered) {\n warn(\n \"Duplicate presence of slot \\\"\" + name + \"\\\" found in the same render tree \" +\n \"- this will likely cause render errors.\",\n this\n );\n }\n slotNodes._rendered = true;\n }\n nodes = slotNodes || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n if (!(key in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () { return resolveSlots(children, parent); };\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = data.scopedSlots || emptyObject;\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n\n\n\n// Register the component hook to weex native render engine.\n// The hook will be triggered by native, not javascript.\n\n\n// Updates the state of the component to weex native render engine.\n\n/* */\n\n// https://github.com/Hanks10100/weex-native-directive/tree/master/component\n\n// listening on native callback\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (\n vnode,\n hydrating,\n parentElm,\n refElm\n ) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance,\n parentElm,\n refElm\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor, context);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n // Weex specific: invoke recycle-list optimized @render function for\n // extracting cell-slot template.\n // https://github.com/Hanks10100/weex-native-directive/tree/master/component\n /* istanbul ignore if */\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent, // activeInstance in lifecycle state\n parentElm,\n refElm\n) {\n var options = {\n _isComponent: true,\n parent: parent,\n _parentVnode: vnode,\n _parentElm: parentElm || null,\n _refElm: refElm || null\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n hooks[key] = componentVNodeHooks[key];\n }\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input';(data.props || (data.props = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n if (isDef(on[event])) {\n on[event] = [data.model.callback].concat(on[event]);\n } else {\n on[event] = data.model.callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if (isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n // reset _rendered flag on slots for duplicate slot check\n if (process.env.NODE_ENV !== 'production') {\n for (var key in vm.$slots) {\n // $flow-disable-line\n vm.$slots[key]._rendered = false;\n }\n }\n\n if (_parentVnode) {\n vm.$scopedSlots = _parentVnode.data.scopedSlots || emptyObject;\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n if (vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n opts._parentElm = options._parentElm;\n opts._refElm = options._refElm;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var extended = Ctor.extendOptions;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = dedupe(latest[key], extended[key], sealed[key]);\n }\n }\n return modified\n}\n\nfunction dedupe (latest, extended, sealed) {\n // compare latest and sealed to ensure lifecycle hooks won't be duplicated\n // between merges\n if (Array.isArray(latest)) {\n var res = [];\n sealed = Array.isArray(sealed) ? sealed : [sealed];\n extended = Array.isArray(extended) ? extended : [extended];\n for (var i = 0; i < latest.length; i++) {\n // push original options and not sealed options to exclude duplicated options\n if (extended.indexOf(latest[i]) >= 0 || sealed.indexOf(latest[i]) < 0) {\n res.push(latest[i]);\n }\n }\n return res\n } else {\n return latest\n }\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n var this$1 = this;\n\n for (var key in this$1.cache) {\n pruneCacheEntry(this$1.cache, key, this$1.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n}\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n}\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.5.17';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\n\nvar nodeOps = Object.freeze({\n\tcreateElement: createElement$1,\n\tcreateElementNS: createElementNS,\n\tcreateTextNode: createTextNode,\n\tcreateComment: createComment,\n\tinsertBefore: insertBefore,\n\tremoveChild: removeChild,\n\tappendChild: appendChild,\n\tparentNode: parentNode,\n\tnextSibling: nextSibling,\n\ttagName: tagName,\n\tsetTextContent: setTextContent,\n\tsetStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n}\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove () {\n if (--remove.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove.listeners = listeners;\n return remove\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */, parentElm, refElm);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (ref$$1.parentNode === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (oldVnode, vnode, insertedVnodeQueue, removeOnly) {\n if (oldVnode === vnode) {\n return\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly, parentElm, refElm) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue, parentElm, refElm);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm$1 = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm$1,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm$1)) {\n removeVnodes(parentElm$1, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n}\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n]\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, isFalsyAttrValue(value) || value === 'false' ? 'false' : 'true');\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n}\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n}\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + (args !== ')' ? ',' + args : args))\n }\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n el.plain = false;\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n el.plain = false;\n}\n\n// add a raw attr (use this in preTransforms)\nfunction addRawAttr (el, name, value) {\n el.attrsMap[name] = value;\n el.attrsList.push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n el.plain = false;\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn\n) {\n modifiers = modifiers || emptyObject;\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.'\n );\n }\n\n // check capture modifier\n if (modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n /* istanbul ignore if */\n if (modifiers.passive) {\n delete modifiers.passive;\n name = '&' + name; // mark the event as passive\n }\n\n // normalize click.right and click.middle since they don't actually fire\n // this is technically browser-specific, but at least for now browsers are\n // the only target envs that have right/middle clicks.\n if (name === 'click') {\n if (modifiers.right) {\n name = 'contextmenu';\n delete modifiers.right;\n } else if (modifiers.middle) {\n name = 'mouseup';\n }\n }\n\n var events;\n if (modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n\n var newHandler = {\n value: value.trim()\n };\n if (modifiers !== emptyObject) {\n newHandler.modifiers = modifiers;\n }\n\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n\n el.plain = false;\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: (\"\\\"\" + value + \"\\\"\"),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n\n\nfunction parseModel (val) {\n // Fix https://github.com/vuejs/vue/pull/7730\n // allow v-model=\"obj.val \" (trailing whitespace)\n val = val.trim();\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\"\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.'\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + (genAssignmentCode(value, '$$a.concat([$$v])')) + \")}\" +\n \"else{$$i>-1&&(\" + (genAssignmentCode(value, '$$a.slice(0,$$i).concat($$a.slice($$i+1))')) + \")}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n\n // warn if v-bind:value conflicts with v-model\n // except for inputs with v-bind:type\n if (process.env.NODE_ENV !== 'production') {\n var value$1 = el.attrsMap['v-bind:value'] || el.attrsMap[':value'];\n var typeBinding = el.attrsMap['v-bind:type'] || el.attrsMap[':type'];\n if (value$1 && !typeBinding) {\n var binding = el.attrsMap['v-bind:value'] ? 'v-bind:value' : ':value';\n warn$1(\n binding + \"=\\\"\" + value$1 + \"\\\" conflicts with v-model on the same element \" +\n 'because the latter already expands to a value binding internally'\n );\n }\n }\n\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler (handler, event, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\nfunction add$1 (\n event,\n handler,\n once$$1,\n capture,\n passive\n) {\n handler = withMacroTask(handler);\n if (once$$1) { handler = createOnceHandler(handler, event, capture); }\n target$1.addEventListener(\n event,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n event,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n event,\n handler._withTask || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n}\n\n/* */\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (isUndef(props[key])) {\n elm[key] = '';\n }\n }\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else {\n elm[key] = cur;\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.lazy) {\n // inputs with lazy should only be updated when not in focus\n return false\n }\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n}\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(name, val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n}\n\n/* */\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(/\\s+/).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def) {\n if (!def) {\n return\n }\n /* istanbul ignore else */\n if (typeof def === 'object') {\n var res = {};\n if (def.css !== false) {\n extend(res, autoCssTransition(def.name || 'v'));\n }\n extend(res, def);\n return res\n } else if (typeof def === 'string') {\n return autoCssTransition(def)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n var transitionDelays = styles[transitionProp + 'Delay'].split(', ');\n var transitionDurations = styles[transitionProp + 'Duration'].split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = styles[animationProp + 'Delay'].split(', ');\n var animationDurations = styles[animationProp + 'Duration'].split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\nfunction toMs (s) {\n return Number(s.slice(0, -1)) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n transitionNode = transitionNode.parent;\n context = transitionNode.context;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {}\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n]\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n}\n\nvar platformDirectives = {\n model: directive,\n show: show\n}\n\n/* */\n\n// Provides transition support for a single element/component.\n// supports transition mode (out-in / in-out)\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(function (c) { return c.tag || isAsyncPlaceholder(c); });\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(function (d) { return d.name === 'show'; })) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n}\n\n/* */\n\n// Provides transition support for list items.\n// supports move transitions using the FLIP technique.\n\n// Because the vdom's children update algorithm is \"unstable\" - i.e.\n// it doesn't guarantee the relative positioning of removed elements,\n// we force transition-group to update its children into two passes:\n// in the first pass, we remove all nodes that need to be removed,\n// triggering their leaving transition; in the second pass, we insert/move\n// into the final desired state. This way in the second pass removed\n// nodes will remain where they should be.\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n beforeUpdate: function beforeUpdate () {\n // force removing pass\n this.__patch__(\n this._vnode,\n this.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this._vnode = this.kept;\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n}\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n}\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n isChrome\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\n\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var rawTokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index, tokenValue;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n rawTokens.push(tokenValue = text.slice(lastIndex, index));\n tokens.push(JSON.stringify(tokenValue));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n rawTokens.push({ '@binding': exp });\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n rawTokens.push(tokenValue = text.slice(lastIndex));\n tokens.push(JSON.stringify(tokenValue));\n }\n return {\n expression: tokens.join('+'),\n tokens: rawTokens\n }\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var res = parseText(staticClass, options.delimiters);\n if (res) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.'\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n}\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(staticStyle, options.delimiters);\n if (res) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.'\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n}\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n}\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n/*!\n * HTML Parser By John Resig (ejohn.org)\n * Modified by Juriy \"kangax\" Zaytsev\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\n// could use https://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-QName\n// but for Vue templates we can enforce a simple charset\nvar ncname = '[a-zA-Z_][\\\\w\\\\-\\\\.]*';\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\n// #7298: escape - to avoid being pased as HTML comment when inlined in page\nvar comment = /^<!\\--/;\nvar conditionalComment = /^<!\\[/;\n\nvar IS_REGEX_CAPTURING_BROKEN = false;\n'x'.replace(/x(.)?/g, function (m, g) {\n IS_REGEX_CAPTURING_BROKEN = g === '';\n});\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n',\n '&#9;': '\\t'\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#10|#9);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd));\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(lastTag, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!\\--([\\s\\S]*?)-->/g, '$1') // #7298\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"));\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n var shouldDecodeNewlines = tagName === 'a' && args[1] === 'href'\n ? options.shouldDecodeNewlinesForHref\n : options.shouldDecodeNewlines;\n attrs[i] = {\n name: args[1],\n value: decodeAttr(value, shouldDecodeNewlines)\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\")\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /([^]*?)\\s+(?:in|of)\\s+([^]*)/;\nvar forIteratorRE = /,([^,\\}\\]]*)(?:,([^,\\}\\]]*))?$/;\nvar stripParensRE = /^\\(|\\)$/g;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^v-bind:/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(he.decode);\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\n\n\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg) {\n if (!warned) {\n warned = true;\n warn$2(msg);\n }\n }\n\n function closeElement (element) {\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n // apply post-transforms\n for (var i = 0; i < postTransforms.length; i++) {\n postTransforms[i](element, options);\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,\n shouldKeepComment: options.comments,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.'\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n // element-scope stuff\n processElement(element, options);\n }\n\n function checkRootConstraints (el) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.'\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.'\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || '\"default\"';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n closeElement(element);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ' && !inPre) {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n closeElement(element);\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.'\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\")\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n text = inPre || text.trim()\n ? isTextTag(currentParent) ? text : decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && children.length ? ' ' : '';\n if (text) {\n var res;\n if (!inVPre && text !== ' ' && (res = parseText(text, delimiters))) {\n children.push({\n type: 2,\n expression: res.expression,\n tokens: res.tokens,\n text: text\n });\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n children.push({\n type: 3,\n text: text\n });\n }\n }\n },\n comment: function comment (text) {\n currentParent.children.push({\n type: 3,\n text: text,\n isComment: true\n });\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (element, options) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !element.attrsList.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production' && el.tag === 'template') {\n warn$2(\"<template> cannot be keyed. Place the key on real elements instead.\");\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var res = parseFor(exp);\n if (res) {\n extend(el, res);\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n (\"Invalid v-for expression: \" + exp)\n );\n }\n }\n}\n\n\n\nfunction parseFor (exp) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) { return }\n var res = {};\n res.for = inMatch[2].trim();\n var alias = inMatch[1].trim().replace(stripParensRE, '');\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n res.alias = alias.replace(forIteratorRE, '');\n res.iterator1 = iteratorMatch[1].trim();\n if (iteratorMatch[2]) {\n res.iterator2 = iteratorMatch[2].trim();\n }\n } else {\n res.alias = alias;\n }\n return res\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\"\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\"\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\nfunction processSlot (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\"\n );\n }\n } else {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && el.attrsMap['v-for']) {\n warn$2(\n \"Ambiguous combined usage of slot-scope and v-for on <\" + (el.tag) + \"> \" +\n \"(v-for takes higher priority). Use a wrapper <template> for the \" +\n \"scoped slot to make it clearer.\",\n true\n );\n }\n el.slotScope = slotScope;\n }\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (el.tag !== 'template' && !el.slotScope) {\n addAttr(el, 'slot', slotTarget);\n }\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, isProp;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name);\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isProp = false;\n if (modifiers) {\n if (modifiers.prop) {\n isProp = true;\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n genAssignmentCode(value, \"$event\")\n );\n }\n }\n if (isProp || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value);\n } else {\n addAttr(el, name, value);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n addHandler(el, name, value, modifiers, false, warn$2);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n }\n addDirective(el, name, rawName, value, arg, modifiers);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(value, delimiters);\n if (res) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.'\n );\n }\n }\n addAttr(el, name, JSON.stringify(value));\n // #6887 firefox doesn't update muted state if set via attribute\n // even immediately after element creation\n if (!el.component &&\n name === 'muted' &&\n platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, 'true');\n }\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n warn$2(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"You are binding v-model directly to a v-for iteration alias. \" +\n \"This will not be able to modify the v-for source array because \" +\n \"writing to the alias is like modifying a function local variable. \" +\n \"Consider using an array of objects and use v-model on an object property instead.\"\n );\n }\n _el = _el.parent;\n }\n}\n\n/* */\n\n/**\n * Expand input[v-model] with dyanmic type bindings into v-if-else chains\n * Turn this:\n * <input v-model=\"data[type]\" :type=\"type\">\n * into this:\n * <input v-if=\"type === 'checkbox'\" type=\"checkbox\" v-model=\"data[type]\">\n * <input v-else-if=\"type === 'radio'\" type=\"radio\" v-model=\"data[type]\">\n * <input v-else :type=\"type\" v-model=\"data[type]\">\n */\n\nfunction preTransformNode (el, options) {\n if (el.tag === 'input') {\n var map = el.attrsMap;\n if (!map['v-model']) {\n return\n }\n\n var typeBinding;\n if (map[':type'] || map['v-bind:type']) {\n typeBinding = getBindingAttr(el, 'type');\n }\n if (!map.type && !typeBinding && map['v-bind']) {\n typeBinding = \"(\" + (map['v-bind']) + \").type\";\n }\n\n if (typeBinding) {\n var ifCondition = getAndRemoveAttr(el, 'v-if', true);\n var ifConditionExtra = ifCondition ? (\"&&(\" + ifCondition + \")\") : \"\";\n var hasElse = getAndRemoveAttr(el, 'v-else', true) != null;\n var elseIfCondition = getAndRemoveAttr(el, 'v-else-if', true);\n // 1. checkbox\n var branch0 = cloneASTElement(el);\n // process for on the main node\n processFor(branch0);\n addRawAttr(branch0, 'type', 'checkbox');\n processElement(branch0, options);\n branch0.processed = true; // prevent it from double-processed\n branch0.if = \"(\" + typeBinding + \")==='checkbox'\" + ifConditionExtra;\n addIfCondition(branch0, {\n exp: branch0.if,\n block: branch0\n });\n // 2. add radio else-if condition\n var branch1 = cloneASTElement(el);\n getAndRemoveAttr(branch1, 'v-for', true);\n addRawAttr(branch1, 'type', 'radio');\n processElement(branch1, options);\n addIfCondition(branch0, {\n exp: \"(\" + typeBinding + \")==='radio'\" + ifConditionExtra,\n block: branch1\n });\n // 3. other\n var branch2 = cloneASTElement(el);\n getAndRemoveAttr(branch2, 'v-for', true);\n addRawAttr(branch2, ':type', typeBinding);\n processElement(branch2, options);\n addIfCondition(branch0, {\n exp: ifCondition,\n block: branch2\n });\n\n if (hasElse) {\n branch0.else = true;\n } else if (elseIfCondition) {\n branch0.elseif = elseIfCondition;\n }\n\n return branch0\n }\n }\n}\n\nfunction cloneASTElement (el) {\n return createASTElement(el.tag, el.attrsList.slice(), el.parent)\n}\n\nvar model$2 = {\n preTransformNode: preTransformNode\n}\n\nvar modules$1 = [\n klass$1,\n style$1,\n model$2\n]\n\n/* */\n\nfunction text (el, dir) {\n if (dir.value) {\n addProp(el, 'textContent', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\n/* */\n\nfunction html (el, dir) {\n if (dir.value) {\n addProp(el, 'innerHTML', (\"_s(\" + (dir.value) + \")\"));\n }\n}\n\nvar directives$1 = {\n model: model,\n text: text,\n html: html\n}\n\n/* */\n\nvar baseOptions = {\n expectHTML: true,\n modules: modules$1,\n directives: directives$1,\n isPreTag: isPreTag,\n isUnaryTag: isUnaryTag,\n mustUseProp: mustUseProp,\n canBeLeftOpenTag: canBeLeftOpenTag,\n isReservedTag: isReservedTag,\n getTagNamespace: getTagNamespace,\n staticKeys: genStaticKeys(modules$1)\n};\n\n/* */\n\nvar isStaticKey;\nvar isPlatformReservedTag;\n\nvar genStaticKeysCached = cached(genStaticKeys$1);\n\n/**\n * Goal of the optimizer: walk the generated template AST tree\n * and detect sub-trees that are purely static, i.e. parts of\n * the DOM that never needs to change.\n *\n * Once we detect these sub-trees, we can:\n *\n * 1. Hoist them into constants, so that we no longer need to\n * create fresh nodes for them on each re-render;\n * 2. Completely skip them in the patching process.\n */\nfunction optimize (root, options) {\n if (!root) { return }\n isStaticKey = genStaticKeysCached(options.staticKeys || '');\n isPlatformReservedTag = options.isReservedTag || no;\n // first pass: mark all non-static nodes.\n markStatic$1(root);\n // second pass: mark static roots.\n markStaticRoots(root, false);\n}\n\nfunction genStaticKeys$1 (keys) {\n return makeMap(\n 'type,tag,attrsList,attrsMap,plain,parent,children,attrs' +\n (keys ? ',' + keys : '')\n )\n}\n\nfunction markStatic$1 (node) {\n node.static = isStatic(node);\n if (node.type === 1) {\n // do not make component slot content static. this avoids\n // 1. components not able to mutate slot nodes\n // 2. static slot content fails for hot-reloading\n if (\n !isPlatformReservedTag(node.tag) &&\n node.tag !== 'slot' &&\n node.attrsMap['inline-template'] == null\n ) {\n return\n }\n for (var i = 0, l = node.children.length; i < l; i++) {\n var child = node.children[i];\n markStatic$1(child);\n if (!child.static) {\n node.static = false;\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n var block = node.ifConditions[i$1].block;\n markStatic$1(block);\n if (!block.static) {\n node.static = false;\n }\n }\n }\n }\n}\n\nfunction markStaticRoots (node, isInFor) {\n if (node.type === 1) {\n if (node.static || node.once) {\n node.staticInFor = isInFor;\n }\n // For a node to qualify as a static root, it should have children that\n // are not just static text. Otherwise the cost of hoisting out will\n // outweigh the benefits and it's better off to just always render it fresh.\n if (node.static && node.children.length && !(\n node.children.length === 1 &&\n node.children[0].type === 3\n )) {\n node.staticRoot = true;\n return\n } else {\n node.staticRoot = false;\n }\n if (node.children) {\n for (var i = 0, l = node.children.length; i < l; i++) {\n markStaticRoots(node.children[i], isInFor || !!node.for);\n }\n }\n if (node.ifConditions) {\n for (var i$1 = 1, l$1 = node.ifConditions.length; i$1 < l$1; i$1++) {\n markStaticRoots(node.ifConditions[i$1].block, isInFor);\n }\n }\n }\n}\n\nfunction isStatic (node) {\n if (node.type === 2) { // expression\n return false\n }\n if (node.type === 3) { // text\n return true\n }\n return !!(node.pre || (\n !node.hasBindings && // no dynamic bindings\n !node.if && !node.for && // not v-if or v-for or v-else\n !isBuiltInTag(node.tag) && // not a built-in\n isPlatformReservedTag(node.tag) && // not a component\n !isDirectChildOfTemplateFor(node) &&\n Object.keys(node).every(isStaticKey)\n ))\n}\n\nfunction isDirectChildOfTemplateFor (node) {\n while (node.parent) {\n node = node.parent;\n if (node.tag !== 'template') {\n return false\n }\n if (node.for) {\n return true\n }\n }\n return false\n}\n\n/* */\n\nvar fnExpRE = /^([\\w$_]+|\\([^)]*?\\))\\s*=>|^function\\s*\\(/;\nvar simplePathRE = /^[A-Za-z_$][\\w$]*(?:\\.[A-Za-z_$][\\w$]*|\\['[^']*?']|\\[\"[^\"]*?\"]|\\[\\d+]|\\[[A-Za-z_$][\\w$]*])*$/;\n\n// KeyboardEvent.keyCode aliases\nvar keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n};\n\n// KeyboardEvent.key aliases\nvar keyNames = {\n esc: 'Escape',\n tab: 'Tab',\n enter: 'Enter',\n space: ' ',\n // #7806: IE11 uses key names without `Arrow` prefix for arrow keys.\n up: ['Up', 'ArrowUp'],\n left: ['Left', 'ArrowLeft'],\n right: ['Right', 'ArrowRight'],\n down: ['Down', 'ArrowDown'],\n 'delete': ['Backspace', 'Delete']\n};\n\n// #4868: modifiers that prevent the execution of the listener\n// need to explicitly return null so that we can determine whether to remove\n// the listener for .once\nvar genGuard = function (condition) { return (\"if(\" + condition + \")return null;\"); };\n\nvar modifierCode = {\n stop: '$event.stopPropagation();',\n prevent: '$event.preventDefault();',\n self: genGuard(\"$event.target !== $event.currentTarget\"),\n ctrl: genGuard(\"!$event.ctrlKey\"),\n shift: genGuard(\"!$event.shiftKey\"),\n alt: genGuard(\"!$event.altKey\"),\n meta: genGuard(\"!$event.metaKey\"),\n left: genGuard(\"'button' in $event && $event.button !== 0\"),\n middle: genGuard(\"'button' in $event && $event.button !== 1\"),\n right: genGuard(\"'button' in $event && $event.button !== 2\")\n};\n\nfunction genHandlers (\n events,\n isNative,\n warn\n) {\n var res = isNative ? 'nativeOn:{' : 'on:{';\n for (var name in events) {\n res += \"\\\"\" + name + \"\\\":\" + (genHandler(name, events[name])) + \",\";\n }\n return res.slice(0, -1) + '}'\n}\n\nfunction genHandler (\n name,\n handler\n) {\n if (!handler) {\n return 'function(){}'\n }\n\n if (Array.isArray(handler)) {\n return (\"[\" + (handler.map(function (handler) { return genHandler(name, handler); }).join(',')) + \"]\")\n }\n\n var isMethodPath = simplePathRE.test(handler.value);\n var isFunctionExpression = fnExpRE.test(handler.value);\n\n if (!handler.modifiers) {\n if (isMethodPath || isFunctionExpression) {\n return handler.value\n }\n /* istanbul ignore if */\n return (\"function($event){\" + (handler.value) + \"}\") // inline statement\n } else {\n var code = '';\n var genModifierCode = '';\n var keys = [];\n for (var key in handler.modifiers) {\n if (modifierCode[key]) {\n genModifierCode += modifierCode[key];\n // left/right\n if (keyCodes[key]) {\n keys.push(key);\n }\n } else if (key === 'exact') {\n var modifiers = (handler.modifiers);\n genModifierCode += genGuard(\n ['ctrl', 'shift', 'alt', 'meta']\n .filter(function (keyModifier) { return !modifiers[keyModifier]; })\n .map(function (keyModifier) { return (\"$event.\" + keyModifier + \"Key\"); })\n .join('||')\n );\n } else {\n keys.push(key);\n }\n }\n if (keys.length) {\n code += genKeyFilter(keys);\n }\n // Make sure modifiers like prevent and stop get executed after key filtering\n if (genModifierCode) {\n code += genModifierCode;\n }\n var handlerCode = isMethodPath\n ? (\"return \" + (handler.value) + \"($event)\")\n : isFunctionExpression\n ? (\"return (\" + (handler.value) + \")($event)\")\n : handler.value;\n /* istanbul ignore if */\n return (\"function($event){\" + code + handlerCode + \"}\")\n }\n}\n\nfunction genKeyFilter (keys) {\n return (\"if(!('button' in $event)&&\" + (keys.map(genFilterCode).join('&&')) + \")return null;\")\n}\n\nfunction genFilterCode (key) {\n var keyVal = parseInt(key, 10);\n if (keyVal) {\n return (\"$event.keyCode!==\" + keyVal)\n }\n var keyCode = keyCodes[key];\n var keyName = keyNames[key];\n return (\n \"_k($event.keyCode,\" +\n (JSON.stringify(key)) + \",\" +\n (JSON.stringify(keyCode)) + \",\" +\n \"$event.key,\" +\n \"\" + (JSON.stringify(keyName)) +\n \")\"\n )\n}\n\n/* */\n\nfunction on (el, dir) {\n if (process.env.NODE_ENV !== 'production' && dir.modifiers) {\n warn(\"v-on without argument does not support modifiers.\");\n }\n el.wrapListeners = function (code) { return (\"_g(\" + code + \",\" + (dir.value) + \")\"); };\n}\n\n/* */\n\nfunction bind$1 (el, dir) {\n el.wrapData = function (code) {\n return (\"_b(\" + code + \",'\" + (el.tag) + \"',\" + (dir.value) + \",\" + (dir.modifiers && dir.modifiers.prop ? 'true' : 'false') + (dir.modifiers && dir.modifiers.sync ? ',true' : '') + \")\")\n };\n}\n\n/* */\n\nvar baseDirectives = {\n on: on,\n bind: bind$1,\n cloak: noop\n}\n\n/* */\n\nvar CodegenState = function CodegenState (options) {\n this.options = options;\n this.warn = options.warn || baseWarn;\n this.transforms = pluckModuleFunction(options.modules, 'transformCode');\n this.dataGenFns = pluckModuleFunction(options.modules, 'genData');\n this.directives = extend(extend({}, baseDirectives), options.directives);\n var isReservedTag = options.isReservedTag || no;\n this.maybeComponent = function (el) { return !isReservedTag(el.tag); };\n this.onceId = 0;\n this.staticRenderFns = [];\n};\n\n\n\nfunction generate (\n ast,\n options\n) {\n var state = new CodegenState(options);\n var code = ast ? genElement(ast, state) : '_c(\"div\")';\n return {\n render: (\"with(this){return \" + code + \"}\"),\n staticRenderFns: state.staticRenderFns\n }\n}\n\nfunction genElement (el, state) {\n if (el.staticRoot && !el.staticProcessed) {\n return genStatic(el, state)\n } else if (el.once && !el.onceProcessed) {\n return genOnce(el, state)\n } else if (el.for && !el.forProcessed) {\n return genFor(el, state)\n } else if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.tag === 'template' && !el.slotTarget) {\n return genChildren(el, state) || 'void 0'\n } else if (el.tag === 'slot') {\n return genSlot(el, state)\n } else {\n // component or element\n var code;\n if (el.component) {\n code = genComponent(el.component, el, state);\n } else {\n var data = el.plain ? undefined : genData$2(el, state);\n\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n code = \"_c('\" + (el.tag) + \"'\" + (data ? (\",\" + data) : '') + (children ? (\",\" + children) : '') + \")\";\n }\n // module transforms\n for (var i = 0; i < state.transforms.length; i++) {\n code = state.transforms[i](el, code);\n }\n return code\n }\n}\n\n// hoist static sub-trees out\nfunction genStatic (el, state) {\n el.staticProcessed = true;\n state.staticRenderFns.push((\"with(this){return \" + (genElement(el, state)) + \"}\"));\n return (\"_m(\" + (state.staticRenderFns.length - 1) + (el.staticInFor ? ',true' : '') + \")\")\n}\n\n// v-once\nfunction genOnce (el, state) {\n el.onceProcessed = true;\n if (el.if && !el.ifProcessed) {\n return genIf(el, state)\n } else if (el.staticInFor) {\n var key = '';\n var parent = el.parent;\n while (parent) {\n if (parent.for) {\n key = parent.key;\n break\n }\n parent = parent.parent;\n }\n if (!key) {\n process.env.NODE_ENV !== 'production' && state.warn(\n \"v-once can only be used inside v-for that is keyed. \"\n );\n return genElement(el, state)\n }\n return (\"_o(\" + (genElement(el, state)) + \",\" + (state.onceId++) + \",\" + key + \")\")\n } else {\n return genStatic(el, state)\n }\n}\n\nfunction genIf (\n el,\n state,\n altGen,\n altEmpty\n) {\n el.ifProcessed = true; // avoid recursion\n return genIfConditions(el.ifConditions.slice(), state, altGen, altEmpty)\n}\n\nfunction genIfConditions (\n conditions,\n state,\n altGen,\n altEmpty\n) {\n if (!conditions.length) {\n return altEmpty || '_e()'\n }\n\n var condition = conditions.shift();\n if (condition.exp) {\n return (\"(\" + (condition.exp) + \")?\" + (genTernaryExp(condition.block)) + \":\" + (genIfConditions(conditions, state, altGen, altEmpty)))\n } else {\n return (\"\" + (genTernaryExp(condition.block)))\n }\n\n // v-if with v-once should generate code like (a)?_m(0):_m(1)\n function genTernaryExp (el) {\n return altGen\n ? altGen(el, state)\n : el.once\n ? genOnce(el, state)\n : genElement(el, state)\n }\n}\n\nfunction genFor (\n el,\n state,\n altGen,\n altHelper\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n\n if (process.env.NODE_ENV !== 'production' &&\n state.maybeComponent(el) &&\n el.tag !== 'slot' &&\n el.tag !== 'template' &&\n !el.key\n ) {\n state.warn(\n \"<\" + (el.tag) + \" v-for=\\\"\" + alias + \" in \" + exp + \"\\\">: component lists rendered with \" +\n \"v-for should have explicit keys. \" +\n \"See https://vuejs.org/guide/list.html#key for more info.\",\n true /* tip */\n );\n }\n\n el.forProcessed = true; // avoid recursion\n return (altHelper || '_l') + \"((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + ((altGen || genElement)(el, state)) +\n '})'\n}\n\nfunction genData$2 (el, state) {\n var data = '{';\n\n // directives first.\n // directives may mutate the el's other properties before they are generated.\n var dirs = genDirectives(el, state);\n if (dirs) { data += dirs + ','; }\n\n // key\n if (el.key) {\n data += \"key:\" + (el.key) + \",\";\n }\n // ref\n if (el.ref) {\n data += \"ref:\" + (el.ref) + \",\";\n }\n if (el.refInFor) {\n data += \"refInFor:true,\";\n }\n // pre\n if (el.pre) {\n data += \"pre:true,\";\n }\n // record original tag name for components using \"is\" attribute\n if (el.component) {\n data += \"tag:\\\"\" + (el.tag) + \"\\\",\";\n }\n // module data generation functions\n for (var i = 0; i < state.dataGenFns.length; i++) {\n data += state.dataGenFns[i](el);\n }\n // attributes\n if (el.attrs) {\n data += \"attrs:{\" + (genProps(el.attrs)) + \"},\";\n }\n // DOM props\n if (el.props) {\n data += \"domProps:{\" + (genProps(el.props)) + \"},\";\n }\n // event handlers\n if (el.events) {\n data += (genHandlers(el.events, false, state.warn)) + \",\";\n }\n if (el.nativeEvents) {\n data += (genHandlers(el.nativeEvents, true, state.warn)) + \",\";\n }\n // slot target\n // only for non-scoped slots\n if (el.slotTarget && !el.slotScope) {\n data += \"slot:\" + (el.slotTarget) + \",\";\n }\n // scoped slots\n if (el.scopedSlots) {\n data += (genScopedSlots(el.scopedSlots, state)) + \",\";\n }\n // component v-model\n if (el.model) {\n data += \"model:{value:\" + (el.model.value) + \",callback:\" + (el.model.callback) + \",expression:\" + (el.model.expression) + \"},\";\n }\n // inline-template\n if (el.inlineTemplate) {\n var inlineTemplate = genInlineTemplate(el, state);\n if (inlineTemplate) {\n data += inlineTemplate + \",\";\n }\n }\n data = data.replace(/,$/, '') + '}';\n // v-bind data wrap\n if (el.wrapData) {\n data = el.wrapData(data);\n }\n // v-on data wrap\n if (el.wrapListeners) {\n data = el.wrapListeners(data);\n }\n return data\n}\n\nfunction genDirectives (el, state) {\n var dirs = el.directives;\n if (!dirs) { return }\n var res = 'directives:[';\n var hasRuntime = false;\n var i, l, dir, needRuntime;\n for (i = 0, l = dirs.length; i < l; i++) {\n dir = dirs[i];\n needRuntime = true;\n var gen = state.directives[dir.name];\n if (gen) {\n // compile-time directive that manipulates AST.\n // returns true if it also needs a runtime counterpart.\n needRuntime = !!gen(el, dir, state.warn);\n }\n if (needRuntime) {\n hasRuntime = true;\n res += \"{name:\\\"\" + (dir.name) + \"\\\",rawName:\\\"\" + (dir.rawName) + \"\\\"\" + (dir.value ? (\",value:(\" + (dir.value) + \"),expression:\" + (JSON.stringify(dir.value))) : '') + (dir.arg ? (\",arg:\\\"\" + (dir.arg) + \"\\\"\") : '') + (dir.modifiers ? (\",modifiers:\" + (JSON.stringify(dir.modifiers))) : '') + \"},\";\n }\n }\n if (hasRuntime) {\n return res.slice(0, -1) + ']'\n }\n}\n\nfunction genInlineTemplate (el, state) {\n var ast = el.children[0];\n if (process.env.NODE_ENV !== 'production' && (\n el.children.length !== 1 || ast.type !== 1\n )) {\n state.warn('Inline-template components must have exactly one child element.');\n }\n if (ast.type === 1) {\n var inlineRenderFns = generate(ast, state.options);\n return (\"inlineTemplate:{render:function(){\" + (inlineRenderFns.render) + \"},staticRenderFns:[\" + (inlineRenderFns.staticRenderFns.map(function (code) { return (\"function(){\" + code + \"}\"); }).join(',')) + \"]}\")\n }\n}\n\nfunction genScopedSlots (\n slots,\n state\n) {\n return (\"scopedSlots:_u([\" + (Object.keys(slots).map(function (key) {\n return genScopedSlot(key, slots[key], state)\n }).join(',')) + \"])\")\n}\n\nfunction genScopedSlot (\n key,\n el,\n state\n) {\n if (el.for && !el.forProcessed) {\n return genForScopedSlot(key, el, state)\n }\n var fn = \"function(\" + (String(el.slotScope)) + \"){\" +\n \"return \" + (el.tag === 'template'\n ? el.if\n ? ((el.if) + \"?\" + (genChildren(el, state) || 'undefined') + \":undefined\")\n : genChildren(el, state) || 'undefined'\n : genElement(el, state)) + \"}\";\n return (\"{key:\" + key + \",fn:\" + fn + \"}\")\n}\n\nfunction genForScopedSlot (\n key,\n el,\n state\n) {\n var exp = el.for;\n var alias = el.alias;\n var iterator1 = el.iterator1 ? (\",\" + (el.iterator1)) : '';\n var iterator2 = el.iterator2 ? (\",\" + (el.iterator2)) : '';\n el.forProcessed = true; // avoid recursion\n return \"_l((\" + exp + \"),\" +\n \"function(\" + alias + iterator1 + iterator2 + \"){\" +\n \"return \" + (genScopedSlot(key, el, state)) +\n '})'\n}\n\nfunction genChildren (\n el,\n state,\n checkSkip,\n altGenElement,\n altGenNode\n) {\n var children = el.children;\n if (children.length) {\n var el$1 = children[0];\n // optimize single v-for\n if (children.length === 1 &&\n el$1.for &&\n el$1.tag !== 'template' &&\n el$1.tag !== 'slot'\n ) {\n return (altGenElement || genElement)(el$1, state)\n }\n var normalizationType = checkSkip\n ? getNormalizationType(children, state.maybeComponent)\n : 0;\n var gen = altGenNode || genNode;\n return (\"[\" + (children.map(function (c) { return gen(c, state); }).join(',')) + \"]\" + (normalizationType ? (\",\" + normalizationType) : ''))\n }\n}\n\n// determine the normalization needed for the children array.\n// 0: no normalization needed\n// 1: simple normalization needed (possible 1-level deep nested array)\n// 2: full normalization needed\nfunction getNormalizationType (\n children,\n maybeComponent\n) {\n var res = 0;\n for (var i = 0; i < children.length; i++) {\n var el = children[i];\n if (el.type !== 1) {\n continue\n }\n if (needsNormalization(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return needsNormalization(c.block); }))) {\n res = 2;\n break\n }\n if (maybeComponent(el) ||\n (el.ifConditions && el.ifConditions.some(function (c) { return maybeComponent(c.block); }))) {\n res = 1;\n }\n }\n return res\n}\n\nfunction needsNormalization (el) {\n return el.for !== undefined || el.tag === 'template' || el.tag === 'slot'\n}\n\nfunction genNode (node, state) {\n if (node.type === 1) {\n return genElement(node, state)\n } if (node.type === 3 && node.isComment) {\n return genComment(node)\n } else {\n return genText(node)\n }\n}\n\nfunction genText (text) {\n return (\"_v(\" + (text.type === 2\n ? text.expression // no need for () because already wrapped in _s()\n : transformSpecialNewlines(JSON.stringify(text.text))) + \")\")\n}\n\nfunction genComment (comment) {\n return (\"_e(\" + (JSON.stringify(comment.text)) + \")\")\n}\n\nfunction genSlot (el, state) {\n var slotName = el.slotName || '\"default\"';\n var children = genChildren(el, state);\n var res = \"_t(\" + slotName + (children ? (\",\" + children) : '');\n var attrs = el.attrs && (\"{\" + (el.attrs.map(function (a) { return ((camelize(a.name)) + \":\" + (a.value)); }).join(',')) + \"}\");\n var bind$$1 = el.attrsMap['v-bind'];\n if ((attrs || bind$$1) && !children) {\n res += \",null\";\n }\n if (attrs) {\n res += \",\" + attrs;\n }\n if (bind$$1) {\n res += (attrs ? '' : ',null') + \",\" + bind$$1;\n }\n return res + ')'\n}\n\n// componentName is el.component, take it as argument to shun flow's pessimistic refinement\nfunction genComponent (\n componentName,\n el,\n state\n) {\n var children = el.inlineTemplate ? null : genChildren(el, state, true);\n return (\"_c(\" + componentName + \",\" + (genData$2(el, state)) + (children ? (\",\" + children) : '') + \")\")\n}\n\nfunction genProps (props) {\n var res = '';\n for (var i = 0; i < props.length; i++) {\n var prop = props[i];\n /* istanbul ignore if */\n {\n res += \"\\\"\" + (prop.name) + \"\\\":\" + (transformSpecialNewlines(prop.value)) + \",\";\n }\n }\n return res.slice(0, -1)\n}\n\n// #3895, #4268\nfunction transformSpecialNewlines (text) {\n return text\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029')\n}\n\n/* */\n\n// these keywords should not appear inside expressions, but operators like\n// typeof, instanceof and in are allowed\nvar prohibitedKeywordRE = new RegExp('\\\\b' + (\n 'do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,' +\n 'super,throw,while,yield,delete,export,import,return,switch,default,' +\n 'extends,finally,continue,debugger,function,arguments'\n).split(',').join('\\\\b|\\\\b') + '\\\\b');\n\n// these unary operators should not be used as property/method names\nvar unaryOperatorsRE = new RegExp('\\\\b' + (\n 'delete,typeof,void'\n).split(',').join('\\\\s*\\\\([^\\\\)]*\\\\)|\\\\b') + '\\\\s*\\\\([^\\\\)]*\\\\)');\n\n// strip strings in expressions\nvar stripStringRE = /'(?:[^'\\\\]|\\\\.)*'|\"(?:[^\"\\\\]|\\\\.)*\"|`(?:[^`\\\\]|\\\\.)*\\$\\{|\\}(?:[^`\\\\]|\\\\.)*`|`(?:[^`\\\\]|\\\\.)*`/g;\n\n// detect problematic expressions in a template\nfunction detectErrors (ast) {\n var errors = [];\n if (ast) {\n checkNode(ast, errors);\n }\n return errors\n}\n\nfunction checkNode (node, errors) {\n if (node.type === 1) {\n for (var name in node.attrsMap) {\n if (dirRE.test(name)) {\n var value = node.attrsMap[name];\n if (value) {\n if (name === 'v-for') {\n checkFor(node, (\"v-for=\\\"\" + value + \"\\\"\"), errors);\n } else if (onRE.test(name)) {\n checkEvent(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n } else {\n checkExpression(value, (name + \"=\\\"\" + value + \"\\\"\"), errors);\n }\n }\n }\n }\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n checkNode(node.children[i], errors);\n }\n }\n } else if (node.type === 2) {\n checkExpression(node.expression, node.text, errors);\n }\n}\n\nfunction checkEvent (exp, text, errors) {\n var stipped = exp.replace(stripStringRE, '');\n var keywordMatch = stipped.match(unaryOperatorsRE);\n if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {\n errors.push(\n \"avoid using JavaScript unary operator as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\" in expression \" + (text.trim())\n );\n }\n checkExpression(exp, text, errors);\n}\n\nfunction checkFor (node, text, errors) {\n checkExpression(node.for || '', text, errors);\n checkIdentifier(node.alias, 'v-for alias', text, errors);\n checkIdentifier(node.iterator1, 'v-for iterator', text, errors);\n checkIdentifier(node.iterator2, 'v-for iterator', text, errors);\n}\n\nfunction checkIdentifier (\n ident,\n type,\n text,\n errors\n) {\n if (typeof ident === 'string') {\n try {\n new Function((\"var \" + ident + \"=_\"));\n } catch (e) {\n errors.push((\"invalid \" + type + \" \\\"\" + ident + \"\\\" in expression: \" + (text.trim())));\n }\n }\n}\n\nfunction checkExpression (exp, text, errors) {\n try {\n new Function((\"return \" + exp));\n } catch (e) {\n var keywordMatch = exp.replace(stripStringRE, '').match(prohibitedKeywordRE);\n if (keywordMatch) {\n errors.push(\n \"avoid using JavaScript keyword as property name: \" +\n \"\\\"\" + (keywordMatch[0]) + \"\\\"\\n Raw expression: \" + (text.trim())\n );\n } else {\n errors.push(\n \"invalid expression: \" + (e.message) + \" in\\n\\n\" +\n \" \" + exp + \"\\n\\n\" +\n \" Raw expression: \" + (text.trim()) + \"\\n\"\n );\n }\n }\n}\n\n/* */\n\nfunction createFunction (code, errors) {\n try {\n return new Function(code)\n } catch (err) {\n errors.push({ err: err, code: code });\n return noop\n }\n}\n\nfunction createCompileToFunctionFn (compile) {\n var cache = Object.create(null);\n\n return function compileToFunctions (\n template,\n options,\n vm\n ) {\n options = extend({}, options);\n var warn$$1 = options.warn || warn;\n delete options.warn;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n // detect possible CSP restriction\n try {\n new Function('return 1');\n } catch (e) {\n if (e.toString().match(/unsafe-eval|CSP/)) {\n warn$$1(\n 'It seems you are using the standalone build of Vue.js in an ' +\n 'environment with Content Security Policy that prohibits unsafe-eval. ' +\n 'The template compiler cannot work in this environment. Consider ' +\n 'relaxing the policy to allow unsafe-eval or pre-compiling your ' +\n 'templates into render functions.'\n );\n }\n }\n }\n\n // check cache\n var key = options.delimiters\n ? String(options.delimiters) + template\n : template;\n if (cache[key]) {\n return cache[key]\n }\n\n // compile\n var compiled = compile(template, options);\n\n // check compilation errors/tips\n if (process.env.NODE_ENV !== 'production') {\n if (compiled.errors && compiled.errors.length) {\n warn$$1(\n \"Error compiling template:\\n\\n\" + template + \"\\n\\n\" +\n compiled.errors.map(function (e) { return (\"- \" + e); }).join('\\n') + '\\n',\n vm\n );\n }\n if (compiled.tips && compiled.tips.length) {\n compiled.tips.forEach(function (msg) { return tip(msg, vm); });\n }\n }\n\n // turn code into functions\n var res = {};\n var fnGenErrors = [];\n res.render = createFunction(compiled.render, fnGenErrors);\n res.staticRenderFns = compiled.staticRenderFns.map(function (code) {\n return createFunction(code, fnGenErrors)\n });\n\n // check function generation errors.\n // this should only happen if there is a bug in the compiler itself.\n // mostly for codegen development use\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n if ((!compiled.errors || !compiled.errors.length) && fnGenErrors.length) {\n warn$$1(\n \"Failed to generate render function:\\n\\n\" +\n fnGenErrors.map(function (ref) {\n var err = ref.err;\n var code = ref.code;\n\n return ((err.toString()) + \" in\\n\\n\" + code + \"\\n\");\n }).join('\\n'),\n vm\n );\n }\n }\n\n return (cache[key] = res)\n }\n}\n\n/* */\n\nfunction createCompilerCreator (baseCompile) {\n return function createCompiler (baseOptions) {\n function compile (\n template,\n options\n ) {\n var finalOptions = Object.create(baseOptions);\n var errors = [];\n var tips = [];\n finalOptions.warn = function (msg, tip) {\n (tip ? tips : errors).push(msg);\n };\n\n if (options) {\n // merge custom modules\n if (options.modules) {\n finalOptions.modules =\n (baseOptions.modules || []).concat(options.modules);\n }\n // merge custom directives\n if (options.directives) {\n finalOptions.directives = extend(\n Object.create(baseOptions.directives || null),\n options.directives\n );\n }\n // copy other options\n for (var key in options) {\n if (key !== 'modules' && key !== 'directives') {\n finalOptions[key] = options[key];\n }\n }\n }\n\n var compiled = baseCompile(template, finalOptions);\n if (process.env.NODE_ENV !== 'production') {\n errors.push.apply(errors, detectErrors(compiled.ast));\n }\n compiled.errors = errors;\n compiled.tips = tips;\n return compiled\n }\n\n return {\n compile: compile,\n compileToFunctions: createCompileToFunctionFn(compile)\n }\n }\n}\n\n/* */\n\n// `createCompilerCreator` allows creating compilers that use alternative\n// parser/optimizer/codegen, e.g the SSR optimizing compiler.\n// Here we just export a default compiler using the default parts.\nvar createCompiler = createCompilerCreator(function baseCompile (\n template,\n options\n) {\n var ast = parse(template.trim(), options);\n if (options.optimize !== false) {\n optimize(ast, options);\n }\n var code = generate(ast, options);\n return {\n ast: ast,\n render: code.render,\n staticRenderFns: code.staticRenderFns\n }\n});\n\n/* */\n\nvar ref$1 = createCompiler(baseOptions);\nvar compileToFunctions = ref$1.compileToFunctions;\n\n/* */\n\n// check whether current browser encodes a char inside attribute values\nvar div;\nfunction getShouldDecode (href) {\n div = div || document.createElement('div');\n div.innerHTML = href ? \"<a href=\\\"\\n\\\"/>\" : \"<div a=\\\"\\n\\\"/>\";\n return div.innerHTML.indexOf('&#10;') > 0\n}\n\n// #3663: IE encodes newlines inside attribute values while other browsers don't\nvar shouldDecodeNewlines = inBrowser ? getShouldDecode(false) : false;\n// #6828: chrome encodes content in a[href]\nvar shouldDecodeNewlinesForHref = inBrowser ? getShouldDecode(true) : false;\n\n/* */\n\nvar idToTemplate = cached(function (id) {\n var el = query(id);\n return el && el.innerHTML\n});\n\nvar mount = Vue.prototype.$mount;\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && query(el);\n\n /* istanbul ignore if */\n if (el === document.body || el === document.documentElement) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Do not mount Vue to <html> or <body> - mount to normal elements instead.\"\n );\n return this\n }\n\n var options = this.$options;\n // resolve template/el and convert to render function\n if (!options.render) {\n var template = options.template;\n if (template) {\n if (typeof template === 'string') {\n if (template.charAt(0) === '#') {\n template = idToTemplate(template);\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && !template) {\n warn(\n (\"Template element not found or is empty: \" + (options.template)),\n this\n );\n }\n }\n } else if (template.nodeType) {\n template = template.innerHTML;\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn('invalid template option:' + template, this);\n }\n return this\n }\n } else if (el) {\n template = getOuterHTML(el);\n }\n if (template) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile');\n }\n\n var ref = compileToFunctions(template, {\n shouldDecodeNewlines: shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: shouldDecodeNewlinesForHref,\n delimiters: options.delimiters,\n comments: options.comments\n }, this);\n var render = ref.render;\n var staticRenderFns = ref.staticRenderFns;\n options.render = render;\n options.staticRenderFns = staticRenderFns;\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n mark('compile end');\n measure((\"vue \" + (this._name) + \" compile\"), 'compile', 'compile end');\n }\n }\n }\n return mount.call(this, el, hydrating)\n};\n\n/**\n * Get outerHTML of elements, taking care\n * of SVG elements in IE as well.\n */\nfunction getOuterHTML (el) {\n if (el.outerHTML) {\n return el.outerHTML\n } else {\n var container = document.createElement('div');\n container.appendChild(el.cloneNode(true));\n return container.innerHTML\n }\n}\n\nVue.compile = compileToFunctions;\n\nexport default Vue;\n","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.VueSelect=e():t.VueSelect=e()}(this,function(){return function(t){function e(o){if(n[o])return n[o].exports;var r=n[o]={exports:{},id:o,loaded:!1};return t[o].call(r.exports,r,r.exports,e),r.loaded=!0,r.exports}var n={};return e.m=t,e.c=n,e.p=\"/\",e(0)}([function(t,e,n){\"use strict\";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0}),e.mixins=e.VueSelect=void 0;var r=n(85),i=o(r),s=n(42),a=o(s);e.default=i.default,e.VueSelect=i.default,e.mixins=a.default},function(t,e){var n=t.exports=\"undefined\"!=typeof window&&window.Math==Math?window:\"undefined\"!=typeof self&&self.Math==Math?self:Function(\"return this\")();\"number\"==typeof __g&&(__g=n)},function(t,e){var n=t.exports={version:\"2.5.3\"};\"number\"==typeof __e&&(__e=n)},function(t,e,n){t.exports=!n(9)(function(){return 7!=Object.defineProperty({},\"a\",{get:function(){return 7}}).a})},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var o=n(11),r=n(33),i=n(25),s=Object.defineProperty;e.f=n(3)?Object.defineProperty:function(t,e,n){if(o(t),e=i(e,!0),o(n),r)try{return s(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw TypeError(\"Accessors not supported!\");return\"value\"in n&&(t[e]=n.value),t}},function(t,e,n){var o=n(5),r=n(14);t.exports=n(3)?function(t,e,n){return o.f(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){var o=n(61),r=n(16);t.exports=function(t){return o(r(t))}},function(t,e,n){var o=n(23)(\"wks\"),r=n(15),i=n(1).Symbol,s=\"function\"==typeof i,a=t.exports=function(t){return o[t]||(o[t]=s&&i[t]||(s?i:r)(\"Symbol.\"+t))};a.store=o},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e){t.exports=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t}},function(t,e,n){var o=n(10);t.exports=function(t){if(!o(t))throw TypeError(t+\" is not an object!\");return t}},function(t,e,n){var o=n(1),r=n(2),i=n(58),s=n(6),a=\"prototype\",u=function(t,e,n){var l,c,f,p=t&u.F,d=t&u.G,h=t&u.S,b=t&u.P,v=t&u.B,g=t&u.W,y=d?r:r[e]||(r[e]={}),m=y[a],x=d?o:h?o[e]:(o[e]||{})[a];d&&(n=e);for(l in n)c=!p&&x&&void 0!==x[l],c&&l in y||(f=c?x[l]:n[l],y[l]=d&&\"function\"!=typeof x[l]?n[l]:v&&c?i(f,o):g&&x[l]==f?function(t){var e=function(e,n,o){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,o)}return t.apply(this,arguments)};return e[a]=t[a],e}(f):b&&\"function\"==typeof f?i(Function.call,f):f,b&&((y.virtual||(y.virtual={}))[l]=f,t&u.R&&m&&!m[l]&&s(m,l,f)))};u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},function(t,e,n){var o=n(38),r=n(17);t.exports=Object.keys||function(t){return o(t,r)}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e){var n=0,o=Math.random();t.exports=function(t){return\"Symbol(\".concat(void 0===t?\"\":t,\")_\",(++n+o).toString(36))}},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError(\"Can't call method on \"+t);return t}},function(t,e){t.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(t,e){t.exports={}},function(t,e){t.exports=!0},function(t,e){e.f={}.propertyIsEnumerable},function(t,e,n){var o=n(5).f,r=n(4),i=n(8)(\"toStringTag\");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&o(t,i,{configurable:!0,value:e})}},function(t,e,n){var o=n(23)(\"keys\"),r=n(15);t.exports=function(t){return o[t]||(o[t]=r(t))}},function(t,e,n){var o=n(1),r=\"__core-js_shared__\",i=o[r]||(o[r]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,e){var n=Math.ceil,o=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?o:n)(t)}},function(t,e,n){var o=n(10);t.exports=function(t,e){if(!o(t))return t;var n,r;if(e&&\"function\"==typeof(n=t.toString)&&!o(r=n.call(t)))return r;if(\"function\"==typeof(n=t.valueOf)&&!o(r=n.call(t)))return r;if(!e&&\"function\"==typeof(n=t.toString)&&!o(r=n.call(t)))return r;throw TypeError(\"Can't convert object to primitive value\")}},function(t,e,n){var o=n(1),r=n(2),i=n(19),s=n(27),a=n(5).f;t.exports=function(t){var e=r.Symbol||(r.Symbol=i?{}:o.Symbol||{});\"_\"==t.charAt(0)||t in e||a(e,t,{value:s.f(t)})}},function(t,e,n){e.f=n(8)},function(t,e){\"use strict\";t.exports={props:{loading:{type:Boolean,default:!1},onSearch:{type:Function,default:function(t,e){}}},data:function(){return{mutableLoading:!1}},watch:{search:function(){this.search.length>0&&(this.onSearch(this.search,this.toggleLoading),this.$emit(\"search\",this.search,this.toggleLoading))},loading:function(t){this.mutableLoading=t}},methods:{toggleLoading:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null==t?this.mutableLoading=!this.mutableLoading:this.mutableLoading=t}}}},function(t,e){\"use strict\";t.exports={watch:{typeAheadPointer:function(){this.maybeAdjustScroll()}},methods:{maybeAdjustScroll:function(){var t=this.pixelsToPointerTop(),e=this.pixelsToPointerBottom();return t<=this.viewport().top?this.scrollTo(t):e>=this.viewport().bottom?this.scrollTo(this.viewport().top+this.pointerHeight()):void 0},pixelsToPointerTop:function t(){var t=0;if(this.$refs.dropdownMenu)for(var e=0;e<this.typeAheadPointer;e++)t+=this.$refs.dropdownMenu.children[e].offsetHeight;return t},pixelsToPointerBottom:function(){return this.pixelsToPointerTop()+this.pointerHeight()},pointerHeight:function(){var t=!!this.$refs.dropdownMenu&&this.$refs.dropdownMenu.children[this.typeAheadPointer];return t?t.offsetHeight:0},viewport:function(){return{top:this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop:0,bottom:this.$refs.dropdownMenu?this.$refs.dropdownMenu.offsetHeight+this.$refs.dropdownMenu.scrollTop:0}},scrollTo:function(t){return this.$refs.dropdownMenu?this.$refs.dropdownMenu.scrollTop=t:null}}}},function(t,e){\"use strict\";t.exports={data:function(){return{typeAheadPointer:-1}},watch:{filteredOptions:function(){this.typeAheadPointer=0}},methods:{typeAheadUp:function(){this.typeAheadPointer>0&&(this.typeAheadPointer--,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadDown:function(){this.typeAheadPointer<this.filteredOptions.length-1&&(this.typeAheadPointer++,this.maybeAdjustScroll&&this.maybeAdjustScroll())},typeAheadSelect:function(){this.filteredOptions[this.typeAheadPointer]?this.select(this.filteredOptions[this.typeAheadPointer]):this.taggable&&this.search.length&&this.select(this.search),this.clearSearchOnSelect&&(this.search=\"\")}}}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){var o=n(10),r=n(1).document,i=o(r)&&o(r.createElement);t.exports=function(t){return i?r.createElement(t):{}}},function(t,e,n){t.exports=!n(3)&&!n(9)(function(){return 7!=Object.defineProperty(n(32)(\"div\"),\"a\",{get:function(){return 7}}).a})},function(t,e,n){\"use strict\";var o=n(19),r=n(12),i=n(39),s=n(6),a=n(4),u=n(18),l=n(63),c=n(21),f=n(69),p=n(8)(\"iterator\"),d=!([].keys&&\"next\"in[].keys()),h=\"@@iterator\",b=\"keys\",v=\"values\",g=function(){return this};t.exports=function(t,e,n,y,m,x,w){l(n,e,y);var S,O,_,j=function(t){if(!d&&t in C)return C[t];switch(t){case b:return function(){return new n(this,t)};case v:return function(){return new n(this,t)}}return function(){return new n(this,t)}},k=e+\" Iterator\",P=m==v,A=!1,C=t.prototype,M=C[p]||C[h]||m&&C[m],L=!d&&M||j(m),T=m?P?j(\"entries\"):L:void 0,E=\"Array\"==e?C.entries||M:M;if(E&&(_=f(E.call(new t)),_!==Object.prototype&&_.next&&(c(_,k,!0),o||a(_,p)||s(_,p,g))),P&&M&&M.name!==v&&(A=!0,L=function(){return M.call(this)}),o&&!w||!d&&!A&&C[p]||s(C,p,L),u[e]=L,u[k]=g,m)if(S={values:P?L:j(v),keys:x?L:j(b),entries:T},w)for(O in S)O in C||i(C,O,S[O]);else r(r.P+r.F*(d||A),e,S);return S}},function(t,e,n){var o=n(11),r=n(66),i=n(17),s=n(22)(\"IE_PROTO\"),a=function(){},u=\"prototype\",l=function(){var t,e=n(32)(\"iframe\"),o=i.length,r=\"<\",s=\">\";for(e.style.display=\"none\",n(60).appendChild(e),e.src=\"javascript:\",t=e.contentWindow.document,t.open(),t.write(r+\"script\"+s+\"document.F=Object\"+r+\"/script\"+s),t.close(),l=t.F;o--;)delete l[u][i[o]];return l()};t.exports=Object.create||function(t,e){var n;return null!==t?(a[u]=o(t),n=new a,a[u]=null,n[s]=t):n=l(),void 0===e?n:r(n,e)}},function(t,e,n){var o=n(38),r=n(17).concat(\"length\",\"prototype\");e.f=Object.getOwnPropertyNames||function(t){return o(t,r)}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e,n){var o=n(4),r=n(7),i=n(57)(!1),s=n(22)(\"IE_PROTO\");t.exports=function(t,e){var n,a=r(t),u=0,l=[];for(n in a)n!=s&&o(a,n)&&l.push(n);for(;e.length>u;)o(a,n=e[u++])&&(~i(l,n)||l.push(n));return l}},function(t,e,n){t.exports=n(6)},function(t,e,n){var o=n(16);t.exports=function(t){return Object(o(t))}},function(t,e,n){\"use strict\";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0});var r=n(45),i=o(r),s=n(48),a=o(s),u=n(43),l=o(u),c=n(49),f=o(c),p=n(29),d=o(p),h=n(30),b=o(h),v=n(28),g=o(v);e.default={mixins:[d.default,b.default,g.default],props:{value:{default:null},options:{type:Array,default:function(){return[]}},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},maxHeight:{type:String,default:\"400px\"},searchable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},placeholder:{type:String,default:\"\"},transition:{type:String,default:\"fade\"},clearSearchOnSelect:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},label:{type:String,default:\"label\"},index:{type:String,default:null},getOptionLabel:{type:Function,default:function(t){return this.index&&(t=this.findOptionByIndexValue(t)),\"object\"===(\"undefined\"==typeof t?\"undefined\":(0,f.default)(t))?t.hasOwnProperty(this.label)?t[this.label]:console.warn('[vue-select warn]: Label key \"option.'+this.label+'\" does not'+(\" exist in options object \"+(0,l.default)(t)+\".\\n\")+\"http://sagalbot.github.io/vue-select/#ex-labels\"):t}},onChange:{type:Function,default:function(t){this.$emit(\"input\",t)}},onTab:{type:Function,default:function(){this.selectOnTab&&this.typeAheadSelect()}},taggable:{type:Boolean,default:!1},tabindex:{type:Number,default:null},pushTags:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},filterBy:{type:Function,default:function(t,e,n){return(e||\"\").toLowerCase().indexOf(n.toLowerCase())>-1}},filter:{type:Function,default:function(t,e){var n=this;return t.filter(function(t){var o=n.getOptionLabel(t);return\"number\"==typeof o&&(o=o.toString()),n.filterBy(t,o,e)})}},createOption:{type:Function,default:function(t){return\"object\"===(0,f.default)(this.mutableOptions[0])&&(t=(0,a.default)({},this.label,t)),this.$emit(\"option:created\",t),t}},resetOnOptionsChange:{type:Boolean,default:!1},noDrop:{type:Boolean,default:!1},inputId:{type:String},dir:{type:String,default:\"auto\"},selectOnTab:{type:Boolean,default:!1}},data:function(){return{search:\"\",open:!1,mutableValue:null,mutableOptions:[]}},watch:{value:function(t){this.mutableValue=t},mutableValue:function(t,e){this.multiple?this.onChange?this.onChange(t):null:this.onChange&&t!==e?this.onChange(t):null},options:function(t){this.mutableOptions=t},mutableOptions:function(){!this.taggable&&this.resetOnOptionsChange&&(this.mutableValue=this.multiple?[]:null)},multiple:function(t){this.mutableValue=t?[]:null}},created:function(){this.mutableValue=this.value,this.mutableOptions=this.options.slice(0),this.mutableLoading=this.loading,this.$on(\"option:created\",this.maybePushTag)},methods:{select:function(t){if(!this.isOptionSelected(t)){if(this.taggable&&!this.optionExists(t)&&(t=this.createOption(t)),this.index){if(!t.hasOwnProperty(this.index))return console.warn('[vue-select warn]: Index key \"option.'+this.index+'\" does not'+(\" exist in options object \"+(0,l.default)(t)+\".\"));t=t[this.index]}this.multiple&&!this.mutableValue?this.mutableValue=[t]:this.multiple?this.mutableValue.push(t):this.mutableValue=t}this.onAfterSelect(t)},deselect:function(t){var e=this;if(this.multiple){var n=-1;this.mutableValue.forEach(function(o){(o===t||e.index&&o===t[e.index]||\"object\"===(\"undefined\"==typeof o?\"undefined\":(0,f.default)(o))&&o[e.label]===t[e.label])&&(n=o)});var o=this.mutableValue.indexOf(n);this.mutableValue.splice(o,1)}else this.mutableValue=null},clearSelection:function(){this.mutableValue=this.multiple?[]:null},onAfterSelect:function(t){this.closeOnSelect&&(this.open=!this.open,this.$refs.search.blur()),this.clearSearchOnSelect&&(this.search=\"\")},toggleDropdown:function(t){(t.target===this.$refs.openIndicator||t.target===this.$refs.search||t.target===this.$refs.toggle||t.target.classList.contains(\"selected-tag\")||t.target===this.$el)&&(this.open?this.$refs.search.blur():this.disabled||(this.open=!0,this.$refs.search.focus()))},isOptionSelected:function(t){var e=this,n=!1;return this.valueAsArray.forEach(function(o){\"object\"===(\"undefined\"==typeof o?\"undefined\":(0,f.default)(o))?n=e.optionObjectComparator(o,t):o!==t&&o!==t[e.index]||(n=!0)}),n},optionObjectComparator:function(t,e){return!(!this.index||t!==e[this.index])||(t[this.label]===e[this.label]||t[this.label]===e||!(!this.index||t[this.index]!==e[this.index]))},findOptionByIndexValue:function(t){var e=this;return this.options.forEach(function(n){(0,l.default)(n[e.index])===(0,l.default)(t)&&(t=n)}),t},onEscape:function(){this.search.length?this.search=\"\":this.$refs.search.blur()},onSearchBlur:function(){this.mousedown&&!this.searching?this.mousedown=!1:(this.clearSearchOnBlur&&(this.search=\"\"),this.open=!1,this.$emit(\"search:blur\"))},onSearchFocus:function(){this.open=!0,this.$emit(\"search:focus\")},maybeDeleteValue:function(){if(!this.$refs.search.value.length&&this.mutableValue)return this.multiple?this.mutableValue.pop():this.mutableValue=null},optionExists:function(t){var e=this,n=!1;return this.mutableOptions.forEach(function(o){\"object\"===(\"undefined\"==typeof o?\"undefined\":(0,f.default)(o))&&o[e.label]===t?n=!0:o===t&&(n=!0)}),n},maybePushTag:function(t){this.pushTags&&this.mutableOptions.push(t)},onMousedown:function(){this.mousedown=!0}},computed:{dropdownClasses:function(){return{open:this.dropdownOpen,single:!this.multiple,searching:this.searching,searchable:this.searchable,unsearchable:!this.searchable,loading:this.mutableLoading,rtl:\"rtl\"===this.dir,disabled:this.disabled}},clearSearchOnBlur:function(){return this.clearSearchOnSelect&&!this.multiple},searching:function(){return!!this.search},dropdownOpen:function(){return!this.noDrop&&(this.open&&!this.mutableLoading)},searchPlaceholder:function(){if(this.isValueEmpty&&this.placeholder)return this.placeholder},filteredOptions:function(){if(!this.filterable&&!this.taggable)return this.mutableOptions.slice();var t=this.search.length?this.filter(this.mutableOptions,this.search,this):this.mutableOptions;return this.taggable&&this.search.length&&!this.optionExists(this.search)&&t.unshift(this.search),t},isValueEmpty:function(){return!this.mutableValue||(\"object\"===(0,f.default)(this.mutableValue)?!(0,i.default)(this.mutableValue).length:!this.valueAsArray.length)},valueAsArray:function(){return this.multiple&&this.mutableValue?this.mutableValue:this.mutableValue?[].concat(this.mutableValue):[]},showClearButton:function(){return!this.multiple&&this.clearable&&!this.open&&null!=this.mutableValue}}}},function(t,e,n){\"use strict\";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0});var r=n(28),i=o(r),s=n(30),a=o(s),u=n(29),l=o(u);e.default={ajax:i.default,pointer:a.default,pointerScroll:l.default}},function(t,e,n){t.exports={default:n(50),__esModule:!0}},function(t,e,n){t.exports={default:n(51),__esModule:!0}},function(t,e,n){t.exports={default:n(52),__esModule:!0}},function(t,e,n){t.exports={default:n(53),__esModule:!0}},function(t,e,n){t.exports={default:n(54),__esModule:!0}},function(t,e,n){\"use strict\";function o(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var r=n(44),i=o(r);e.default=function(t,e,n){return e in t?(0,i.default)(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}},function(t,e,n){\"use strict\";function o(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var r=n(47),i=o(r),s=n(46),a=o(s),u=\"function\"==typeof a.default&&\"symbol\"==typeof i.default?function(t){return typeof t}:function(t){return t&&\"function\"==typeof a.default&&t.constructor===a.default&&t!==a.default.prototype?\"symbol\":typeof t};e.default=\"function\"==typeof a.default&&\"symbol\"===u(i.default)?function(t){return\"undefined\"==typeof t?\"undefined\":u(t)}:function(t){return t&&\"function\"==typeof a.default&&t.constructor===a.default&&t!==a.default.prototype?\"symbol\":\"undefined\"==typeof t?\"undefined\":u(t)}},function(t,e,n){var o=n(2),r=o.JSON||(o.JSON={stringify:JSON.stringify});t.exports=function(t){return r.stringify.apply(r,arguments)}},function(t,e,n){n(75);var o=n(2).Object;t.exports=function(t,e,n){return o.defineProperty(t,e,n)}},function(t,e,n){n(76),t.exports=n(2).Object.keys},function(t,e,n){n(79),n(77),n(80),n(81),t.exports=n(2).Symbol},function(t,e,n){n(78),n(82),t.exports=n(27).f(\"iterator\")},function(t,e){t.exports=function(t){if(\"function\"!=typeof t)throw TypeError(t+\" is not a function!\");return t}},function(t,e){t.exports=function(){}},function(t,e,n){var o=n(7),r=n(73),i=n(72);t.exports=function(t){return function(e,n,s){var a,u=o(e),l=r(u.length),c=i(s,l);if(t&&n!=n){for(;l>c;)if(a=u[c++],a!=a)return!0}else for(;l>c;c++)if((t||c in u)&&u[c]===n)return t||c||0;return!t&&-1}}},function(t,e,n){var o=n(55);t.exports=function(t,e,n){if(o(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,o){return t.call(e,n,o)};case 3:return function(n,o,r){return t.call(e,n,o,r)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){var o=n(13),r=n(37),i=n(20);t.exports=function(t){var e=o(t),n=r.f;if(n)for(var s,a=n(t),u=i.f,l=0;a.length>l;)u.call(t,s=a[l++])&&e.push(s);return e}},function(t,e,n){var o=n(1).document;t.exports=o&&o.documentElement},function(t,e,n){var o=n(31);t.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(t){return\"String\"==o(t)?t.split(\"\"):Object(t)}},function(t,e,n){var o=n(31);t.exports=Array.isArray||function(t){return\"Array\"==o(t)}},function(t,e,n){\"use strict\";var o=n(35),r=n(14),i=n(21),s={};n(6)(s,n(8)(\"iterator\"),function(){return this}),t.exports=function(t,e,n){t.prototype=o(s,{next:r(1,n)}),i(t,e+\" Iterator\")}},function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){var o=n(15)(\"meta\"),r=n(10),i=n(4),s=n(5).f,a=0,u=Object.isExtensible||function(){return!0},l=!n(9)(function(){return u(Object.preventExtensions({}))}),c=function(t){s(t,o,{value:{i:\"O\"+ ++a,w:{}}})},f=function(t,e){if(!r(t))return\"symbol\"==typeof t?t:(\"string\"==typeof t?\"S\":\"P\")+t;if(!i(t,o)){if(!u(t))return\"F\";if(!e)return\"E\";c(t)}return t[o].i},p=function(t,e){if(!i(t,o)){if(!u(t))return!0;if(!e)return!1;c(t)}return t[o].w},d=function(t){return l&&h.NEED&&u(t)&&!i(t,o)&&c(t),t},h=t.exports={KEY:o,NEED:!1,fastKey:f,getWeak:p,onFreeze:d}},function(t,e,n){var o=n(5),r=n(11),i=n(13);t.exports=n(3)?Object.defineProperties:function(t,e){r(t);for(var n,s=i(e),a=s.length,u=0;a>u;)o.f(t,n=s[u++],e[n]);return t}},function(t,e,n){var o=n(20),r=n(14),i=n(7),s=n(25),a=n(4),u=n(33),l=Object.getOwnPropertyDescriptor;e.f=n(3)?l:function(t,e){if(t=i(t),e=s(e,!0),u)try{return l(t,e)}catch(t){}if(a(t,e))return r(!o.f.call(t,e),t[e])}},function(t,e,n){var o=n(7),r=n(36).f,i={}.toString,s=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(t){try{return r(t)}catch(t){return s.slice()}};t.exports.f=function(t){return s&&\"[object Window]\"==i.call(t)?a(t):r(o(t))}},function(t,e,n){var o=n(4),r=n(40),i=n(22)(\"IE_PROTO\"),s=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=r(t),o(t,i)?t[i]:\"function\"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?s:null}},function(t,e,n){var o=n(12),r=n(2),i=n(9);t.exports=function(t,e){var n=(r.Object||{})[t]||Object[t],s={};s[t]=e(n),o(o.S+o.F*i(function(){n(1)}),\"Object\",s)}},function(t,e,n){var o=n(24),r=n(16);t.exports=function(t){return function(e,n){var i,s,a=String(r(e)),u=o(n),l=a.length;return u<0||u>=l?t?\"\":void 0:(i=a.charCodeAt(u),i<55296||i>56319||u+1===l||(s=a.charCodeAt(u+1))<56320||s>57343?t?a.charAt(u):i:t?a.slice(u,u+2):(i-55296<<10)+(s-56320)+65536)}}},function(t,e,n){var o=n(24),r=Math.max,i=Math.min;t.exports=function(t,e){return t=o(t),t<0?r(t+e,0):i(t,e)}},function(t,e,n){var o=n(24),r=Math.min;t.exports=function(t){return t>0?r(o(t),9007199254740991):0}},function(t,e,n){\"use strict\";var o=n(56),r=n(64),i=n(18),s=n(7);t.exports=n(34)(Array,\"Array\",function(t,e){this._t=s(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,r(1)):\"keys\"==e?r(0,n):\"values\"==e?r(0,t[n]):r(0,[n,t[n]])},\"values\"),i.Arguments=i.Array,o(\"keys\"),o(\"values\"),o(\"entries\")},function(t,e,n){var o=n(12);o(o.S+o.F*!n(3),\"Object\",{defineProperty:n(5).f})},function(t,e,n){var o=n(40),r=n(13);n(70)(\"keys\",function(){return function(t){return r(o(t))}})},function(t,e){},function(t,e,n){\"use strict\";var o=n(71)(!0);n(34)(String,\"String\",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=o(e,n),this._i+=t.length,{value:t,done:!1})})},function(t,e,n){\"use strict\";var o=n(1),r=n(4),i=n(3),s=n(12),a=n(39),u=n(65).KEY,l=n(9),c=n(23),f=n(21),p=n(15),d=n(8),h=n(27),b=n(26),v=n(59),g=n(62),y=n(11),m=n(10),x=n(7),w=n(25),S=n(14),O=n(35),_=n(68),j=n(67),k=n(5),P=n(13),A=j.f,C=k.f,M=_.f,L=o.Symbol,T=o.JSON,E=T&&T.stringify,V=\"prototype\",B=d(\"_hidden\"),F=d(\"toPrimitive\"),N={}.propertyIsEnumerable,$=c(\"symbol-registry\"),D=c(\"symbols\"),I=c(\"op-symbols\"),R=Object[V],z=\"function\"==typeof L,H=o.QObject,G=!H||!H[V]||!H[V].findChild,J=i&&l(function(){return 7!=O(C({},\"a\",{get:function(){return C(this,\"a\",{value:7}).a}})).a})?function(t,e,n){var o=A(R,e);o&&delete R[e],C(t,e,n),o&&t!==R&&C(R,e,o)}:C,U=function(t){var e=D[t]=O(L[V]);return e._k=t,e},W=z&&\"symbol\"==typeof L.iterator?function(t){return\"symbol\"==typeof t}:function(t){return t instanceof L},K=function(t,e,n){return t===R&&K(I,e,n),y(t),e=w(e,!0),y(n),r(D,e)?(n.enumerable?(r(t,B)&&t[B][e]&&(t[B][e]=!1),n=O(n,{enumerable:S(0,!1)})):(r(t,B)||C(t,B,S(1,{})),t[B][e]=!0),J(t,e,n)):C(t,e,n)},Y=function(t,e){y(t);for(var n,o=v(e=x(e)),r=0,i=o.length;i>r;)K(t,n=o[r++],e[n]);return t},q=function(t,e){return void 0===e?O(t):Y(O(t),e)},Q=function(t){var e=N.call(this,t=w(t,!0));return!(this===R&&r(D,t)&&!r(I,t))&&(!(e||!r(this,t)||!r(D,t)||r(this,B)&&this[B][t])||e)},Z=function(t,e){if(t=x(t),e=w(e,!0),t!==R||!r(D,e)||r(I,e)){var n=A(t,e);return!n||!r(D,e)||r(t,B)&&t[B][e]||(n.enumerable=!0),n}},X=function(t){for(var e,n=M(x(t)),o=[],i=0;n.length>i;)r(D,e=n[i++])||e==B||e==u||o.push(e);return o},tt=function(t){for(var e,n=t===R,o=M(n?I:x(t)),i=[],s=0;o.length>s;)!r(D,e=o[s++])||n&&!r(R,e)||i.push(D[e]);return i};z||(L=function(){if(this instanceof L)throw TypeError(\"Symbol is not a constructor!\");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===R&&e.call(I,n),r(this,B)&&r(this[B],t)&&(this[B][t]=!1),J(this,t,S(1,n))};return i&&G&&J(R,t,{configurable:!0,set:e}),U(t)},a(L[V],\"toString\",function(){return this._k}),j.f=Z,k.f=K,n(36).f=_.f=X,n(20).f=Q,n(37).f=tt,i&&!n(19)&&a(R,\"propertyIsEnumerable\",Q,!0),h.f=function(t){return U(d(t))}),s(s.G+s.W+s.F*!z,{Symbol:L});for(var et=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),nt=0;et.length>nt;)d(et[nt++]);for(var ot=P(d.store),rt=0;ot.length>rt;)b(ot[rt++]);s(s.S+s.F*!z,\"Symbol\",{for:function(t){return r($,t+=\"\")?$[t]:$[t]=L(t)},keyFor:function(t){if(!W(t))throw TypeError(t+\" is not a symbol!\");for(var e in $)if($[e]===t)return e},useSetter:function(){G=!0},useSimple:function(){G=!1}}),s(s.S+s.F*!z,\"Object\",{create:q,defineProperty:K,defineProperties:Y,getOwnPropertyDescriptor:Z,getOwnPropertyNames:X,getOwnPropertySymbols:tt}),T&&s(s.S+s.F*(!z||l(function(){var t=L();return\"[null]\"!=E([t])||\"{}\"!=E({a:t})||\"{}\"!=E(Object(t))})),\"JSON\",{stringify:function(t){for(var e,n,o=[t],r=1;arguments.length>r;)o.push(arguments[r++]);if(n=e=o[1],(m(e)||void 0!==t)&&!W(t))return g(e)||(e=function(t,e){if(\"function\"==typeof n&&(e=n.call(this,t,e)),!W(e))return e}),o[1]=e,E.apply(T,o)}}),L[V][F]||n(6)(L[V],F,L[V].valueOf),f(L,\"Symbol\"),f(Math,\"Math\",!0),f(o.JSON,\"JSON\",!0)},function(t,e,n){n(26)(\"asyncIterator\")},function(t,e,n){n(26)(\"observable\")},function(t,e,n){n(74);for(var o=n(1),r=n(6),i=n(18),s=n(8)(\"toStringTag\"),a=\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList\".split(\",\"),u=0;u<a.length;u++){var l=a[u],c=o[l],f=c&&c.prototype;f&&!f[s]&&r(f,s,l),i[l]=i.Array}},function(t,e,n){e=t.exports=n(84)(),e.push([t.id,'.v-select{position:relative;font-family:inherit}.v-select,.v-select *{box-sizing:border-box}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .dropdown-toggle .clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .selected-tag .close{margin-left:0;margin-right:2px}.v-select[dir=rtl] .dropdown-menu{text-align:right}.v-select .open-indicator{display:flex;align-items:center;cursor:pointer;pointer-events:all;opacity:1;width:12px}.v-select .open-indicator,.v-select .open-indicator:before{transition:all .15s cubic-bezier(1,-.115,.975,.855);transition-timing-function:cubic-bezier(1,-.115,.975,.855)}.v-select .open-indicator:before{border-color:rgba(60,60,60,.5);border-style:solid;border-width:3px 3px 0 0;content:\"\";display:inline-block;height:10px;width:10px;vertical-align:text-top;transform:rotate(133deg);box-sizing:inherit}.v-select.open .open-indicator:before{transform:rotate(315deg)}.v-select.loading .open-indicator{opacity:0}.v-select .dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;padding:0 0 4px;background:none;border:1px solid rgba(60,60,60,.26);border-radius:4px;white-space:normal}.v-select .vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px;position:relative}.v-select .vs__actions{display:flex;align-items:stretch;padding:0 6px 0 3px}.v-select .dropdown-toggle .clear{font-size:23px;font-weight:700;line-height:1;color:rgba(60,60,60,.5);padding:0;border:0;background-color:transparent;cursor:pointer;margin-right:6px}.v-select.searchable .dropdown-toggle{cursor:text}.v-select.unsearchable .dropdown-toggle{cursor:pointer}.v-select.open .dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.v-select .dropdown-menu{display:block;position:absolute;top:100%;left:0;z-index:1000;min-width:160px;padding:5px 0;margin:0;width:100%;overflow-y:scroll;border:1px solid rgba(0,0,0,.26);box-shadow:0 3px 6px 0 rgba(0,0,0,.15);border-top:none;border-radius:0 0 4px 4px;text-align:left;list-style:none;background:#fff}.v-select .no-options{text-align:center}.v-select .selected-tag{display:flex;align-items:center;background-color:#f0f0f0;border:1px solid #ccc;border-radius:4px;color:#333;line-height:1.42857143;margin:4px 2px 0;padding:0 .25em;transition:opacity .25s}.v-select.single .selected-tag{background-color:transparent;border-color:transparent}.v-select.single.open .selected-tag{position:absolute;opacity:.4}.v-select.single.searching .selected-tag{display:none}.v-select .selected-tag .close{margin-left:2px;font-size:1.25em;appearance:none;padding:0;cursor:pointer;background:0 0;border:0;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.v-select.single.searching:not(.open):not(.loading) input[type=search]{opacity:.2}.v-select input[type=search]::-webkit-search-cancel-button,.v-select input[type=search]::-webkit-search-decoration,.v-select input[type=search]::-webkit-search-results-button,.v-select input[type=search]::-webkit-search-results-decoration{display:none}.v-select input[type=search]::-ms-clear{display:none}.v-select input[type=search],.v-select input[type=search]:focus{appearance:none;-webkit-appearance:none;-moz-appearance:none;line-height:1.42857143;font-size:1em;display:inline-block;border:1px solid transparent;border-left:none;outline:none;margin:4px 0 0;padding:0 7px;max-width:100%;background:none;box-shadow:none;flex-grow:1;width:0}.v-select.unsearchable input[type=search]{opacity:0}.v-select.unsearchable input[type=search]:hover{cursor:pointer}.v-select li{line-height:1.42857143}.v-select li>a{display:block;padding:3px 20px;clear:both;color:#333;white-space:nowrap}.v-select li:hover{cursor:pointer}.v-select .dropdown-menu .active>a{color:#333;background:rgba(50,50,50,.1)}.v-select .dropdown-menu>.highlight>a{background:#5897fb;color:#fff}.v-select .highlight:not(:last-child){margin-bottom:0}.v-select .spinner{align-self:center;opacity:0;font-size:5px;text-indent:-9999em;overflow:hidden;border-top:.9em solid hsla(0,0%,39%,.1);border-right:.9em solid hsla(0,0%,39%,.1);border-bottom:.9em solid hsla(0,0%,39%,.1);border-left:.9em solid rgba(60,60,60,.45);transform:translateZ(0);animation:vSelectSpinner 1.1s infinite linear;transition:opacity .1s}.v-select .spinner,.v-select .spinner:after{border-radius:50%;width:5em;height:5em}.v-select.disabled .dropdown-toggle,.v-select.disabled .dropdown-toggle .clear,.v-select.disabled .dropdown-toggle input,.v-select.disabled .open-indicator,.v-select.disabled .selected-tag .close{cursor:not-allowed;background-color:#f8f8f8}.v-select.loading .spinner{opacity:1}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fade-enter-active,.fade-leave-active{transition:opacity .15s cubic-bezier(1,.5,.8,1)}.fade-enter,.fade-leave-to{opacity:0}',\"\"])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e<this.length;e++){var n=this[e];n[2]?t.push(\"@media \"+n[2]+\"{\"+n[1]+\"}\"):t.push(n[1])}return t.join(\"\")},t.i=function(e,n){\"string\"==typeof e&&(e=[[null,e,\"\"]]);for(var o={},r=0;r<this.length;r++){var i=this[r][0];\"number\"==typeof i&&(o[i]=!0)}for(r=0;r<e.length;r++){var s=e[r];\"number\"==typeof s[0]&&o[s[0]]||(n&&!s[2]?s[2]=n:n&&(s[2]=\"(\"+s[2]+\") and (\"+n+\")\"),t.push(s))}},t}},function(t,e,n){n(89);var o=n(86)(n(41),n(87),null,null);t.exports=o.exports},function(t,e){t.exports=function(t,e,n,o){var r,i=t=t||{},s=typeof t.default;\"object\"!==s&&\"function\"!==s||(r=t,i=t.default);var a=\"function\"==typeof i?i.options:i;if(e&&(a.render=e.render,a.staticRenderFns=e.staticRenderFns),n&&(a._scopeId=n),o){var u=a.computed||(a.computed={});Object.keys(o).forEach(function(t){var e=o[t];u[t]=function(){return e}})}return{esModule:r,exports:i,options:a}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"div\",{staticClass:\"dropdown v-select\",class:t.dropdownClasses,attrs:{dir:t.dir}},[n(\"div\",{ref:\"toggle\",staticClass:\"dropdown-toggle\",on:{mousedown:function(e){e.preventDefault(),t.toggleDropdown(e)}}},[n(\"div\",{ref:\"selectedOptions\",staticClass:\"vs__selected-options\"},[t._l(t.valueAsArray,function(e){return t._t(\"selected-option-container\",[n(\"span\",{key:e.index,staticClass:\"selected-tag\"},[t._t(\"selected-option\",[t._v(\"\\n \"+t._s(t.getOptionLabel(e))+\"\\n \")],null,\"object\"==typeof e?e:(o={},\no[t.label]=e,o)),t._v(\" \"),t.multiple?n(\"button\",{staticClass:\"close\",attrs:{disabled:t.disabled,type:\"button\",\"aria-label\":\"Remove option\"},on:{click:function(n){t.deselect(e)}}},[n(\"span\",{attrs:{\"aria-hidden\":\"true\"}},[t._v(\"×\")])]):t._e()],2)],{option:\"object\"==typeof e?e:(r={},r[t.label]=e,r),deselect:t.deselect,multiple:t.multiple,disabled:t.disabled});var o,r}),t._v(\" \"),n(\"input\",{directives:[{name:\"model\",rawName:\"v-model\",value:t.search,expression:\"search\"}],ref:\"search\",staticClass:\"form-control\",attrs:{type:\"search\",autocomplete:\"off\",disabled:t.disabled,placeholder:t.searchPlaceholder,tabindex:t.tabindex,readonly:!t.searchable,id:t.inputId,role:\"combobox\",\"aria-expanded\":t.dropdownOpen,\"aria-label\":\"Search for option\"},domProps:{value:t.search},on:{keydown:[function(e){return\"button\"in e||!t._k(e.keyCode,\"delete\",[8,46],e.key)?void t.maybeDeleteValue(e):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"up\",38,e.key)?(e.preventDefault(),void t.typeAheadUp(e)):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"down\",40,e.key)?(e.preventDefault(),void t.typeAheadDown(e)):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"enter\",13,e.key)?(e.preventDefault(),void t.typeAheadSelect(e)):null},function(e){return\"button\"in e||!t._k(e.keyCode,\"tab\",9,e.key)?void t.onTab(e):null}],keyup:function(e){return\"button\"in e||!t._k(e.keyCode,\"esc\",27,e.key)?void t.onEscape(e):null},blur:t.onSearchBlur,focus:t.onSearchFocus,input:function(e){e.target.composing||(t.search=e.target.value)}}})],2),t._v(\" \"),n(\"div\",{staticClass:\"vs__actions\"},[n(\"button\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showClearButton,expression:\"showClearButton\"}],staticClass:\"clear\",attrs:{disabled:t.disabled,type:\"button\",title:\"Clear selection\"},on:{click:t.clearSelection}},[n(\"span\",{attrs:{\"aria-hidden\":\"true\"}},[t._v(\"×\")])]),t._v(\" \"),t.noDrop?t._e():n(\"i\",{ref:\"openIndicator\",staticClass:\"open-indicator\",attrs:{role:\"presentation\"}}),t._v(\" \"),t._t(\"spinner\",[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.mutableLoading,expression:\"mutableLoading\"}],staticClass:\"spinner\"},[t._v(\"Loading...\")])])],2)]),t._v(\" \"),n(\"transition\",{attrs:{name:t.transition}},[t.dropdownOpen?n(\"ul\",{ref:\"dropdownMenu\",staticClass:\"dropdown-menu\",style:{\"max-height\":t.maxHeight},attrs:{role:\"listbox\"},on:{mousedown:t.onMousedown}},[t._l(t.filteredOptions,function(e,o){return n(\"li\",{key:o,class:{active:t.isOptionSelected(e),highlight:o===t.typeAheadPointer},attrs:{role:\"option\"},on:{mouseover:function(e){t.typeAheadPointer=o}}},[n(\"a\",{on:{mousedown:function(n){n.preventDefault(),n.stopPropagation(),t.select(e)}}},[t._t(\"option\",[t._v(\"\\n \"+t._s(t.getOptionLabel(e))+\"\\n \")],null,\"object\"==typeof e?e:(r={},r[t.label]=e,r))],2)]);var r}),t._v(\" \"),t.filteredOptions.length?t._e():n(\"li\",{staticClass:\"no-options\"},[t._t(\"no-options\",[t._v(\"Sorry, no matching options.\")])],2)],2):t._e()])],1)},staticRenderFns:[]}},function(t,e,n){function o(t,e){for(var n=0;n<t.length;n++){var o=t[n],r=f[o.id];if(r){r.refs++;for(var i=0;i<r.parts.length;i++)r.parts[i](o.parts[i]);for(;i<o.parts.length;i++)r.parts.push(u(o.parts[i],e))}else{for(var s=[],i=0;i<o.parts.length;i++)s.push(u(o.parts[i],e));f[o.id]={id:o.id,refs:1,parts:s}}}}function r(t){for(var e=[],n={},o=0;o<t.length;o++){var r=t[o],i=r[0],s=r[1],a=r[2],u=r[3],l={css:s,media:a,sourceMap:u};n[i]?n[i].parts.push(l):e.push(n[i]={id:i,parts:[l]})}return e}function i(t,e){var n=h(),o=g[g.length-1];if(\"top\"===t.insertAt)o?o.nextSibling?n.insertBefore(e,o.nextSibling):n.appendChild(e):n.insertBefore(e,n.firstChild),g.push(e);else{if(\"bottom\"!==t.insertAt)throw new Error(\"Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.\");n.appendChild(e)}}function s(t){t.parentNode.removeChild(t);var e=g.indexOf(t);e>=0&&g.splice(e,1)}function a(t){var e=document.createElement(\"style\");return e.type=\"text/css\",i(t,e),e}function u(t,e){var n,o,r;if(e.singleton){var i=v++;n=b||(b=a(e)),o=l.bind(null,n,i,!1),r=l.bind(null,n,i,!0)}else n=a(e),o=c.bind(null,n),r=function(){s(n)};return o(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;o(t=e)}else r()}}function l(t,e,n,o){var r=n?\"\":o.css;if(t.styleSheet)t.styleSheet.cssText=y(e,r);else{var i=document.createTextNode(r),s=t.childNodes;s[e]&&t.removeChild(s[e]),s.length?t.insertBefore(i,s[e]):t.appendChild(i)}}function c(t,e){var n=e.css,o=e.media,r=e.sourceMap;if(o&&t.setAttribute(\"media\",o),r&&(n+=\"\\n/*# sourceURL=\"+r.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+\" */\"),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}var f={},p=function(t){var e;return function(){return\"undefined\"==typeof e&&(e=t.apply(this,arguments)),e}},d=p(function(){return/msie [6-9]\\b/.test(window.navigator.userAgent.toLowerCase())}),h=p(function(){return document.head||document.getElementsByTagName(\"head\")[0]}),b=null,v=0,g=[];t.exports=function(t,e){e=e||{},\"undefined\"==typeof e.singleton&&(e.singleton=d()),\"undefined\"==typeof e.insertAt&&(e.insertAt=\"bottom\");var n=r(t);return o(n,e),function(t){for(var i=[],s=0;s<n.length;s++){var a=n[s],u=f[a.id];u.refs--,i.push(u)}if(t){var l=r(t);o(l,e)}for(var s=0;s<i.length;s++){var u=i[s];if(0===u.refs){for(var c=0;c<u.parts.length;c++)u.parts[c]();delete f[u.id]}}}};var y=function(){var t=[];return function(e,n){return t[e]=n,t.filter(Boolean).join(\"\\n\")}}()},function(t,e,n){var o=n(83);\"string\"==typeof o&&(o=[[t.id,o,\"\"]]);n(88)(o,{});o.locals&&(t.exports=o.locals)}])});\n//# sourceMappingURL=vue-select.js.map","function validate(binding) {\r\n if (typeof binding.value !== 'function') {\r\n console.warn('[Vue-click-outside:] provided expression', binding.expression, 'is not a function.')\r\n return false\r\n }\r\n\r\n return true\r\n}\r\n\r\nfunction isPopup(popupItem, elements) {\r\n if (!popupItem || !elements)\r\n return false\r\n\r\n for (var i = 0, len = elements.length; i < len; i++) {\r\n try {\r\n if (popupItem.contains(elements[i])) {\r\n return true\r\n }\r\n if (elements[i].contains(popupItem)) {\r\n return false\r\n }\r\n } catch(e) {\r\n return false\r\n }\r\n }\r\n\r\n return false\r\n}\r\n\r\nfunction isServer(vNode) {\r\n return typeof vNode.componentInstance !== 'undefined' && vNode.componentInstance.$isServer\r\n}\r\n\r\nexports = module.exports = {\r\n bind: function (el, binding, vNode) {\r\n if (!validate(binding)) return\r\n\r\n // Define Handler and cache it on the element\r\n function handler(e) {\r\n if (!vNode.context) return\r\n\r\n // some components may have related popup item, on which we shall prevent the click outside event handler.\r\n var elements = e.path || (e.composedPath && e.composedPath())\r\n elements && elements.length > 0 && elements.unshift(e.target)\r\n \r\n if (el.contains(e.target) || isPopup(vNode.context.popupItem, elements)) return\r\n\r\n el.__vueClickOutside__.callback(e)\r\n }\r\n\r\n // add Event Listeners\r\n el.__vueClickOutside__ = {\r\n handler: handler,\r\n callback: binding.value\r\n }\r\n !isServer(vNode) && document.addEventListener('click', handler)\r\n },\r\n\r\n update: function (el, binding) {\r\n if (validate(binding)) el.__vueClickOutside__.callback = binding.value\r\n },\r\n \r\n unbind: function (el, binding, vNode) {\r\n // Remove Event Listeners\r\n !isServer(vNode) && document.removeEventListener('click', el.__vueClickOutside__.handler)\r\n delete el.__vueClickOutside__\r\n }\r\n}\r\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"ul\",\n _vm._l(_vm.menu, function(item, key) {\n return _c(\"popover-item\", { key: key, attrs: { item: item } })\n })\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"li\", [\n _vm.item.href\n ? _c(\n \"a\",\n {\n attrs: {\n href: _vm.item.href ? _vm.item.href : \"#\",\n target: _vm.item.target ? _vm.item.target : \"\",\n rel: \"noreferrer noopener\"\n },\n on: { click: _vm.item.action }\n },\n [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _vm.item.text\n ? _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n : _vm.item.longtext\n ? _c(\"p\", [_vm._v(_vm._s(_vm.item.longtext))])\n : _vm._e()\n ]\n )\n : _vm.item.action\n ? _c(\"button\", { on: { click: _vm.item.action } }, [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _vm.item.text\n ? _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n : _vm.item.longtext\n ? _c(\"p\", [_vm._v(_vm._s(_vm.item.longtext))])\n : _vm._e()\n ])\n : _c(\"span\", { staticClass: \"menuitem\" }, [\n _c(\"span\", { class: _vm.item.icon }),\n _vm._v(\" \"),\n _vm.item.text\n ? _c(\"span\", [_vm._v(_vm._s(_vm.item.text))])\n : _vm.item.longtext\n ? _c(\"p\", [_vm._v(_vm._s(_vm.item.longtext))])\n : _vm._e()\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","<template>\n\t<li>\n\t\t<!-- If item.href is set, a link will be directly used -->\n\t\t<a @click=\"item.action\" v-if=\"item.href\" :href=\"(item.href) ? item.href : '#' \" :target=\"(item.target) ? item.target : '' \" rel=\"noreferrer noopener\">\n\t\t\t<span :class=\"item.icon\"></span>\n\t\t\t<span v-if=\"item.text\">{{item.text}}</span>\n\t\t\t<p v-else-if=\"item.longtext\">{{item.longtext}}</p>\n\t\t</a>\n\t\t<!-- If item.action is set instead, a button will be used -->\n\t\t<button @click=\"item.action\" v-else-if=\"item.action\">\n\t\t\t<span :class=\"item.icon\"></span>\n\t\t\t<span v-if=\"item.text\">{{item.text}}</span>\n\t\t\t<p v-else-if=\"item.longtext\">{{item.longtext}}</p>\n\t\t</button>\n\t\t<!-- If item.longtext is set AND the item does not have an action -->\n\t\t<span class=\"menuitem\" v-else>\n\t\t\t<span :class=\"item.icon\"></span>\n\t\t\t<span v-if=\"item.text\">{{item.text}}</span>\n\t\t\t<p v-else-if=\"item.longtext\">{{item.longtext}}</p>\n\t\t</span>\n\t</li>\n</template>\n\n<script>\nexport default {\n\tprops: ['item']\n}\n</script>\n","import mod from \"-!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./popoverItem.vue?vue&type=template&id=4c6af9e6&\"\nimport script from \"./popoverItem.vue?vue&type=script&lang=js&\"\nexport * from \"./popoverItem.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/roeland/nc/server/apps/updatenotification/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!module.hot.data) {\n api.createRecord('4c6af9e6', component.options)\n } else {\n api.reload('4c6af9e6', component.options)\n }\n module.hot.accept(\"./popoverItem.vue?vue&type=template&id=4c6af9e6&\", function () {\n api.rerender('4c6af9e6', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/popoverMenu/popoverItem.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverMenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./popoverMenu.vue?vue&type=script&lang=js&\"","<template>\n\t<ul>\n\t\t<popover-item v-for=\"(item, key) in menu\" :item=\"item\" :key=\"key\" />\n\t</ul>\n</template>\n\n\n<script>\nimport popoverItem from './popoverMenu/popoverItem';\n\nexport default {\n\tname: 'popoverMenu',\n\tprops: ['menu'],\n\tcomponents: {\n\t\tpopoverItem\n\t}\n}\n</script>\n","import { render, staticRenderFns } from \"./popoverMenu.vue?vue&type=template&id=04ea21c4&\"\nimport script from \"./popoverMenu.vue?vue&type=script&lang=js&\"\nexport * from \"./popoverMenu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/roeland/nc/server/apps/updatenotification/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!module.hot.data) {\n api.createRecord('04ea21c4', component.options)\n } else {\n api.reload('04ea21c4', component.options)\n }\n module.hot.accept(\"./popoverMenu.vue?vue&type=template&id=04ea21c4&\", function () {\n api.rerender('04ea21c4', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/popoverMenu.vue\"\nexport default component.exports","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"followupsection\", attrs: { id: \"updatenotification\" } },\n [\n _c(\n \"div\",\n { staticClass: \"update\" },\n [\n _vm.isNewVersionAvailable\n ? [\n _vm.versionIsEol\n ? _c(\"p\", [\n _c(\"span\", { staticClass: \"warning\" }, [\n _c(\"span\", { staticClass: \"icon icon-error\" }),\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible.\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\"\n )\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"p\", [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(_vm.newVersionAvailableString)\n }\n }),\n _c(\"br\"),\n _vm._v(\" \"),\n !_vm.isListFetched\n ? _c(\"span\", { staticClass: \"icon icon-loading-small\" })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"span\", {\n domProps: { innerHTML: _vm._s(_vm.statusText) }\n })\n ]),\n _vm._v(\" \"),\n _vm.missingAppUpdates.length\n ? [\n _c(\n \"h3\",\n { on: { click: _vm.toggleHideMissingUpdates } },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Apps missing updates\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\\t\"\n ),\n !_vm.hideMissingUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-n\"\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hideMissingUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-s\"\n })\n : _vm._e()\n ]\n ),\n _vm._v(\" \"),\n !_vm.hideMissingUpdates\n ? _c(\n \"ul\",\n { staticClass: \"applist\" },\n _vm._l(_vm.missingAppUpdates, function(app) {\n return _c(\"li\", [\n _c(\n \"a\",\n {\n attrs: {\n href:\n \"https://apps.nextcloud.com/apps/\" +\n app.appId,\n title: _vm.t(\"settings\", \"View in store\")\n }\n },\n [_vm._v(_vm._s(app.appName) + \" ↗\")]\n )\n ])\n })\n )\n : _vm._e()\n ]\n : _vm._e(),\n _vm._v(\" \"),\n _vm.availableAppUpdates.length\n ? [\n _c(\n \"h3\",\n { on: { click: _vm.toggleHideAvailableUpdates } },\n [\n _vm._v(\n \"\\n\\t\\t\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Apps with available updates\"\n )\n ) +\n \"\\n\\t\\t\\t\\t\\t\"\n ),\n !_vm.hideAvailableUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-n\"\n })\n : _vm._e(),\n _vm._v(\" \"),\n _vm.hideAvailableUpdates\n ? _c(\"span\", {\n staticClass: \"icon icon-triangle-s\"\n })\n : _vm._e()\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n { staticClass: \"applist\" },\n _vm._l(_vm.availableAppUpdates, function(app) {\n return !_vm.hideAvailableUpdates\n ? _c(\"li\", [\n _c(\n \"a\",\n {\n attrs: {\n href:\n \"https://apps.nextcloud.com/apps/\" +\n app.appId,\n title: _vm.t(\"settings\", \"View in store\")\n }\n },\n [_vm._v(_vm._s(app.appName) + \" ↗\")]\n )\n ])\n : _vm._e()\n })\n )\n ]\n : _vm._e(),\n _vm._v(\" \"),\n _vm.updaterEnabled\n ? _c(\n \"a\",\n {\n staticClass: \"button\",\n attrs: { href: \"#\" },\n on: { click: _vm.clickUpdaterButton }\n },\n [\n _vm._v(\n _vm._s(_vm.t(\"updatenotification\", \"Open updater\"))\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.downloadLink\n ? _c(\n \"a\",\n {\n staticClass: \"button\",\n class: { hidden: !_vm.updaterEnabled },\n attrs: { href: _vm.downloadLink }\n },\n [\n _vm._v(\n _vm._s(_vm.t(\"updatenotification\", \"Download now\"))\n )\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.whatsNew\n ? _c(\"div\", { staticClass: \"whatsNew\" }, [\n _c(\"div\", { staticClass: \"toggleWhatsNew\" }, [\n _c(\n \"span\",\n {\n directives: [\n {\n name: \"click-outside\",\n rawName: \"v-click-outside\",\n value: _vm.hideMenu,\n expression: \"hideMenu\"\n }\n ],\n on: { click: _vm.toggleMenu }\n },\n [\n _vm._v(\n _vm._s(_vm.t(\"updatenotification\", \"What's new?\"))\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"popovermenu\",\n class: {\n \"menu-center\": true,\n open: _vm.openedWhatsNew\n }\n },\n [\n _c(\"popover-menu\", {\n attrs: { menu: _vm.whatsNew }\n })\n ],\n 1\n )\n ])\n ])\n : _vm._e()\n ]\n : !_vm.isUpdateChecked\n ? [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The update check is not yet finished. Please refresh the page.\"\n )\n )\n )\n ]\n : [\n _vm._v(\n \"\\n\\t\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Your version is up to date.\"\n )\n ) +\n \"\\n\\t\\t\\t\"\n ),\n _c(\"span\", {\n staticClass: \"icon-info svg\",\n attrs: { title: _vm.lastCheckedOnString }\n })\n ],\n _vm._v(\" \"),\n !_vm.isDefaultUpdateServerURL\n ? [\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"A non-default update server is in use to be checked for updates:\"\n )\n ) + \" \"\n ),\n _c(\"code\", [_vm._v(_vm._s(_vm.updateServerURL))])\n ])\n ]\n : _vm._e()\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"p\", [\n _c(\"label\", { attrs: { for: \"release-channel\" } }, [\n _vm._v(_vm._s(_vm.t(\"updatenotification\", \"Update channel:\")))\n ]),\n _vm._v(\" \"),\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.currentChannel,\n expression: \"currentChannel\"\n }\n ],\n attrs: { id: \"release-channel\" },\n on: {\n change: [\n function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.currentChannel = $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n },\n _vm.changeReleaseChannel\n ]\n }\n },\n _vm._l(_vm.channels, function(channel) {\n return _c(\"option\", { domProps: { value: channel } }, [\n _vm._v(_vm._s(channel))\n ])\n })\n ),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"msg\", attrs: { id: \"channel_save_msg\" } }),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel.\"\n )\n )\n )\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found.\"\n )\n )\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\"p\", { staticClass: \"channel-description\" }, [\n _c(\"span\", {\n domProps: { innerHTML: _vm._s(_vm.productionInfoString) }\n }),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", { domProps: { innerHTML: _vm._s(_vm.stableInfoString) } }),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", { domProps: { innerHTML: _vm._s(_vm.betaInfoString) } })\n ]),\n _vm._v(\" \"),\n _c(\n \"p\",\n { attrs: { id: \"oca_updatenotification_groups\" } },\n [\n _vm._v(\n \"\\n\\t\\t\" +\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Notify members of the following groups about available updates:\"\n )\n ) +\n \"\\n\\t\\t\"\n ),\n _c(\"v-select\", {\n attrs: {\n multiple: \"\",\n value: _vm.notifyGroups,\n options: _vm.availableGroups\n }\n }),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm.currentChannel === \"daily\" || _vm.currentChannel === \"git\"\n ? _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"Only notification for app updates are available.\"\n )\n )\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.currentChannel === \"daily\"\n ? _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The selected update channel makes dedicated notifications for the server obsolete.\"\n )\n )\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.currentChannel === \"git\"\n ? _c(\"em\", [\n _vm._v(\n _vm._s(\n _vm.t(\n \"updatenotification\",\n \"The selected update channel does not support updates of the server.\"\n )\n )\n )\n ])\n : _vm._e()\n ],\n 1\n )\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./root.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./root.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./root.vue?vue&type=template&id=6f6af01c&\"\nimport script from \"./root.vue?vue&type=script&lang=js&\"\nexport * from \"./root.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* hot reload */\nif (module.hot) {\n var api = require(\"/home/roeland/nc/server/apps/updatenotification/node_modules/vue-hot-reload-api/dist/index.js\")\n api.install(require('vue'))\n if (api.compatible) {\n module.hot.accept()\n if (!module.hot.data) {\n api.createRecord('6f6af01c', component.options)\n } else {\n api.reload('6f6af01c', component.options)\n }\n module.hot.accept(\"./root.vue?vue&type=template&id=6f6af01c&\", function () {\n api.rerender('6f6af01c', {\n render: render,\n staticRenderFns: staticRenderFns\n })\n })\n }\n}\ncomponent.options.__file = \"src/components/root.vue\"\nexport default component.exports","/**\n * @copyright Copyright (c) 2018 Joas Schilling <coding@schilljs.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\n/* global define, $ */\nimport Vue from 'vue';\nimport Root from './components/root'\n\nVue.mixin({\n\tmethods: {\n\t\tt: function(app, text, vars, count, options) {\n\t\t\treturn OC.L10N.translate(app, text, vars, count, options);\n\t\t},\n\t\tn: function(app, textSingular, textPlural, count, vars, options) {\n\t\t\treturn OC.L10N.translatePlural(app, textSingular, textPlural, count, vars, options);\n\t\t}\n\t}\n});\n\nconst vm = new Vue({\n\trender: h => h(Root)\n}).$mount('#updatenotification');\n\n\n"],"sourceRoot":""} \ No newline at end of file
diff --git a/apps/updatenotification/l10n/cs.js b/apps/updatenotification/l10n/cs.js
index f2557a9d3b1..c9b94e7e754 100644
--- a/apps/updatenotification/l10n/cs.js
+++ b/apps/updatenotification/l10n/cs.js
@@ -1,19 +1,20 @@
OC.L10N.register(
"updatenotification",
{
- "{version} is available. Get more information on how to update." : "Je dostupná {version}. Přečtěte si více informací jak aktualizovat.",
- "Update notifications" : "Aktualizovat upozornění",
+ "{version} is available. Get more information on how to update." : "Je k dispozici {version}. Přečtěte informace o tom, jak aktualizovat.",
+ "Update notifications" : "Aktualizovat oznámení",
"Channel updated" : "Kanál aktualizován",
- "The update server could not be reached since %d days to check for new updates." : "Aktualizační server nebyl dosažen %d dní pro kontrolu aktualizací.",
- "Please check the Nextcloud and server log files for errors." : "Po chybách se podívejte v protokolech Nextcloudu a webového serveru.",
+ "The update server could not be reached since %d days to check for new updates." : "Aktualizační server nebyl %d dní dosažitelný pro kontrolu aktualizací.",
+ "Please check the Nextcloud and server log files for errors." : "Podívejte se po chybách v záznamu událostí Nextcloud a serveru.",
"Update to %1$s is available." : "Je dostupná aktualizace na %1$s.",
"Update for %1$s to version %2$s is available." : "Je dostupná aktualizace pro %1$s na verzi %2$s.",
"Update for {app} to version %s is available." : "Pro {app} je dostupná aktualizace na verzi %s.",
"Update notification" : "Upozornění na aktualizaci",
+ "Displays update notifications for Nextcloud and provides the SSO for the updater." : "Zobrazí oznámení o aktualizacích pro Nextcloud a poskytuje sjednocené přihlašování pro aktualizace.",
"Apps with available updates" : "Aplikace s dostupnými aktualizacemi",
"Open updater" : "Otevřít aktualizátor",
"What's new?" : "Co je nového?",
- "The update check is not yet finished. Please refresh the page." : "Kontrola aktualizací ještě neskončila. Obnovte stránku.",
+ "The update check is not yet finished. Please refresh the page." : "Kontrola aktualizací ještě neskončila. Načtěte stránku znovu.",
"A non-default update server is in use to be checked for updates:" : "Pro kontrolu aktualizací se používá jiný než výchozí server:",
"Update channel:" : "Aktualizovat kanál:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Vždy můžete aktualizovat na novější verzi / experimentální kanál. Poté ale nelze nikdy provést downgrade zpět na nižší stabilní kanál.",
@@ -25,13 +26,16 @@ OC.L10N.register(
"Checked on {lastCheckedDate}" : "Zkontrolováno {lastCheckedDate}",
"Checking apps for compatible updates" : "Zjišťuje se dostupnost kompatibilních aktualizací aplikací",
"Please make sure your config.php does not set <samp>appstoreenabled</samp> to false." : "Ověřte, že v souboru s nastaveními config.php není volba <samp>appstoreenabled</samp> nastavena na hodnotu false.",
+ "Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore." : "Nedaří se spojit s katalogem aplikací nebo tento nevrátil vůbec žádné aktualizace. Vyhledejte aktualizace ručně nebo ověřte, zda má váš server přístup k Internetu a může se spojit s katalogem.",
"<strong>All</strong> apps have an update for this version available" : "<strong>Všehny</strong> aplikace mají k dispozici aktualizaci pro tuto verzi",
"_<strong>%n</strong> app has no update for this version available_::_<strong>%n</strong> apps have no update for this version available_" : ["<strong>%n</strong> aplikace nemá k dispozici aktualizaci na tuto verzi","<strong>%n</strong> aplikace nemají k dispozici aktualizaci na tuto verzi","<strong>%n</strong> aplikací nemá k dispozici aktualizaci na tuto verzi","<strong>%n</strong> aplikace nemají k dispozici aktualizaci na tuto verzi"],
+ "<strong>production</strong> will always provide the latest patch level, but not update to the next major release immediately. That update usually happens with the second minor release (x.0.2)." : "<strong>produkční</strong> vždy poskytuje nejnovější opravy, ale neaktualizuje hned na příští hlavní verzi. Taková aktualizace se obvykle děje při druhém podvydání (x.0.2).",
"<strong>stable</strong> is the most recent stable version. It is suited for regular use and will always update to the latest major version." : "<strong>stable</strong> je nejnovější stabilní verze. Je vhodná pro běžné používání a vždy ji lze aktualizovat na nejnovější hlavní verzi.",
+ "<strong>beta</strong> is a pre-release version only for testing new features, not for production environments." : "<strong>beta</strong> je pouze předprodukční verze pro zkoušení nových funkcí, ne pro produkční nasazení.",
"View changelog" : "Zobrazit souhrn změn",
"Could not start updater, please try the manual update" : "Nepodařilo se spustit aktualizátor, zkuste ruční aktualizaci",
"A new version is available: %s" : "Je dostupná nová verze: %s",
- "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "Verze, kterou provozujete, už není udržovaná. Prosím aktualizujte co nejdříve na podporovanou verzi.",
+ "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "Verze, kterou provozujete, už není udržovaná. Aktualizujte co nejdříve na podporovanou verzi.",
"Download now" : "Stáhnout nyní",
"Your version is up to date." : "Používáte nejnovější verzi.",
"Checked on %s" : "Zkontrolováno %s",
diff --git a/apps/updatenotification/l10n/cs.json b/apps/updatenotification/l10n/cs.json
index b86b09c8ec3..6a425045659 100644
--- a/apps/updatenotification/l10n/cs.json
+++ b/apps/updatenotification/l10n/cs.json
@@ -1,17 +1,18 @@
{ "translations": {
- "{version} is available. Get more information on how to update." : "Je dostupná {version}. Přečtěte si více informací jak aktualizovat.",
- "Update notifications" : "Aktualizovat upozornění",
+ "{version} is available. Get more information on how to update." : "Je k dispozici {version}. Přečtěte informace o tom, jak aktualizovat.",
+ "Update notifications" : "Aktualizovat oznámení",
"Channel updated" : "Kanál aktualizován",
- "The update server could not be reached since %d days to check for new updates." : "Aktualizační server nebyl dosažen %d dní pro kontrolu aktualizací.",
- "Please check the Nextcloud and server log files for errors." : "Po chybách se podívejte v protokolech Nextcloudu a webového serveru.",
+ "The update server could not be reached since %d days to check for new updates." : "Aktualizační server nebyl %d dní dosažitelný pro kontrolu aktualizací.",
+ "Please check the Nextcloud and server log files for errors." : "Podívejte se po chybách v záznamu událostí Nextcloud a serveru.",
"Update to %1$s is available." : "Je dostupná aktualizace na %1$s.",
"Update for %1$s to version %2$s is available." : "Je dostupná aktualizace pro %1$s na verzi %2$s.",
"Update for {app} to version %s is available." : "Pro {app} je dostupná aktualizace na verzi %s.",
"Update notification" : "Upozornění na aktualizaci",
+ "Displays update notifications for Nextcloud and provides the SSO for the updater." : "Zobrazí oznámení o aktualizacích pro Nextcloud a poskytuje sjednocené přihlašování pro aktualizace.",
"Apps with available updates" : "Aplikace s dostupnými aktualizacemi",
"Open updater" : "Otevřít aktualizátor",
"What's new?" : "Co je nového?",
- "The update check is not yet finished. Please refresh the page." : "Kontrola aktualizací ještě neskončila. Obnovte stránku.",
+ "The update check is not yet finished. Please refresh the page." : "Kontrola aktualizací ještě neskončila. Načtěte stránku znovu.",
"A non-default update server is in use to be checked for updates:" : "Pro kontrolu aktualizací se používá jiný než výchozí server:",
"Update channel:" : "Aktualizovat kanál:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Vždy můžete aktualizovat na novější verzi / experimentální kanál. Poté ale nelze nikdy provést downgrade zpět na nižší stabilní kanál.",
@@ -23,13 +24,16 @@
"Checked on {lastCheckedDate}" : "Zkontrolováno {lastCheckedDate}",
"Checking apps for compatible updates" : "Zjišťuje se dostupnost kompatibilních aktualizací aplikací",
"Please make sure your config.php does not set <samp>appstoreenabled</samp> to false." : "Ověřte, že v souboru s nastaveními config.php není volba <samp>appstoreenabled</samp> nastavena na hodnotu false.",
+ "Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore." : "Nedaří se spojit s katalogem aplikací nebo tento nevrátil vůbec žádné aktualizace. Vyhledejte aktualizace ručně nebo ověřte, zda má váš server přístup k Internetu a může se spojit s katalogem.",
"<strong>All</strong> apps have an update for this version available" : "<strong>Všehny</strong> aplikace mají k dispozici aktualizaci pro tuto verzi",
"_<strong>%n</strong> app has no update for this version available_::_<strong>%n</strong> apps have no update for this version available_" : ["<strong>%n</strong> aplikace nemá k dispozici aktualizaci na tuto verzi","<strong>%n</strong> aplikace nemají k dispozici aktualizaci na tuto verzi","<strong>%n</strong> aplikací nemá k dispozici aktualizaci na tuto verzi","<strong>%n</strong> aplikace nemají k dispozici aktualizaci na tuto verzi"],
+ "<strong>production</strong> will always provide the latest patch level, but not update to the next major release immediately. That update usually happens with the second minor release (x.0.2)." : "<strong>produkční</strong> vždy poskytuje nejnovější opravy, ale neaktualizuje hned na příští hlavní verzi. Taková aktualizace se obvykle děje při druhém podvydání (x.0.2).",
"<strong>stable</strong> is the most recent stable version. It is suited for regular use and will always update to the latest major version." : "<strong>stable</strong> je nejnovější stabilní verze. Je vhodná pro běžné používání a vždy ji lze aktualizovat na nejnovější hlavní verzi.",
+ "<strong>beta</strong> is a pre-release version only for testing new features, not for production environments." : "<strong>beta</strong> je pouze předprodukční verze pro zkoušení nových funkcí, ne pro produkční nasazení.",
"View changelog" : "Zobrazit souhrn změn",
"Could not start updater, please try the manual update" : "Nepodařilo se spustit aktualizátor, zkuste ruční aktualizaci",
"A new version is available: %s" : "Je dostupná nová verze: %s",
- "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "Verze, kterou provozujete, už není udržovaná. Prosím aktualizujte co nejdříve na podporovanou verzi.",
+ "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "Verze, kterou provozujete, už není udržovaná. Aktualizujte co nejdříve na podporovanou verzi.",
"Download now" : "Stáhnout nyní",
"Your version is up to date." : "Používáte nejnovější verzi.",
"Checked on %s" : "Zkontrolováno %s",
diff --git a/apps/updatenotification/l10n/el.js b/apps/updatenotification/l10n/el.js
index 369638fcf63..f5689487d19 100644
--- a/apps/updatenotification/l10n/el.js
+++ b/apps/updatenotification/l10n/el.js
@@ -9,8 +9,10 @@ OC.L10N.register(
"Update to %1$s is available." : "Είναι διαθέσιμη η ενημέρωση σε %1$s.",
"Update for %1$s to version %2$s is available." : "Είναι διαθέσιμη η ενημέρωση από την έκδοση %1$s στην %2$s.",
"Update for {app} to version %s is available." : "Είναι διαθέσιμη η ενημέρωση της εφαρμογής {app} στην έκδοση %s",
+ "Update notification" : "Ειδοποίηση ενημέρωσης",
"Apps with available updates" : "Εφαρμογές με διαθέσιμες ενημερώσεις",
"Open updater" : "Άνοιγμα εφαρμογής ενημέρωσης",
+ "What's new?" : "Τι νέο υπάρχει;",
"Update channel:" : "Ενημέρωση καναλιού:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Μπορείτε πάντα να περάσετε σε νεότερη / πειραματική έκδοση. Αλλά ποτέ δεν μπορείτε να γυρίσετε πίσω σε πιο σταθερό κανάλι.",
"Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found." : "Σημειώστε ότι μετά από μια νέα διανομή μπορεί να περάσει λίγος καιρός πριν εμφανιστεί εδώ. Κυκλοφορούμε κατά διαστήματα νέες εκδόσεις στους χρήστες μας και κάποιες φορές παραλείπουμε κάποια έκδοση αν βρεθούν προβλήματα.",
diff --git a/apps/updatenotification/l10n/el.json b/apps/updatenotification/l10n/el.json
index 3cdfae3ac08..23b4e13dde7 100644
--- a/apps/updatenotification/l10n/el.json
+++ b/apps/updatenotification/l10n/el.json
@@ -7,8 +7,10 @@
"Update to %1$s is available." : "Είναι διαθέσιμη η ενημέρωση σε %1$s.",
"Update for %1$s to version %2$s is available." : "Είναι διαθέσιμη η ενημέρωση από την έκδοση %1$s στην %2$s.",
"Update for {app} to version %s is available." : "Είναι διαθέσιμη η ενημέρωση της εφαρμογής {app} στην έκδοση %s",
+ "Update notification" : "Ειδοποίηση ενημέρωσης",
"Apps with available updates" : "Εφαρμογές με διαθέσιμες ενημερώσεις",
"Open updater" : "Άνοιγμα εφαρμογής ενημέρωσης",
+ "What's new?" : "Τι νέο υπάρχει;",
"Update channel:" : "Ενημέρωση καναλιού:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Μπορείτε πάντα να περάσετε σε νεότερη / πειραματική έκδοση. Αλλά ποτέ δεν μπορείτε να γυρίσετε πίσω σε πιο σταθερό κανάλι.",
"Note that after a new release it can take some time before it shows up here. We roll out new versions spread out over time to our users and sometimes skip a version when issues are found." : "Σημειώστε ότι μετά από μια νέα διανομή μπορεί να περάσει λίγος καιρός πριν εμφανιστεί εδώ. Κυκλοφορούμε κατά διαστήματα νέες εκδόσεις στους χρήστες μας και κάποιες φορές παραλείπουμε κάποια έκδοση αν βρεθούν προβλήματα.",
diff --git a/apps/updatenotification/l10n/fi.js b/apps/updatenotification/l10n/fi.js
index e2dccc6b6b1..789c7689707 100644
--- a/apps/updatenotification/l10n/fi.js
+++ b/apps/updatenotification/l10n/fi.js
@@ -12,6 +12,7 @@ OC.L10N.register(
"Update notification" : "Päivitysilmoitus",
"Apps with available updates" : "Sovellukset, joihin saatavilla päivityksiä",
"Open updater" : "Avaa päivittäjä",
+ "What's new?" : "Mitä uutta?",
"The update check is not yet finished. Please refresh the page." : "Päivitystarkistus ei ole vielä valmis. Päivitä sivu.",
"Update channel:" : "Päivityskanava:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Voit aina päivittää uudempaan versioon tai kokeellisen jakelukanavan versioon. Et voi kuitenkaan palata aiempaan, vakaan julkaisukanavan versioon.",
@@ -20,6 +21,7 @@ OC.L10N.register(
"The selected update channel does not support updates of the server." : "Valittu päivityskanava ei tue palvelimen päivityksiä.",
"A new version is available: <strong>{newVersionString}</strong>" : "Uusi versio on saatavilla: <strong>{newVersionString}</strong>",
"Checked on {lastCheckedDate}" : "Tarkistettu {lastCheckedDate}",
+ "View changelog" : "Näytä muutosloki",
"Could not start updater, please try the manual update" : "Ei voitu aloittaa päivitystä, kokeile päivittämistä manuaalisesti",
"A new version is available: %s" : "Uusi versio on saatavilla: %s",
"The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "Käyttämäsi versio ei ole enää tuettu. Varmista, että päivität tuettuun versioon mahdollisimman pian.",
diff --git a/apps/updatenotification/l10n/fi.json b/apps/updatenotification/l10n/fi.json
index 49e37899442..b149ee6313c 100644
--- a/apps/updatenotification/l10n/fi.json
+++ b/apps/updatenotification/l10n/fi.json
@@ -10,6 +10,7 @@
"Update notification" : "Päivitysilmoitus",
"Apps with available updates" : "Sovellukset, joihin saatavilla päivityksiä",
"Open updater" : "Avaa päivittäjä",
+ "What's new?" : "Mitä uutta?",
"The update check is not yet finished. Please refresh the page." : "Päivitystarkistus ei ole vielä valmis. Päivitä sivu.",
"Update channel:" : "Päivityskanava:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Voit aina päivittää uudempaan versioon tai kokeellisen jakelukanavan versioon. Et voi kuitenkaan palata aiempaan, vakaan julkaisukanavan versioon.",
@@ -18,6 +19,7 @@
"The selected update channel does not support updates of the server." : "Valittu päivityskanava ei tue palvelimen päivityksiä.",
"A new version is available: <strong>{newVersionString}</strong>" : "Uusi versio on saatavilla: <strong>{newVersionString}</strong>",
"Checked on {lastCheckedDate}" : "Tarkistettu {lastCheckedDate}",
+ "View changelog" : "Näytä muutosloki",
"Could not start updater, please try the manual update" : "Ei voitu aloittaa päivitystä, kokeile päivittämistä manuaalisesti",
"A new version is available: %s" : "Uusi versio on saatavilla: %s",
"The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "Käyttämäsi versio ei ole enää tuettu. Varmista, että päivität tuettuun versioon mahdollisimman pian.",
diff --git a/apps/updatenotification/l10n/he.js b/apps/updatenotification/l10n/he.js
index 2d0de3fb09a..7f23ddb325b 100644
--- a/apps/updatenotification/l10n/he.js
+++ b/apps/updatenotification/l10n/he.js
@@ -1,17 +1,30 @@
OC.L10N.register(
"updatenotification",
{
- "Update notifications" : "עדכון דיווחים",
"{version} is available. Get more information on how to update." : "{version} זמינה. ניתן לקבל מידע נוסף על איך לעדכן.",
- "Updated channel" : "ערוץ מעודכן",
+ "Update notifications" : "עדכון דיווחים",
+ "Channel updated" : "הערוץ התעדכן",
+ "The update server could not be reached since %d days to check for new updates." : "לא ניתן לגשת אל שרת העדכון מזה %d ימים כדי לבדוק אם יש עדכונים חדשים.",
+ "Please check the Nextcloud and server log files for errors." : "נא לחפש שגיאות בקובצי היומן של Nextcloud ושל השרת.",
+ "Update to %1$s is available." : "קיים עדכון ל־%1$s.",
"Update for %1$s to version %2$s is available." : "עדכון של %1$s לגרסה %2$s זמין.",
- "Updater" : "מעדכן",
- "A new version is available: %s" : "קיימת גרסה מעודכנת: %s",
- "Open updater" : "פתיחת מעדכן",
- "Your version is up to date." : "הגרסה שבידך מעודכנת.",
- "Checked on %s" : "נבדק לאחרונה ב- %s",
+ "Update for {app} to version %s is available." : "קיים עדכון עבור {app} לגרסה %s.",
+ "Update notification" : "התראה על עדכון",
+ "Apps with available updates" : "יישומים עם עדכונים זמינים",
+ "Open updater" : "פתיחת המעדכן",
+ "What's new?" : "מה חדש?",
+ "The update check is not yet finished. Please refresh the page." : "בדיקת העדכונים לא הסתיימה עדיין. נא לעדכן את העמוד.",
"Update channel:" : "עדכון ערוץ:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "תמיד ניתן לעדכן לגרסה חדשה / ערוץ ניסיון. אבל לא ניתן להוריד גרסה לערוץ יציב יותר.",
- "Notify members of the following groups about available updates:" : "דיווח למשתמשים של קבוצות אלו על עדכונים זמינים:"
+ "Notify members of the following groups about available updates:" : "דיווח למשתמשים של קבוצות אלו על עדכונים זמינים:",
+ "A new version is available: <strong>{newVersionString}</strong>" : "גרסה חדשה זמינה: <strong>{newVersionString}</strong>",
+ "Checked on {lastCheckedDate}" : "נבדק לאחרונה ב־{lastCheckedDate}",
+ "Checking apps for compatible updates" : "היישומונים נבדקים לאיתור עדכונים תואמים",
+ "Could not start updater, please try the manual update" : "לא ניתן להתחיל את המעדכן, נא לנסות לעדכן ידנית",
+ "A new version is available: %s" : "קיימת גרסה מעודכנת: %s",
+ "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "הגרסה שפועלת אצלך אינה מתוחזקת יותר. נא לוודא לעדכן לגרסה נתמכת במהירות האפשרית.",
+ "Download now" : "להוריד כעת",
+ "Your version is up to date." : "הגרסה שבידך מעודכנת.",
+ "Checked on %s" : "נבדק לאחרונה ב- %s"
},
-"nplurals=2; plural=(n != 1);");
+"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;");
diff --git a/apps/updatenotification/l10n/he.json b/apps/updatenotification/l10n/he.json
index c629297c1ae..9b24a51a79b 100644
--- a/apps/updatenotification/l10n/he.json
+++ b/apps/updatenotification/l10n/he.json
@@ -1,15 +1,28 @@
{ "translations": {
- "Update notifications" : "עדכון דיווחים",
"{version} is available. Get more information on how to update." : "{version} זמינה. ניתן לקבל מידע נוסף על איך לעדכן.",
- "Updated channel" : "ערוץ מעודכן",
+ "Update notifications" : "עדכון דיווחים",
+ "Channel updated" : "הערוץ התעדכן",
+ "The update server could not be reached since %d days to check for new updates." : "לא ניתן לגשת אל שרת העדכון מזה %d ימים כדי לבדוק אם יש עדכונים חדשים.",
+ "Please check the Nextcloud and server log files for errors." : "נא לחפש שגיאות בקובצי היומן של Nextcloud ושל השרת.",
+ "Update to %1$s is available." : "קיים עדכון ל־%1$s.",
"Update for %1$s to version %2$s is available." : "עדכון של %1$s לגרסה %2$s זמין.",
- "Updater" : "מעדכן",
- "A new version is available: %s" : "קיימת גרסה מעודכנת: %s",
- "Open updater" : "פתיחת מעדכן",
- "Your version is up to date." : "הגרסה שבידך מעודכנת.",
- "Checked on %s" : "נבדק לאחרונה ב- %s",
+ "Update for {app} to version %s is available." : "קיים עדכון עבור {app} לגרסה %s.",
+ "Update notification" : "התראה על עדכון",
+ "Apps with available updates" : "יישומים עם עדכונים זמינים",
+ "Open updater" : "פתיחת המעדכן",
+ "What's new?" : "מה חדש?",
+ "The update check is not yet finished. Please refresh the page." : "בדיקת העדכונים לא הסתיימה עדיין. נא לעדכן את העמוד.",
"Update channel:" : "עדכון ערוץ:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "תמיד ניתן לעדכן לגרסה חדשה / ערוץ ניסיון. אבל לא ניתן להוריד גרסה לערוץ יציב יותר.",
- "Notify members of the following groups about available updates:" : "דיווח למשתמשים של קבוצות אלו על עדכונים זמינים:"
-},"pluralForm" :"nplurals=2; plural=(n != 1);"
+ "Notify members of the following groups about available updates:" : "דיווח למשתמשים של קבוצות אלו על עדכונים זמינים:",
+ "A new version is available: <strong>{newVersionString}</strong>" : "גרסה חדשה זמינה: <strong>{newVersionString}</strong>",
+ "Checked on {lastCheckedDate}" : "נבדק לאחרונה ב־{lastCheckedDate}",
+ "Checking apps for compatible updates" : "היישומונים נבדקים לאיתור עדכונים תואמים",
+ "Could not start updater, please try the manual update" : "לא ניתן להתחיל את המעדכן, נא לנסות לעדכן ידנית",
+ "A new version is available: %s" : "קיימת גרסה מעודכנת: %s",
+ "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "הגרסה שפועלת אצלך אינה מתוחזקת יותר. נא לוודא לעדכן לגרסה נתמכת במהירות האפשרית.",
+ "Download now" : "להוריד כעת",
+ "Your version is up to date." : "הגרסה שבידך מעודכנת.",
+ "Checked on %s" : "נבדק לאחרונה ב- %s"
+},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/updatenotification/l10n/ja.js b/apps/updatenotification/l10n/ja.js
index 60d1aceba79..fa6a12beee7 100644
--- a/apps/updatenotification/l10n/ja.js
+++ b/apps/updatenotification/l10n/ja.js
@@ -9,6 +9,7 @@ OC.L10N.register(
"Update to %1$s is available." : "%1$s への更新が利用可能です。",
"Update for %1$s to version %2$s is available." : "%1$s に対するバージョン %2$s へアップデートが利用可能です。",
"Update for {app} to version %s is available." : " {app} に対するバージョン %s へアップデートが利用可能です。",
+ "Update notification" : "アップデート通知",
"Apps with available updates" : "アップデート可能なアプリ",
"Open updater" : "アップデーターを開く",
"The update check is not yet finished. Please refresh the page." : "アップデートチェックが完了していません。ページを更新してください。",
diff --git a/apps/updatenotification/l10n/ja.json b/apps/updatenotification/l10n/ja.json
index 55c4ca84867..20ece849743 100644
--- a/apps/updatenotification/l10n/ja.json
+++ b/apps/updatenotification/l10n/ja.json
@@ -7,6 +7,7 @@
"Update to %1$s is available." : "%1$s への更新が利用可能です。",
"Update for %1$s to version %2$s is available." : "%1$s に対するバージョン %2$s へアップデートが利用可能です。",
"Update for {app} to version %s is available." : " {app} に対するバージョン %s へアップデートが利用可能です。",
+ "Update notification" : "アップデート通知",
"Apps with available updates" : "アップデート可能なアプリ",
"Open updater" : "アップデーターを開く",
"The update check is not yet finished. Please refresh the page." : "アップデートチェックが完了していません。ページを更新してください。",
diff --git a/apps/updatenotification/l10n/nl.js b/apps/updatenotification/l10n/nl.js
index 3af01a62097..e69a369b113 100644
--- a/apps/updatenotification/l10n/nl.js
+++ b/apps/updatenotification/l10n/nl.js
@@ -30,9 +30,12 @@ OC.L10N.register(
"<strong>All</strong> apps have an update for this version available" : "<strong>Alle</strong> apps hebben een update voor deze versie beschikbaar",
"_<strong>%n</strong> app has no update for this version available_::_<strong>%n</strong> apps have no update for this version available_" : ["<strong>%n</strong> app heeft geen update voor deze versie beschikbaar","<strong>%n</strong> apps hebben geen update voor deze versie beschikbaar"],
"<strong>production</strong> will always provide the latest patch level, but not update to the next major release immediately. That update usually happens with the second minor release (x.0.2)." : "<strong>productie</strong> heeft altijd de laatste patches, maar de update naar de volgende grote release nog niet onmiddellijk. Die update gebeurt meestal bij de tweede kleine release (x.0.2).",
+ "<strong>stable</strong> is the most recent stable version. It is suited for regular use and will always update to the latest major version." : "<strong>stable</strong> is de recentste stabiele versie. Het is geschikt voor regulier gebruik en zal altijd bijwerken naar de laatste grote versie.",
"<strong>beta</strong> is a pre-release version only for testing new features, not for production environments." : "<strong>bèta</strong> is een versie om nieuwe functies uit te testen, niet om te gebruiken in een productieomgeving.",
+ "View changelog" : "Bekijk wijzigingenoverzicht",
"Could not start updater, please try the manual update" : "Kon de updater niet starten, probeer alsjeblieft de handmatige update",
"A new version is available: %s" : "Er is een nieuwe versie beschikbaar: %s",
+ "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "De versie die je gebruikt, wordt niet langer ondersteund. Zorg ervoor om zo snel mogelijk bij te werken naar een ondersteunde versie.",
"Download now" : "Download nu",
"Your version is up to date." : "Je versie is up to date.",
"Checked on %s" : "Gecontroleerd op %s",
diff --git a/apps/updatenotification/l10n/nl.json b/apps/updatenotification/l10n/nl.json
index 8c381a25995..7b0ace74335 100644
--- a/apps/updatenotification/l10n/nl.json
+++ b/apps/updatenotification/l10n/nl.json
@@ -28,9 +28,12 @@
"<strong>All</strong> apps have an update for this version available" : "<strong>Alle</strong> apps hebben een update voor deze versie beschikbaar",
"_<strong>%n</strong> app has no update for this version available_::_<strong>%n</strong> apps have no update for this version available_" : ["<strong>%n</strong> app heeft geen update voor deze versie beschikbaar","<strong>%n</strong> apps hebben geen update voor deze versie beschikbaar"],
"<strong>production</strong> will always provide the latest patch level, but not update to the next major release immediately. That update usually happens with the second minor release (x.0.2)." : "<strong>productie</strong> heeft altijd de laatste patches, maar de update naar de volgende grote release nog niet onmiddellijk. Die update gebeurt meestal bij de tweede kleine release (x.0.2).",
+ "<strong>stable</strong> is the most recent stable version. It is suited for regular use and will always update to the latest major version." : "<strong>stable</strong> is de recentste stabiele versie. Het is geschikt voor regulier gebruik en zal altijd bijwerken naar de laatste grote versie.",
"<strong>beta</strong> is a pre-release version only for testing new features, not for production environments." : "<strong>bèta</strong> is een versie om nieuwe functies uit te testen, niet om te gebruiken in een productieomgeving.",
+ "View changelog" : "Bekijk wijzigingenoverzicht",
"Could not start updater, please try the manual update" : "Kon de updater niet starten, probeer alsjeblieft de handmatige update",
"A new version is available: %s" : "Er is een nieuwe versie beschikbaar: %s",
+ "The version you are running is not maintained anymore. Please make sure to update to a supported version as soon as possible." : "De versie die je gebruikt, wordt niet langer ondersteund. Zorg ervoor om zo snel mogelijk bij te werken naar een ondersteunde versie.",
"Download now" : "Download nu",
"Your version is up to date." : "Je versie is up to date.",
"Checked on %s" : "Gecontroleerd op %s",
diff --git a/apps/updatenotification/l10n/pl.js b/apps/updatenotification/l10n/pl.js
index 7a79bf95a6d..89ff9d4943a 100644
--- a/apps/updatenotification/l10n/pl.js
+++ b/apps/updatenotification/l10n/pl.js
@@ -9,7 +9,11 @@ OC.L10N.register(
"Update to %1$s is available." : "Aktualizacja do %1$s jest dostępna.",
"Update for %1$s to version %2$s is available." : "Dostępna jest aktualizacja dla %1$s do wersji %2$s",
"Update for {app} to version %s is available." : "Aktualizacja dla {app} do wersji %s jest dostępna.",
+ "Update notification" : "Powiadomienie o aktualizacji",
+ "Displays update notifications for Nextcloud and provides the SSO for the updater." : "Wyświetla powiadomienia o aktualizacji dla usługi NextCloud i udostępnia SSO dla aktualizatora.",
+ "Apps with available updates" : "Dostępne aktualizacje",
"Open updater" : "Otwórz aktualizator",
+ "What's new?" : "Co nowego?",
"The update check is not yet finished. Please refresh the page." : "Sprawdzanie aktualizacji nie zostało jeszcze zakończone. Odśwież stronę.",
"A non-default update server is in use to be checked for updates:" : "Do sprawdzania aktualizacji nie są używane domyślne serwery aktualizacji:",
"Update channel:" : "Kanał aktualizacji:",
@@ -18,6 +22,13 @@ OC.L10N.register(
"Notify members of the following groups about available updates:" : "Powiadom członków następujących grup o dostępnych aktualizacjach: ",
"Only notification for app updates are available." : "Tylko powiadomienia o aktualizacjach aplikacji są dostępne.",
"The selected update channel does not support updates of the server." : "Wybrany kanał aktualizacji nie obsługuje danego serwera.",
+ "A new version is available: <strong>{newVersionString}</strong>" : "Dostępna jest nowa wersja: <strong>{newVersionString}</strong>",
+ "Checked on {lastCheckedDate}" : "Sprawdzono {lastCheckedDate}",
+ "Checking apps for compatible updates" : "Sprawdzanie aplikacji pod kątem zgodnych aktualizacji",
+ "Please make sure your config.php does not set <samp>appstoreenabled</samp> to false." : "Upewnij się, że opcja <samp>appstoreenabled</samp> w Twoim config.php nie jest ustawiona na false.",
+ "Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore." : "Nie można połączyć się z appstore lub całkowicie zgłasza brak aktualizacji. Wyszukaj aktualizacje ręcznie lub upewnij się, że masz dostęp do Internetu i możesz łączyć się z appstore.",
+ "<strong>All</strong> apps have an update for this version available" : "<strong>Wszystkie</strong> aplikacje mają aktualizację dla tej wersji",
+ "View changelog" : "Zobacz listę zmian",
"Could not start updater, please try the manual update" : "Nie można uruchomić aktualizacji, spróbuj z aktualizować ręcznie",
"A new version is available: %s" : "Dostępna jest nowa wersja: %s",
"Download now" : "Pobierz teraz",
diff --git a/apps/updatenotification/l10n/pl.json b/apps/updatenotification/l10n/pl.json
index 7a322ad5eef..dfd858195b5 100644
--- a/apps/updatenotification/l10n/pl.json
+++ b/apps/updatenotification/l10n/pl.json
@@ -7,7 +7,11 @@
"Update to %1$s is available." : "Aktualizacja do %1$s jest dostępna.",
"Update for %1$s to version %2$s is available." : "Dostępna jest aktualizacja dla %1$s do wersji %2$s",
"Update for {app} to version %s is available." : "Aktualizacja dla {app} do wersji %s jest dostępna.",
+ "Update notification" : "Powiadomienie o aktualizacji",
+ "Displays update notifications for Nextcloud and provides the SSO for the updater." : "Wyświetla powiadomienia o aktualizacji dla usługi NextCloud i udostępnia SSO dla aktualizatora.",
+ "Apps with available updates" : "Dostępne aktualizacje",
"Open updater" : "Otwórz aktualizator",
+ "What's new?" : "Co nowego?",
"The update check is not yet finished. Please refresh the page." : "Sprawdzanie aktualizacji nie zostało jeszcze zakończone. Odśwież stronę.",
"A non-default update server is in use to be checked for updates:" : "Do sprawdzania aktualizacji nie są używane domyślne serwery aktualizacji:",
"Update channel:" : "Kanał aktualizacji:",
@@ -16,6 +20,13 @@
"Notify members of the following groups about available updates:" : "Powiadom członków następujących grup o dostępnych aktualizacjach: ",
"Only notification for app updates are available." : "Tylko powiadomienia o aktualizacjach aplikacji są dostępne.",
"The selected update channel does not support updates of the server." : "Wybrany kanał aktualizacji nie obsługuje danego serwera.",
+ "A new version is available: <strong>{newVersionString}</strong>" : "Dostępna jest nowa wersja: <strong>{newVersionString}</strong>",
+ "Checked on {lastCheckedDate}" : "Sprawdzono {lastCheckedDate}",
+ "Checking apps for compatible updates" : "Sprawdzanie aplikacji pod kątem zgodnych aktualizacji",
+ "Please make sure your config.php does not set <samp>appstoreenabled</samp> to false." : "Upewnij się, że opcja <samp>appstoreenabled</samp> w Twoim config.php nie jest ustawiona na false.",
+ "Could not connect to the appstore or the appstore returned no updates at all. Search manually for updates or make sure your server has access to the internet and can connect to the appstore." : "Nie można połączyć się z appstore lub całkowicie zgłasza brak aktualizacji. Wyszukaj aktualizacje ręcznie lub upewnij się, że masz dostęp do Internetu i możesz łączyć się z appstore.",
+ "<strong>All</strong> apps have an update for this version available" : "<strong>Wszystkie</strong> aplikacje mają aktualizację dla tej wersji",
+ "View changelog" : "Zobacz listę zmian",
"Could not start updater, please try the manual update" : "Nie można uruchomić aktualizacji, spróbuj z aktualizować ręcznie",
"A new version is available: %s" : "Dostępna jest nowa wersja: %s",
"Download now" : "Pobierz teraz",
diff --git a/apps/updatenotification/lib/Notification/Notifier.php b/apps/updatenotification/lib/Notification/Notifier.php
index c88937f0dff..4e3a30f225e 100644
--- a/apps/updatenotification/lib/Notification/Notifier.php
+++ b/apps/updatenotification/lib/Notification/Notifier.php
@@ -108,7 +108,7 @@ class Notifier implements INotifier {
$notification->setParsedSubject($l->t('Update to %1$s is available.', [$parameters['version']]));
if ($this->isAdmin()) {
- $notification->setLink($this->url->linkToRouteAbsolute('settings.AdminSettings.index') . '#updater');
+ $notification->setLink($this->url->linkToRouteAbsolute('settings.AdminSettings.index', ['section' => 'overview']) . '#version');
}
} else {
$appInfo = $this->getAppInfo($notification->getObjectType());
diff --git a/apps/updatenotification/package-lock.json b/apps/updatenotification/package-lock.json
index 5fbceffea51..b43c9926fba 100644
--- a/apps/updatenotification/package-lock.json
+++ b/apps/updatenotification/package-lock.json
@@ -30,202 +30,198 @@
}
},
"@webassemblyjs/ast": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.13.tgz",
- "integrity": "sha512-49nwvW/Hx9i+OYHg+mRhKZfAlqThr11Dqz8TsrvqGKMhdI2ijy3KBJOun2Z4770TPjrIJhR6KxChQIDaz8clDA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.6.tgz",
+ "integrity": "sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ==",
"dev": true,
"requires": {
- "@webassemblyjs/helper-module-context": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/wast-parser": "1.5.13",
- "debug": "^3.1.0",
+ "@webassemblyjs/helper-module-context": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/wast-parser": "1.7.6",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/floating-point-hex-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.13.tgz",
- "integrity": "sha512-vrvvB18Kh4uyghSKb0NTv+2WZx871WL2NzwMj61jcq2bXkyhRC+8Q0oD7JGVf0+5i/fKQYQSBCNMMsDMRVAMqA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz",
+ "integrity": "sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA==",
"dev": true
},
"@webassemblyjs/helper-api-error": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.13.tgz",
- "integrity": "sha512-dBh2CWYqjaDlvMmRP/kudxpdh30uXjIbpkLj9HQe+qtYlwvYjPRjdQXrq1cTAAOUSMTtzqbXIxEdEZmyKfcwsg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz",
+ "integrity": "sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg==",
"dev": true
},
"@webassemblyjs/helper-buffer": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.13.tgz",
- "integrity": "sha512-v7igWf1mHcpJNbn4m7e77XOAWXCDT76Xe7Is1VQFXc4K5jRcFrl9D0NrqM4XifQ0bXiuTSkTKMYqDxu5MhNljA==",
- "dev": true,
- "requires": {
- "debug": "^3.1.0"
- }
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz",
+ "integrity": "sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw==",
+ "dev": true
},
"@webassemblyjs/helper-code-frame": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.13.tgz",
- "integrity": "sha512-yN6ScQQDFCiAXnVctdVO/J5NQRbwyTbQzsGzEgXsAnrxhjp0xihh+nNHQTMrq5UhOqTb5LykpJAvEv9AT0jnAQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz",
+ "integrity": "sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg==",
"dev": true,
"requires": {
- "@webassemblyjs/wast-printer": "1.5.13"
+ "@webassemblyjs/wast-printer": "1.7.6"
}
},
"@webassemblyjs/helper-fsm": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.13.tgz",
- "integrity": "sha512-hSIKzbXjVMRvy3Jzhgu+vDd/aswJ+UMEnLRCkZDdknZO3Z9e6rp1DAs0tdLItjCFqkz9+0BeOPK/mk3eYvVzZg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz",
+ "integrity": "sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw==",
"dev": true
},
"@webassemblyjs/helper-module-context": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.13.tgz",
- "integrity": "sha512-zxJXULGPLB7r+k+wIlvGlXpT4CYppRz8fLUM/xobGHc9Z3T6qlmJD9ySJ2jknuktuuiR9AjnNpKYDECyaiX+QQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz",
+ "integrity": "sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw==",
"dev": true,
"requires": {
- "debug": "^3.1.0",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.13.tgz",
- "integrity": "sha512-0n3SoNGLvbJIZPhtMFq0XmmnA/YmQBXaZKQZcW8maGKwLpVcgjNrxpFZHEOLKjXJYVN5Il8vSfG7nRX50Zn+aw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz",
+ "integrity": "sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q==",
"dev": true
},
"@webassemblyjs/helper-wasm-section": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.13.tgz",
- "integrity": "sha512-IJ/goicOZ5TT1axZFSnlAtz4m8KEjYr12BNOANAwGFPKXM4byEDaMNXYowHMG0yKV9a397eU/NlibFaLwr1fbw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz",
+ "integrity": "sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "debug": "^3.1.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6"
}
},
"@webassemblyjs/ieee754": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.13.tgz",
- "integrity": "sha512-TseswvXEPpG5TCBKoLx9tT7+/GMACjC1ruo09j46ULRZWYm8XHpDWaosOjTnI7kr4SRJFzA6MWoUkAB+YCGKKg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz",
+ "integrity": "sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ==",
"dev": true,
"requires": {
- "ieee754": "^1.1.11"
+ "@xtuc/ieee754": "^1.2.0"
}
},
"@webassemblyjs/leb128": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.13.tgz",
- "integrity": "sha512-0NRMxrL+GG3eISGZBmLBLAVjphbN8Si15s7jzThaw1UE9e5BY1oH49/+MA1xBzxpf1OW5sf9OrPDOclk9wj2yg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.6.tgz",
+ "integrity": "sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ==",
"dev": true,
"requires": {
- "long": "4.0.0"
- },
- "dependencies": {
- "long": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
- "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==",
- "dev": true
- }
+ "@xtuc/long": "4.2.1"
}
},
"@webassemblyjs/utf8": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.5.13.tgz",
- "integrity": "sha512-Ve1ilU2N48Ew0lVGB8FqY7V7hXjaC4+PeZM+vDYxEd+R2iQ0q+Wb3Rw8v0Ri0+rxhoz6gVGsnQNb4FjRiEH/Ng==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.6.tgz",
+ "integrity": "sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw==",
"dev": true
},
"@webassemblyjs/wasm-edit": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.13.tgz",
- "integrity": "sha512-X7ZNW4+Hga4f2NmqENnHke2V/mGYK/xnybJSIXImt1ulxbCOEs/A+ZK/Km2jgihjyVxp/0z0hwIcxC6PrkWtgw==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz",
+ "integrity": "sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/helper-wasm-section": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "@webassemblyjs/wasm-opt": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
- "@webassemblyjs/wast-printer": "1.5.13",
- "debug": "^3.1.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/helper-wasm-section": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6",
+ "@webassemblyjs/wasm-opt": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6",
+ "@webassemblyjs/wast-printer": "1.7.6"
}
},
"@webassemblyjs/wasm-gen": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.13.tgz",
- "integrity": "sha512-yfv94Se8R73zmr8GAYzezFHc3lDwE/lBXQddSiIZEKZFuqy7yWtm3KMwA1uGbv5G1WphimJxboXHR80IgX1hQA==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz",
+ "integrity": "sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/ieee754": "1.5.13",
- "@webassemblyjs/leb128": "1.5.13",
- "@webassemblyjs/utf8": "1.5.13"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/ieee754": "1.7.6",
+ "@webassemblyjs/leb128": "1.7.6",
+ "@webassemblyjs/utf8": "1.7.6"
}
},
"@webassemblyjs/wasm-opt": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.13.tgz",
- "integrity": "sha512-IkXSkgzVhQ0QYAdIayuCWMmXSYx0dHGU8Ah/AxJf1gBvstMWVnzJnBwLsXLyD87VSBIcsqkmZ28dVb0mOC3oBg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz",
+ "integrity": "sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-buffer": "1.5.13",
- "@webassemblyjs/wasm-gen": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
- "debug": "^3.1.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-buffer": "1.7.6",
+ "@webassemblyjs/wasm-gen": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6"
}
},
"@webassemblyjs/wasm-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.13.tgz",
- "integrity": "sha512-XnYoIcu2iqq8/LrtmdnN3T+bRjqYFjRHqWbqK3osD/0r/Fcv4d9ecRzjVtC29ENEuNTK4mQ9yyxCBCbK8S/cpg==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz",
+ "integrity": "sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-api-error": "1.5.13",
- "@webassemblyjs/helper-wasm-bytecode": "1.5.13",
- "@webassemblyjs/ieee754": "1.5.13",
- "@webassemblyjs/leb128": "1.5.13",
- "@webassemblyjs/utf8": "1.5.13"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-api-error": "1.7.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.7.6",
+ "@webassemblyjs/ieee754": "1.7.6",
+ "@webassemblyjs/leb128": "1.7.6",
+ "@webassemblyjs/utf8": "1.7.6"
}
},
"@webassemblyjs/wast-parser": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.13.tgz",
- "integrity": "sha512-Lbz65T0LQ1LgzKiUytl34CwuhMNhaCLgrh0JW4rJBN6INnBB8NMwUfQM+FxTnLY9qJ+lHJL/gCM5xYhB9oWi4A==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz",
+ "integrity": "sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/floating-point-hex-parser": "1.5.13",
- "@webassemblyjs/helper-api-error": "1.5.13",
- "@webassemblyjs/helper-code-frame": "1.5.13",
- "@webassemblyjs/helper-fsm": "1.5.13",
- "long": "^3.2.0",
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/floating-point-hex-parser": "1.7.6",
+ "@webassemblyjs/helper-api-error": "1.7.6",
+ "@webassemblyjs/helper-code-frame": "1.7.6",
+ "@webassemblyjs/helper-fsm": "1.7.6",
+ "@xtuc/long": "4.2.1",
"mamacro": "^0.0.3"
}
},
"@webassemblyjs/wast-printer": {
- "version": "1.5.13",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.13.tgz",
- "integrity": "sha512-QcwogrdqcBh8Z+eUF8SG+ag5iwQSXxQJELBEHmLkk790wgQgnIMmntT2sMAMw53GiFNckArf5X0bsCA44j3lWQ==",
+ "version": "1.7.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz",
+ "integrity": "sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/wast-parser": "1.5.13",
- "long": "^3.2.0"
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/wast-parser": "1.7.6",
+ "@xtuc/long": "4.2.1"
}
},
+ "@xtuc/ieee754": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
+ "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
+ "dev": true
+ },
+ "@xtuc/long": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz",
+ "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==",
+ "dev": true
+ },
"acorn": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.2.tgz",
- "integrity": "sha512-cJrKCNcr2kv8dlDnbw+JPUGjHZzo4myaxOLmpOX8a+rgX94YeTcTMv/LFJUSByRpc+i4GgVnnhLxvMu/2Y+rqw==",
+ "version": "5.7.3",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
+ "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
"dev": true
},
"acorn-dynamic-import": {
@@ -255,12 +251,6 @@
"integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=",
"dev": true
},
- "ansi-escapes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
- "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
- "dev": true
- },
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
@@ -477,9 +467,9 @@
"dev": true
},
"binary-extensions": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
- "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz",
+ "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==",
"dev": true
},
"bluebird": {
@@ -541,7 +531,7 @@
},
"browserify-aes": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
"requires": {
@@ -578,7 +568,7 @@
},
"browserify-rsa": {
"version": "4.0.1",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
+ "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
"integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
"dev": true,
"requires": {
@@ -695,9 +685,9 @@
},
"dependencies": {
"supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
"requires": {
"has-flag": "^3.0.0"
@@ -705,12 +695,6 @@
}
}
},
- "chardet": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.5.0.tgz",
- "integrity": "sha512-9ZTaoBaePSCFvNlNGrsyI8ZVACP2svUtq0DkM7t4K2ClAa96sqOIRjAzDTc8zXzFt1cZR46rRzLTiHFSJ+Qw0g==",
- "dev": true
- },
"chokidar": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz",
@@ -733,9 +717,9 @@
}
},
"chownr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
- "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz",
+ "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==",
"dev": true
},
"chrome-trace-event": {
@@ -780,21 +764,6 @@
}
}
},
- "cli-cursor": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
- "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
- "dev": true,
- "requires": {
- "restore-cursor": "^2.0.0"
- }
- },
- "cli-width": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
- "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
- "dev": true
- },
"cliui": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
@@ -952,7 +921,7 @@
},
"create-hash": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"dev": true,
"requires": {
@@ -965,7 +934,7 @@
},
"create-hmac": {
"version": "1.1.7",
- "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"dev": true,
"requires": {
@@ -1065,9 +1034,9 @@
"dev": true
},
"debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"requires": {
"ms": "2.0.0"
@@ -1141,7 +1110,7 @@
},
"diffie-hellman": {
"version": "5.0.3",
- "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
"integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
"requires": {
@@ -1281,31 +1250,18 @@
}
},
"execa": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
- "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz",
+ "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==",
"dev": true,
"requires": {
- "cross-spawn": "^5.0.1",
+ "cross-spawn": "^6.0.0",
"get-stream": "^3.0.0",
"is-stream": "^1.1.0",
"npm-run-path": "^2.0.0",
"p-finally": "^1.0.0",
"signal-exit": "^3.0.0",
"strip-eof": "^1.0.0"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
- "dev": true,
- "requires": {
- "lru-cache": "^4.0.1",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- }
}
},
"expand-brackets": {
@@ -1323,15 +1279,6 @@
"to-regex": "^3.0.1"
},
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
@@ -1373,17 +1320,6 @@
}
}
},
- "external-editor": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.0.tgz",
- "integrity": "sha512-mpkfj0FEdxrIhOC04zk85X7StNtr0yXnG7zCb+8ikO8OJi2jsHh5YGoknNTyXgsbHOf1WOOcVU3kPFWT2WgCkQ==",
- "dev": true,
- "requires": {
- "chardet": "^0.5.0",
- "iconv-lite": "^0.4.22",
- "tmp": "^0.0.33"
- }
- },
"extglob": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
@@ -1467,15 +1403,6 @@
"integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=",
"dev": true
},
- "figures": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
- "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
- "dev": true,
- "requires": {
- "escape-string-regexp": "^1.0.5"
- }
- },
"file-loader": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz",
@@ -1602,8 +1529,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"aproba": {
"version": "1.2.0",
@@ -2018,8 +1944,7 @@
"safe-buffer": {
"version": "5.1.1",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -2075,7 +2000,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
- "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -2119,14 +2043,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
},
"yallist": {
"version": "3.0.2",
"bundled": true,
- "dev": true,
- "optional": true
+ "dev": true
}
}
},
@@ -2291,15 +2213,6 @@
"integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
"dev": true
},
- "iconv-lite": {
- "version": "0.4.23",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz",
- "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
"icss-replace-symbols": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz",
@@ -2328,13 +2241,67 @@
"dev": true
},
"import-local": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz",
- "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz",
+ "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==",
"dev": true,
"requires": {
- "pkg-dir": "^2.0.0",
+ "pkg-dir": "^3.0.0",
"resolve-cwd": "^2.0.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-limit": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz",
+ "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==",
+ "dev": true,
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "p-try": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
+ "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
+ "dev": true
+ },
+ "pkg-dir": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
+ "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
+ "dev": true,
+ "requires": {
+ "find-up": "^3.0.0"
+ }
+ }
}
},
"imurmurhash": {
@@ -2371,44 +2338,6 @@
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
},
- "inquirer": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.0.0.tgz",
- "integrity": "sha512-tISQWRwtcAgrz+SHPhTH7d3e73k31gsOy6i1csonLc0u1dVK/wYvuOnFeiWqC5OXFIYbmrIFInef31wbT8MEJg==",
- "dev": true,
- "requires": {
- "ansi-escapes": "^3.0.0",
- "chalk": "^2.0.0",
- "cli-cursor": "^2.1.0",
- "cli-width": "^2.0.0",
- "external-editor": "^3.0.0",
- "figures": "^2.0.0",
- "lodash": "^4.3.0",
- "mute-stream": "0.0.7",
- "run-async": "^2.2.0",
- "rxjs": "^6.1.0",
- "string-width": "^2.1.0",
- "strip-ansi": "^4.0.0",
- "through": "^2.3.6"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
- "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
- "dev": true
- },
- "strip-ansi": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
- "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^3.0.0"
- }
- }
- }
- },
"interpret": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
@@ -2416,9 +2345,9 @@
"dev": true
},
"invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz",
+ "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==",
"dev": true
},
"is-accessor-descriptor": {
@@ -2557,12 +2486,6 @@
"isobject": "^3.0.1"
}
},
- "is-promise": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
- "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
- "dev": true
- },
"is-stream": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
@@ -2630,18 +2553,18 @@
"dev": true
},
"lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz",
+ "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==",
"dev": true,
"requires": {
- "invert-kv": "^1.0.0"
+ "invert-kv": "^2.0.0"
}
},
"loader-runner": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz",
- "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=",
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz",
+ "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==",
"dev": true
},
"loader-utils": {
@@ -2683,12 +2606,6 @@
"integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
"dev": true
},
- "long": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz",
- "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=",
- "dev": true
- },
"lru-cache": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz",
@@ -2714,6 +2631,15 @@
"integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==",
"dev": true
},
+ "map-age-cleaner": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz",
+ "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==",
+ "dev": true,
+ "requires": {
+ "p-defer": "^1.0.0"
+ }
+ },
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
@@ -2740,12 +2666,14 @@
}
},
"mem": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz",
- "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz",
+ "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==",
"dev": true,
"requires": {
- "mimic-fn": "^1.0.0"
+ "map-age-cleaner": "^0.1.1",
+ "mimic-fn": "^1.0.0",
+ "p-is-promise": "^1.1.0"
}
},
"memory-fs": {
@@ -2899,12 +2827,6 @@
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
"dev": true
},
- "mute-stream": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
- "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=",
- "dev": true
- },
"nan": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/nan/-/nan-2.11.0.tgz",
@@ -2938,9 +2860,9 @@
"dev": true
},
"nice-try": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.4.tgz",
- "integrity": "sha512-2NpiFHqC87y/zFke0fC0spBXL3bBsoh/p5H1EFhshxjCR5+0g2d6BiXbUFz9v1sAcxsk2htp2eQnNIci2dIYcA==",
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
+ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
"dev": true
},
"node-libs-browser": {
@@ -3064,15 +2986,6 @@
"wrappy": "1"
}
},
- "onetime": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
- "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
- "dev": true,
- "requires": {
- "mimic-fn": "^1.0.0"
- }
- },
"os-browserify": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
@@ -3080,20 +2993,20 @@
"dev": true
},
"os-locale": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz",
- "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz",
+ "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==",
"dev": true,
"requires": {
- "execa": "^0.7.0",
- "lcid": "^1.0.0",
- "mem": "^1.1.0"
+ "execa": "^0.10.0",
+ "lcid": "^2.0.0",
+ "mem": "^4.0.0"
}
},
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
+ "p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
"dev": true
},
"p-finally": {
@@ -3102,6 +3015,12 @@
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
"dev": true
},
+ "p-is-promise": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz",
+ "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=",
+ "dev": true
+ },
"p-limit": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
@@ -3145,7 +3064,7 @@
},
"parse-asn1": {
"version": "5.1.1",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
+ "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz",
"integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==",
"dev": true,
"requires": {
@@ -3368,7 +3287,7 @@
},
"public-encrypt": {
"version": "4.0.2",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
+ "resolved": "http://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz",
"integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==",
"dev": true,
"requires": {
@@ -3453,15 +3372,14 @@
}
},
"readdirp": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz",
- "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=",
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
+ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.1.2",
- "minimatch": "^3.0.2",
- "readable-stream": "^2.0.2",
- "set-immediate-shim": "^1.0.1"
+ "graceful-fs": "^4.1.11",
+ "micromatch": "^3.1.10",
+ "readable-stream": "^2.0.2"
}
},
"regenerate": {
@@ -3557,16 +3475,6 @@
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
"dev": true
},
- "restore-cursor": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
- "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
- "dev": true,
- "requires": {
- "onetime": "^2.0.0",
- "signal-exit": "^3.0.2"
- }
- },
"ret": {
"version": "0.1.15",
"resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
@@ -3592,15 +3500,6 @@
"inherits": "^2.0.1"
}
},
- "run-async": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
- "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
- "dev": true,
- "requires": {
- "is-promise": "^2.1.0"
- }
- },
"run-queue": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
@@ -3610,15 +3509,6 @@
"aproba": "^1.1.1"
}
},
- "rxjs": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz",
- "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==",
- "dev": true,
- "requires": {
- "tslib": "^1.9.0"
- }
- },
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
@@ -3634,12 +3524,6 @@
"ret": "~0.1.10"
}
},
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
- },
"schema-utils": {
"version": "0.4.5",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz",
@@ -3651,9 +3535,9 @@
}
},
"semver": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
- "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
+ "version": "5.5.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz",
+ "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==",
"dev": true
},
"serialize-javascript": {
@@ -3668,12 +3552,6 @@
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
"dev": true
},
- "set-immediate-shim": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
- "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=",
- "dev": true
- },
"set-value": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz",
@@ -3705,7 +3583,7 @@
},
"sha.js": {
"version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+ "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"dev": true,
"requires": {
@@ -3750,15 +3628,6 @@
"use": "^3.1.0"
},
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
"define-property": {
"version": "0.2.5",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
@@ -4028,12 +3897,6 @@
"integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==",
"dev": true
},
- "through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
- "dev": true
- },
"through2": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz",
@@ -4053,15 +3916,6 @@
"setimmediate": "^1.0.4"
}
},
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "dev": true,
- "requires": {
- "os-tmpdir": "~1.0.2"
- }
- },
"to-arraybuffer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
@@ -4111,9 +3965,9 @@
}
},
"tslib": {
- "version": "1.9.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.2.tgz",
- "integrity": "sha512-AVP5Xol3WivEr7hnssHDsaM+lVrVXWUvd1cfXTRkTj80b//6g2wIFEH6hZG0muGZRnHGrfttpdzRk3YlBkWjKw==",
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz",
+ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==",
"dev": true
},
"tty-browserify": {
@@ -4196,18 +4050,18 @@
"dev": true
},
"unique-filename": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz",
- "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
+ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
"dev": true,
"requires": {
"unique-slug": "^2.0.0"
}
},
"unique-slug": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz",
- "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz",
+ "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==",
"dev": true,
"requires": {
"imurmurhash": "^0.1.4"
@@ -4314,9 +4168,9 @@
"dev": true
},
"v8-compile-cache": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.0.tgz",
- "integrity": "sha512-qNdTUMaCjPs4eEnM3W9H94R3sU70YCuT+/ST7nUf+id1bVOrdjrpUaeZLqPBPRph3hsgn4a4BvwpxhHZx+oSDg==",
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz",
+ "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==",
"dev": true
},
"vm-browserify": {
@@ -4345,9 +4199,9 @@
"dev": true
},
"vue-loader": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.4.1.tgz",
- "integrity": "sha512-+9EgqF7YHcZG0wosbXij9qSzz7Ep1QNOk4a3asTyf5XC9kDud2R4aNAwQP65bELyKwWjcGm8sv7ChYndodxijw==",
+ "version": "15.4.2",
+ "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.4.2.tgz",
+ "integrity": "sha512-nVV27GNIA9MeoD8yQ3dkUzwlAaAsWeYSWZHsu/K04KCD339lW0Jv2sJWsjj3721SP7sl2lYdPmjcHgkWQSp5bg==",
"dev": true,
"requires": {
"@vue/component-compiler-utils": "^2.0.0",
@@ -4358,9 +4212,9 @@
}
},
"vue-select": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/vue-select/-/vue-select-2.5.0.tgz",
- "integrity": "sha512-vkqTkbOGwCM0SSsqAgsr24HLQu6g48YoFPwAi+QupI+glaVz8d9RIANhaBW1x0SMIH08ZR8uDmvAeE5flfEiIg=="
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/vue-select/-/vue-select-2.5.1.tgz",
+ "integrity": "sha512-Hs+arh7+0gLJoYiM3r9V/5CRn5XsAT8tVkouTkpDAWb923KFgraWrKDLSqz3ROedZUkuVIwkFuYq8+baHUf+bg=="
},
"vue-style-loader": {
"version": "4.1.2",
@@ -4400,16 +4254,15 @@
}
},
"webpack": {
- "version": "4.17.2",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.17.2.tgz",
- "integrity": "sha512-hCK8FPco2Paz9FVMlo3ZdVd7Jsr7qxoiEwhd7f4dMaWBLZtc7E+/9QNee4CYHlVSvpmspWBnhFpx4MiWSl3nNg==",
+ "version": "4.19.1",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.19.1.tgz",
+ "integrity": "sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.5.13",
- "@webassemblyjs/helper-module-context": "1.5.13",
- "@webassemblyjs/wasm-edit": "1.5.13",
- "@webassemblyjs/wasm-opt": "1.5.13",
- "@webassemblyjs/wasm-parser": "1.5.13",
+ "@webassemblyjs/ast": "1.7.6",
+ "@webassemblyjs/helper-module-context": "1.7.6",
+ "@webassemblyjs/wasm-edit": "1.7.6",
+ "@webassemblyjs/wasm-parser": "1.7.6",
"acorn": "^5.6.2",
"acorn-dynamic-import": "^3.0.0",
"ajv": "^6.1.0",
@@ -4426,35 +4279,42 @@
"neo-async": "^2.5.0",
"node-libs-browser": "^2.0.0",
"schema-utils": "^0.4.4",
- "tapable": "^1.0.0",
+ "tapable": "^1.1.0",
"uglifyjs-webpack-plugin": "^1.2.4",
"watchpack": "^1.5.0",
"webpack-sources": "^1.2.0"
+ },
+ "dependencies": {
+ "tapable": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz",
+ "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==",
+ "dev": true
+ }
}
},
"webpack-cli": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.0.tgz",
- "integrity": "sha512-p5NeKDtYwjZozUWq6kGNs9w+Gtw/CPvyuXjXn2HMdz8Tie+krjEg8oAtonvIyITZdvpF7XG9xDHwscLr2c+ugQ==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.1.tgz",
+ "integrity": "sha512-th5EUyVeGcAAVlFOcJg11fapD/xoLRE4j/eSfrmMAo3olPjvB7lgEPUtCbRP0OGmstvnQBl4VZP+zluXWDiBxg==",
"dev": true,
"requires": {
"chalk": "^2.4.1",
"cross-spawn": "^6.0.5",
- "enhanced-resolve": "^4.0.0",
- "global-modules-path": "^2.1.0",
- "import-local": "^1.0.0",
- "inquirer": "^6.0.0",
+ "enhanced-resolve": "^4.1.0",
+ "global-modules-path": "^2.3.0",
+ "import-local": "^2.0.0",
"interpret": "^1.1.0",
"loader-utils": "^1.1.0",
- "supports-color": "^5.4.0",
- "v8-compile-cache": "^2.0.0",
- "yargs": "^12.0.1"
+ "supports-color": "^5.5.0",
+ "v8-compile-cache": "^2.0.2",
+ "yargs": "^12.0.2"
},
"dependencies": {
"supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true,
"requires": {
"has-flag": "^3.0.0"
@@ -4472,9 +4332,9 @@
}
},
"webpack-sources": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz",
- "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==",
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz",
+ "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==",
"dev": true,
"requires": {
"source-list-map": "^2.0.0",
@@ -4568,16 +4428,16 @@
"dev": true
},
"yargs": {
- "version": "12.0.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.1.tgz",
- "integrity": "sha512-B0vRAp1hRX4jgIOWFtjfNjd9OA9RWYZ6tqGA9/I/IrTMsxmKvtWy+ersM+jzpQqbC3YfLzeABPdeTgcJ9eu1qQ==",
+ "version": "12.0.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz",
+ "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==",
"dev": true,
"requires": {
"cliui": "^4.0.0",
"decamelize": "^2.0.0",
"find-up": "^3.0.0",
"get-caller-file": "^1.0.1",
- "os-locale": "^2.0.0",
+ "os-locale": "^3.0.0",
"require-directory": "^2.1.1",
"require-main-filename": "^1.0.1",
"set-blocking": "^2.0.0",
diff --git a/apps/updatenotification/package.json b/apps/updatenotification/package.json
index 7747e1c4932..11b4a2d91e5 100644
--- a/apps/updatenotification/package.json
+++ b/apps/updatenotification/package.json
@@ -30,10 +30,10 @@
"devDependencies": {
"css-loader": "^1.0.0",
"file-loader": "^1.1.11",
- "vue-loader": "^15.4.1",
+ "vue-loader": "^15.4.2",
"vue-template-compiler": "^2.5.17",
- "webpack": "^4.17.2",
- "webpack-cli": "^3.1.0",
+ "webpack": "^4.19.1",
+ "webpack-cli": "^3.1.1",
"webpack-merge": "^4.1.4"
}
}
diff --git a/apps/user_ldap/l10n/bg.js b/apps/user_ldap/l10n/bg.js
index 78db1f4f3f8..9cf71c703ac 100644
--- a/apps/user_ldap/l10n/bg.js
+++ b/apps/user_ldap/l10n/bg.js
@@ -8,6 +8,11 @@ OC.L10N.register(
"No data specified" : "Не са посочени данни",
" Could not set configuration %s" : "Неуспешно задаване на конфигруацията %s",
"Action does not exist" : "Действието не съществува",
+ "Very weak password" : "Много проста парола",
+ "Weak password" : "Проста парола",
+ "So-so password" : "Не особено добра парола",
+ "Good password" : "Добра парола",
+ "Strong password" : "Сложна парола",
"Testing configuration…" : "Изпробване на конфигурацията...",
"Configuration incorrect" : "Конфигурацията е грешна",
"Configuration incomplete" : "Конфигурацията не е завършена",
@@ -54,6 +59,7 @@ OC.L10N.register(
"Saving" : "Записване",
"Back" : "Назад",
"Continue" : "Продължи",
+ "An internal error occurred." : "Възникна вътрешно сървърна грешка.",
"Server" : "Сървър",
"Users" : "Потребители",
"Groups" : "Групи",
diff --git a/apps/user_ldap/l10n/bg.json b/apps/user_ldap/l10n/bg.json
index 07103b3be2d..e81a6918e2a 100644
--- a/apps/user_ldap/l10n/bg.json
+++ b/apps/user_ldap/l10n/bg.json
@@ -6,6 +6,11 @@
"No data specified" : "Не са посочени данни",
" Could not set configuration %s" : "Неуспешно задаване на конфигруацията %s",
"Action does not exist" : "Действието не съществува",
+ "Very weak password" : "Много проста парола",
+ "Weak password" : "Проста парола",
+ "So-so password" : "Не особено добра парола",
+ "Good password" : "Добра парола",
+ "Strong password" : "Сложна парола",
"Testing configuration…" : "Изпробване на конфигурацията...",
"Configuration incorrect" : "Конфигурацията е грешна",
"Configuration incomplete" : "Конфигурацията не е завършена",
@@ -52,6 +57,7 @@
"Saving" : "Записване",
"Back" : "Назад",
"Continue" : "Продължи",
+ "An internal error occurred." : "Възникна вътрешно сървърна грешка.",
"Server" : "Сървър",
"Users" : "Потребители",
"Groups" : "Групи",
diff --git a/apps/user_ldap/l10n/cs.js b/apps/user_ldap/l10n/cs.js
index 939596e7338..7b641e4f364 100644
--- a/apps/user_ldap/l10n/cs.js
+++ b/apps/user_ldap/l10n/cs.js
@@ -1,12 +1,12 @@
OC.L10N.register(
"user_ldap",
{
- "Failed to clear the mappings." : "Selhalo zrušení mapování.",
- "Failed to delete the server configuration" : "Nepodařilo se smazat nastavení serveru",
- "Invalid configuration: Anonymous binding is not allowed." : "Neplatná konfigurace: Anonymní navázání není povoleno.",
+ "Failed to clear the mappings." : "Mapování se nepodařilo zrušit.",
+ "Failed to delete the server configuration" : "Nastavení serveru se nepodařilo smazat",
+ "Invalid configuration: Anonymous binding is not allowed." : "Neplatné nastavení: Anonymní navázání není umožněno.",
"Valid configuration, connection established!" : "Nastavení je v pořádku a spojení bylo navázáno.",
- "Valid configuration, but binding failed. Please check the server settings and credentials." : "Konfigurace je v pořádku, ale spojení selhalo. Zkontrolujte prosím nastavení serveru a přihlašovací údaje.",
- "Invalid configuration. Please have a look at the logs for further details." : "Konfigurace je neplatná. Pro bližší informace se podívejte do logu.",
+ "Valid configuration, but binding failed. Please check the server settings and credentials." : "Nastavení je v pořádku, ale spojení se nezdařilo. Zkontrolujte nastavení serveru a přihlašovací údaje.",
+ "Invalid configuration. Please have a look at the logs for further details." : "Neplatné nastavení. Podrobnosti naleznete v záznamu událostí.",
"No action specified" : "Neurčena žádná akce",
"No configuration specified" : "Neurčené žádné nastavení",
"No data specified" : "Neurčena žádná data",
@@ -18,53 +18,55 @@ OC.L10N.register(
"Weak password" : "Slabé heslo",
"So-so password" : "Přijatelné heslo",
"Good password" : "Dobré heslo",
- "Strong password" : "Silné heslo",
+ "Strong password" : "Odolné heslo",
"The Base DN appears to be wrong" : "Base DN se nezdá být pořádku",
- "Testing configuration…" : "Testování konfigurace...",
- "Configuration incorrect" : "Nesprávná konfigurace",
- "Configuration incomplete" : "Nekompletní konfigurace",
- "Configuration OK" : "Konfigurace v pořádku",
+ "Testing configuration…" : "Zkoušení nastavení…",
+ "Configuration incorrect" : "Nesprávná nastavení",
+ "Configuration incomplete" : "Nastavení není dokončené",
+ "Configuration OK" : "Nastavení v pořádku",
"Select groups" : "Vyberte skupiny",
"Select object classes" : "Vyberte objektové třídy",
"Please check the credentials, they seem to be wrong." : "Ověřte své přihlašovací údaje, zdají se být neplatné.",
- "Please specify the port, it could not be auto-detected." : "Uveďte prosím port, nelze ho automaticky detekovat.",
+ "Please specify the port, it could not be auto-detected." : "Zadejte port, nepodařilo se ho zjistit automaticky.",
"Base DN could not be auto-detected, please revise credentials, host and port." : "Base DN nelze automaticky detekovat, ověřte prosím přihlašovací údaje, host a port.",
"Could not detect Base DN, please enter it manually." : "Nelze automaticky detekovat Base DN, zadejte prosím ručně.",
"{nthServer}. Server" : "{nthServer}. Server",
"No object found in the given Base DN. Please revise." : "V zadané Base DN nebyl objekt nalezen. Ověřte.",
- "More than 1,000 directory entries available." : "Je dostupných více než 1000 adresářů.",
+ "More than 1,000 directory entries available." : "Je dostupných více než 1000 položek adresáře.",
+ "_{objectsFound} entry available within the provided Base DN_::_{objectsFound} entries available within the provided Base DN_" : ["{objectsFound} položka k dispozici v rámci poskytnuté Base DN","{objectsFound} položky k dispozici v rámci poskytnuté Base DN","{objectsFound} položek k dispozici v rámci poskytnuté Base DN","{objectsFound} položky k dispozici v rámci poskytnuté Base DN"],
"An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Došlo k chybě. Ověře prosím Base DN společně s nastavením připojení a přihlašovacími údaji.",
- "Do you really want to delete the current Server Configuration?" : "Opravdu si přejete smazat současné nastavení serveru?",
+ "Do you really want to delete the current Server Configuration?" : "Opravdu si přejete smazat stávající nastavení serveru?",
"Confirm Deletion" : "Potvrdit smazání",
"Mappings cleared successfully!" : "Mapování úspěšně vyčištěno!",
"Error while clearing the mappings." : "Chyba při čištění mapování.",
- "Anonymous bind is not allowed. Please provide a User DN and Password." : "Anonymní bind není povolen. Zadejte prosím User DN a Heslo.",
+ "Anonymous bind is not allowed. Please provide a User DN and Password." : "Anonymní bind není povolen. Zadejte User DN a Heslo.",
"LDAP Operations error. Anonymous bind might not be allowed." : "Chyba LDAP operace. Anonymní bind nejspíše není povolen.",
- "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Ukládání selhalo. Ujistěte se, že databáze funguje. Načtěte znovu, než budete pokračovat.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Ukládání se nezdařilo. Ujistěte se, že databáze funguje. Načtěte znovu, než budete pokračovat.",
"Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Přepnutí režimu povolí automatické LDAP dotazy. V závislosti na velikosti vašeho LDAP může vyhledávání chvíli trvat. Opravdu si přejete přepnout mód?",
"Mode switch" : "Přepnutí režimu",
"Select attributes" : "Vyberte atributy",
"User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command-line validation): <br/>" : "Uživatel nenalezen. Zkontrolujte prosím své přihlašovací údaje a jméno. Použitý filtr (pro zkopírování a ověření v příkazovém řádku): <br/>",
"User found and settings verified." : "Uživatel nalezen a nastavení ověřeno.",
"Consider narrowing your search, as it encompassed many users, only the first one of whom will be able to log in." : "Zvažte zúžení vyhledávání, protože současné zahrnuje mnoho uživatelů, ze kterých se bude schopen přihlásit pouze první.",
- "An unspecified error occurred. Please check log and settings." : "Došlo k nespecifikované chybě. Zkontrolujte prosím nastavení a soubor logu.",
+ "An unspecified error occurred. Please check log and settings." : "Došlo k nespecifikované chybě. Zkontrolujte nastavení a soubor se záznamem událostí.",
"The search filter is invalid, probably due to syntax issues like uneven number of opened and closed brackets. Please revise." : "Filtr vyhledávání je neplatný, pravděpodobně z důvodu chybné syntax jako třeba neuzavřené závorky. Ověřte to.",
"A connection error to LDAP / AD occurred, please check host, port and credentials." : "Došlo k chybě připojení k LDAP / AD, zkontrolujte prosím host, port a přihlašovací údaje.",
- "The \"%uid\" placeholder is missing. It will be replaced with the login name when querying LDAP / AD." : "Zástupný symbol \"%uid\" chybí. Při dotatzu na LDAP / AD bude nahrazen přihlašovacím jménem.",
+ "The \"%uid\" placeholder is missing. It will be replaced with the login name when querying LDAP / AD." : "Zástupný symbol „%uid“ chybí. Při dotatzu na LDAP / AD bude nahrazen přihlašovacím jménem.",
"Please provide a login name to test against" : "Zadejte prosím přihlašovací jméno pro otestování",
"The group box was disabled, because the LDAP / AD server does not support memberOf." : "Skupinové pole bylo vypnuto, protože LDAP / AD server nepodporuje memberOf.",
"Password change rejected. Hint: " : "Změna hesla zamítnuta. Nápověda: ",
- "Please login with the new password" : "Prosím, přihlaste se pomocí nového hesla",
- "Your password will expire tomorrow." : "Vaše heslo zítra vyprší.",
- "Your password will expire today." : "Vaše heslo dnes vyprší.",
- "_Your password will expire within %n day._::_Your password will expire within %n days._" : ["Vaše heslo vyprší za %n den.","Vaše heslo vyprší za %n dny.","Vaše heslo vyprší za %n dní.","Vaše heslo vyprší za %n dní."],
+ "Please login with the new password" : "Přihlaste se pomocí nového hesla",
+ "Your password will expire tomorrow." : "Platnost hesla zítra skončí.",
+ "Your password will expire today." : "Platnost hesla dnes končí.",
+ "_Your password will expire within %n day._::_Your password will expire within %n days._" : ["Platnost hesla skončí za %n den.","Platnost hesla skončí za %n dny.","Platnost hesla skončí za %n dnů.","Platnost hesla skončí za %n dny."],
"LDAP / AD integration" : "LDAP / AD propojení",
"_%s group found_::_%s groups found_" : ["nalezena %s skupina","nalezeny %s skupiny","nalezeno %s skupin","nalezeno %s skupin"],
"_%s user found_::_%s users found_" : ["nalezen %s uživatel","nalezeni %s uživatelé","nalezeno %s uživatelů","nalezeno %s uživatelů"],
- "Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings." : "Nelze detekovat atribut pro zobrazení jména uživatele. Upřesněte ho prosím sami v rozšířeném nastavení LDAP.",
+ "Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings." : "Nedaří se zjistit atribut pro zobrazení jména uživatele. Upřesněte ho sami v rozšířeném nastavení LDAP.",
"Could not find the desired feature" : "Nelze nalézt požadovanou vlastnost",
"Invalid Host" : "Neplatný hostitel",
"This application enables administrators to connect Nextcloud to an LDAP-based user directory." : "Tato aplikace umožňuje správcům připojit Nextcloud na adresář uživatelů založený na LDAP.",
+ "This application enables administrators to connect Nextcloud to an LDAP-based user directory for authentication and provisioning users, groups and user attributes. Admins can configure this application to connect to one or more LDAP directories or Active Directories via an LDAP interface. Attributes such as user quota, email, avatar pictures, group memberships and more can be pulled into Nextcloud from a directory with the appropriate queries and filters.\n\nA user logs into Nextcloud with their LDAP or AD credentials, and is granted access based on an authentication request handled by the LDAP or AD server. Nextcloud does not store LDAP or AD passwords, rather these credentials are used to authenticate a user and then Nextcloud uses a session for the user ID. More information is available in the LDAP User and Group Backend documentation." : "Tato aplikace umožní správcům propojit Nextcloud s adresářem uživatelů, založeném na LDAP pro ověřování a zprovozňování uživatelů, skupin a atributů uživatelů. Správci mohou tuto aplikaci nastavit pro propojení s jedním či více LDAP adresáři nebo Active Directory prostřednictvím LDAP rozhraní. Atributy jako například kvóta uživatele, e-mail, fotografie, členství ve skupinách a další mohou být vytažené do Nextcloud z adresáře pomocí příslušných dotazů a filtrů.\n\nUživatel se do Nextcloud přihlásí pomocí svých LDAP nebo AD přihlašovacích údajů a je mu udělen přístup na základě požadavku na ověření obslouženém LDAP nebo AD serverem. Nextcloud neukládá LDAP nebo AD hesla, namísto toho jsou tyto přihlašovací údaje použity pro ověření uživatele a Nextcloud používá relaci pro identifikátor uživatele. Více informací je k dispozici v dokumentaci k podpůrné vrstvě LDAP uživatel a skupina.",
"Test Configuration" : "Vyzkoušet nastavení",
"Help" : "Nápověda",
"Groups meeting these criteria are available in %s:" : "Skupiny splňující tyto podmínky jsou k dispozici v %s:",
@@ -79,16 +81,16 @@ OC.L10N.register(
"Verify settings and count the groups" : "Ověřit nastavení a spočítat skupiny",
"When logging in, %s will find the user based on the following attributes:" : "Při přihlašování, %s bude hledat uživatele na základě následujících atributů:",
"LDAP / AD Username:" : "LDAP / AD uživatelské jméno:",
- "Allows login against the LDAP / AD username, which is either \"uid\" or \"sAMAccountName\" and will be detected." : "Umožňuje přihlašování pomocí LDAP / AD uživatelského jména, což je buď „uid“ nebo „sAMAccountName“ a bude zjištěno.",
- "LDAP / AD Email Address:" : "LDAP / AD e-mailová adresa:",
- "Allows login against an email attribute. \"mail\" and \"mailPrimaryAddress\" allowed." : "Povoluje přihlášení pomocí e-mailového atributu. Je povolen \"mail\" a \"mailPrimaryAddress\" allowed.",
+ "Allows login against the LDAP / AD username, which is either \"uid\" or \"sAMAccountName\" and will be detected." : "Umožňuje přihlašování pomocí LDAP/AD uživatelského jména, což je buď „uid“ nebo „sAMAccountName“ a bude zjištěno.",
+ "LDAP / AD Email Address:" : "LDAP/AD e-mailová adresa:",
+ "Allows login against an email attribute. \"mail\" and \"mailPrimaryAddress\" allowed." : "Umožňuje přihlašování pomocí atributu e-mail. Je možné použít „mail“ a „mailPrimaryAddress“.",
"Other Attributes:" : "Další atributy:",
- "Defines the filter to apply, when login is attempted. \"%%uid\" replaces the username in the login action. Example: \"uid=%%uid\"" : "Definuje filtr použitý při pokusu o přihlášení. %%uid je nahrazeno uživatelským jménem z přihlašovací akce. Příklad: \"uid=%%uid\"",
+ "Defines the filter to apply, when login is attempted. \"%%uid\" replaces the username in the login action. Example: \"uid=%%uid\"" : "Definuje filtr který použít při pokusu o přihlášení. „%%uid“ je nahrazeno uživatelským jménem z přihlašovací akce. Příklad: „uid=%%uid“",
"Test Loginname" : "Testovací přihlašovací jméno",
"Verify settings" : "Ověřit nastavení",
"%s. Server:" : "%s. Server:",
"Add a new configuration" : "Přidat nové nastavení",
- "Copy current configuration into new directory binding" : "Zkopírovat současnou konfiguraci do nového adresářového propojení",
+ "Copy current configuration into new directory binding" : "Zkopírovat stávající nastavení do nového adresářového propojení",
"Delete the current configuration" : "Smazat stávající nastavení",
"Host" : "Počítač",
"You can omit the protocol, unless you require SSL. If so, start with ldaps://" : "Pokud nevyžadujete SSL, můžete protokol vynechat. Pokud ano, začněte ldaps://",
@@ -99,27 +101,27 @@ OC.L10N.register(
"Password" : "Heslo",
"For anonymous access, leave DN and Password empty." : "Pro anonymní přístup ponechte údaje DN and heslo prázdné.",
"Save Credentials" : "Uložit pověření",
- "One Base DN per line" : "Jedna základní DN na řádku",
+ "One Base DN per line" : "Každé základní DN na samostatném řádku",
"You can specify Base DN for users and groups in the Advanced tab" : "V rozšířeném nastavení můžete určit základní DN pro uživatele a skupiny",
- "Detect Base DN" : "Detekovat Base DN",
+ "Detect Base DN" : "Zjistitit Base DN",
"Test Base DN" : "Test Base DN",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "Zabraňuje automatickým LDAP požadavkům. Výhodné pro objemná nastavení, ale vyžaduje znalosti o LDAP.",
"Manually enter LDAP filters (recommended for large directories)" : "Ručně vložit LDAP filtry (doporučeno pro obsáhlé adresáře)",
"Listing and searching for users is constrained by these criteria:" : "Získávání a vyhledávání uživatelů je omezeno následujícími kritérii:",
- "The most common object classes for users are organizationalPerson, person, user, and inetOrgPerson. If you are not sure which object class to select, please consult your directory admin." : "Nejčastější třídy objektů pro uživatele jsou organizationalPerson, person, user a inetOrgPerson. Pokud si nejste jisti které třídy objektů zvolit, obraťte se na svého adresářového správce.",
+ "The most common object classes for users are organizationalPerson, person, user, and inetOrgPerson. If you are not sure which object class to select, please consult your directory admin." : "Nejčastější třídy objektů pro uživatele jsou organizationalPerson, person, user a inetOrgPerson. Pokud si nejste jisti které třídy objektů zvolit, obraťte se na správce svého adresáře.",
"The filter specifies which LDAP users shall have access to the %s instance." : "Filtr určuje, kteří uživatelé LDAP mají mít přístup k instanci %s.",
"Verify settings and count users" : "Ověřit nastavení a spočítat uživatele",
"Saving" : "Ukládá se",
"Back" : "Zpět",
"Continue" : "Pokračovat",
- "Please renew your password." : "Prosím, obnovte vaše heslo.",
+ "Please renew your password." : "Obnovte své heslo.",
"An internal error occurred." : "Došlo k interní chybě.",
- "Please try again or contact your administrator." : "Zkuste to znovu, nebo kontaktujte vašeho administrátora.",
+ "Please try again or contact your administrator." : "Zkuste to znovu, nebo se obraťte na svého správce.",
"Current password" : "Aktuální heslo",
"New password" : "Žádné heslo",
"Renew password" : "Obnovit heslo",
"Wrong password." : "Chybné heslo.",
- "Cancel" : "Zrušit",
+ "Cancel" : "Storno",
"Server" : "Server",
"Users" : "Uživatelé",
"Login Attributes" : "Přihlašovací atributy",
@@ -142,8 +144,8 @@ OC.L10N.register(
"Directory Settings" : "Nastavení adresáře",
"User Display Name Field" : "Pole zobrazovaného jména uživatele",
"The LDAP attribute to use to generate the user's display name." : "LDAP atribut použitý k vytvoření zobrazovaného jména uživatele.",
- "2nd User Display Name Field" : "Druhé pole zobrazovaného jména uživatele",
- "Optional. An LDAP attribute to be added to the display name in brackets. Results in e.g. »John Doe (john.doe@example.org)«." : "Volitelné. Přidání LDAP atributu v závorkách k zobrazovanému jménu. Vypadá např. jako »John Doe (john.doe@example.org)«.",
+ "2nd User Display Name Field" : "Druhá kolonka zobrazovaného jména uživatele",
+ "Optional. An LDAP attribute to be added to the display name in brackets. Results in e.g. »John Doe (john.doe@example.org)«." : "Volitelné. Přidání LDAP atributu v závorkách k zobrazovanému jménu. Vypadá např. jako „John Doe (john.doe@example.org)“",
"Base User Tree" : "Základní uživatelský strom",
"One User Base DN per line" : "Jedna uživatelská základní DN na řádku",
"User Search Attributes" : "Atributy vyhledávání uživatelů",
@@ -166,13 +168,13 @@ OC.L10N.register(
"Default password policy DN" : "DN výchozí politiky hesel",
"The DN of a default password policy that will be used for password expiry handling. Works only when LDAP password changes per user are enabled and is only supported by OpenLDAP. Leave empty to disable password expiry handling." : "DN výchozí politiky hesel, která bude použita ke zpracování vypršení hesel. Funguje pouze pokud jsou povoleny změny hesla uživatelem a používá se OpenLDAP. Ponechte prázdné pro výchozí zpracování vypršení hesel.",
"Special Attributes" : "Speciální atributy",
- "Quota Field" : "Pole pro kvótu",
+ "Quota Field" : "Kolonka kvóty",
"Leave empty for user's default quota. Otherwise, specify an LDAP/AD attribute." : "Ponechte prázné pro výchozí uživatelskou kvótu. Jinak uveďte LDAP / AD atribut.",
"Quota Default" : "Výchozí kvóta",
"Override default quota for LDAP users who do not have a quota set in the Quota Field." : "Přepsat výchozí kvótu pro LDAP uživatele, kteří nemají kvótu nastavenou v poli kvóty.",
"Email Field" : "Pole e-mailu",
"Set the user's email from their LDAP attribute. Leave it empty for default behaviour." : "Nastavit e-mail uživatele na základě LDAP atributu. Ponechte prázdné pro výchozí chování.",
- "User Home Folder Naming Rule" : "Pravidlo pojmenování domovského adresáře uživatele",
+ "User Home Folder Naming Rule" : "Pravidlo pojmenování domovské složky uživatele",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." : "Ponechte prázdné pro uživatelské jméno (výchozí). Jinak uveďte LDAP/AD parametr.",
"Internal Username" : "Interní uživatelské jméno",
"By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [ a-zA-Z0-9_.@- ]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all *DAV services. With this setting, the default behavior can be overridden. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users." : "Ve výchozím nastavení bude interní uživatelské jméno vytvořeno z atributu UUID. To zajišťuje, že je uživatelské jméno unikátní a znaky nemusí být převáděny. Interní uživatelské jméno má omezení, podle kterého jsou povoleny jen následující znaky [ a-zA-Z0-9_.@- ]. Ostatní znaky jsou nahrazeny jejich protějšky z ASCII nebo prostě vynechány. Při konfliktech bude přidáno/zvýšeno číslo. Interní uživatelské jméno slouží pro interní identifikaci uživatele. Je také výchozím názvem domovského adresáře uživatele. Je také součástí URL, např. pro služby *DAV. Tímto nastavením může být výchozí chování změněno. Ponechte jej prázdné, chcete-li zachovat výchozí nastavení. Změny se projeví pouze u nově namapovaných (přidaných) uživatelů LDAP.",
@@ -181,14 +183,15 @@ OC.L10N.register(
"By default, the UUID attribute is automatically detected. The UUID attribute is used to doubtlessly identify LDAP users and groups. Also, the internal username will be created based on the UUID, if not specified otherwise above. You can override the setting and pass an attribute of your choice. You must make sure that the attribute of your choice can be fetched for both users and groups and it is unique. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users and groups." : "Ve výchozím nastavení je UUID atribut nalezen automaticky. UUID atribut je používán pro nezpochybnitelnou identifikaci uživatelů a skupin z LDAP. Navíc je na základě UUID tvořeno také interní uživatelské jméno, pokud není nastaveno jinak. Můžete výchozí nastavení přepsat a použít atribut, který sami zvolíte. Musíte se ale ujistit, že atribut, který vyberete, bude uveden jak u uživatelů, tak i u skupin a je unikátní. Ponechte prázdné pro výchozí chování. Změna bude mít vliv jen na nově namapované (přidané) uživatele a skupiny z LDAP.",
"UUID Attribute for Users:" : "UUID atribut pro uživatele:",
"UUID Attribute for Groups:" : "UUID atribut pro skupiny:",
- "Username-LDAP User Mapping" : "Mapování uživatelských jmen z LDAPu",
+ "Username-LDAP User Mapping" : "Mapování uživatelských jmen z LDAP",
+ "Usernames are used to store and assign metadata. In order to precisely identify and recognize users, each LDAP user will have an internal username. This requires a mapping from username to LDAP user. The created username is mapped to the UUID of the LDAP user. Additionally the DN is cached as well to reduce LDAP interaction, but it is not used for identification. If the DN changes, the changes will be found. The internal username is used all over. Clearing the mappings will have leftovers everywhere. Clearing the mappings is not configuration sensitive, it affects all LDAP configurations! Never clear the mappings in a production environment, only in a testing or experimental stage." : "Uživatelská jména slouží k ukládání a přiřazování metadat. Pro přesnou identifikaci a rozpoznávání uživatelů, každý LDAP uživatel má vnitřní uživatelské jméno. Toto vyžaduje mapování uživatelského jména na LDAP uživatele. Krom toho je uložen do mezipaměti rozlišený název aby se omezila interakce s LDAP, ale není používáno pro identifikaci. Pokud se DN změní, změny budou nalezeny. Vnitřní uživatelské jméno bude použito nade všechno. Čištění mapování bude mít pozůstatky všude. Čištění mapování není citlivé na nastavení, postihuje všechny LDAP nastavení. Nikdy nečistěte mapování v produkčním prostředí, pouze v testovací nebo experimentální fázi.",
"Clear Username-LDAP User Mapping" : "Zrušit mapování uživatelských jmen LDAPu",
"Clear Groupname-LDAP Group Mapping" : "Zrušit mapování názvů skupin LDAPu",
" entries available within the provided Base DN" : "záznamů dostupných v zadané Base DN",
"1. Server" : "1. Server",
"Wrong password. Reset it?" : "Chybné heslo. Resetovat?",
"LDAP" : "LDAP",
- "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behavior. Please ask your system administrator to disable one of them." : "<b>Varování:</b> Aplikace user_ldap a user_webdavauth jsou vzájemně nekompatibilní. Můžete zaznamenat neočekávané chování. Požádejte prosím svého správce systému o zakázání jedné z nich.",
+ "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behavior. Please ask your system administrator to disable one of them." : "<b>Varování:</b> Aplikace user_ldap a user_webdavauth jsou vzájemně nekompatibilní. Můžete zaznamenat neočekávané chování. Požádejte svého správce systému o zakázání jedné z nich.",
"Usernames are used to store and assign (meta) data. In order to precisely identify and recognize users, each LDAP user will have an internal username. This requires a mapping from username to LDAP user. The created username is mapped to the UUID of the LDAP user. Additionally the DN is cached as well to reduce LDAP interaction, but it is not used for identification. If the DN changes, the changes will be found. The internal username is used all over. Clearing the mappings will have leftovers everywhere. Clearing the mappings is not configuration sensitive, it affects all LDAP configurations! Never clear the mappings in a production environment, only in a testing or experimental stage." : "Uživatelská jména jsou používána pro uchovávání a přiřazování (meta)dat. Pro správnou identifikaci a rozpoznání uživatelů bude mít každý LDAP uživatel interní uživatelské jméno. To vyžaduje mapování uživatelských jmen na uživatele LDAP. Vytvořené uživatelské jméno je mapováno na UUID uživatele v LDAP. DN informace je navíc udržována v paměti pro snížení interakce s LDAP, ale není používána pro identifikaci. Pokud se DN změní, bude to správně rozpoznáno. Interní uživatelské jméno se používá celé. Vyčištění mapování zanechá zbytky všude. Vyčištění navíc není specifické pro každou konfiguraci, bude mít vliv na všechny LDAP konfigurace! Nikdy nečistěte mapování v produkčním prostředí, ale pouze v testovací nebo experimentální fázi."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/user_ldap/l10n/cs.json b/apps/user_ldap/l10n/cs.json
index 66ee30f0d3c..1d84e59a4cf 100644
--- a/apps/user_ldap/l10n/cs.json
+++ b/apps/user_ldap/l10n/cs.json
@@ -1,10 +1,10 @@
{ "translations": {
- "Failed to clear the mappings." : "Selhalo zrušení mapování.",
- "Failed to delete the server configuration" : "Nepodařilo se smazat nastavení serveru",
- "Invalid configuration: Anonymous binding is not allowed." : "Neplatná konfigurace: Anonymní navázání není povoleno.",
+ "Failed to clear the mappings." : "Mapování se nepodařilo zrušit.",
+ "Failed to delete the server configuration" : "Nastavení serveru se nepodařilo smazat",
+ "Invalid configuration: Anonymous binding is not allowed." : "Neplatné nastavení: Anonymní navázání není umožněno.",
"Valid configuration, connection established!" : "Nastavení je v pořádku a spojení bylo navázáno.",
- "Valid configuration, but binding failed. Please check the server settings and credentials." : "Konfigurace je v pořádku, ale spojení selhalo. Zkontrolujte prosím nastavení serveru a přihlašovací údaje.",
- "Invalid configuration. Please have a look at the logs for further details." : "Konfigurace je neplatná. Pro bližší informace se podívejte do logu.",
+ "Valid configuration, but binding failed. Please check the server settings and credentials." : "Nastavení je v pořádku, ale spojení se nezdařilo. Zkontrolujte nastavení serveru a přihlašovací údaje.",
+ "Invalid configuration. Please have a look at the logs for further details." : "Neplatné nastavení. Podrobnosti naleznete v záznamu událostí.",
"No action specified" : "Neurčena žádná akce",
"No configuration specified" : "Neurčené žádné nastavení",
"No data specified" : "Neurčena žádná data",
@@ -16,53 +16,55 @@
"Weak password" : "Slabé heslo",
"So-so password" : "Přijatelné heslo",
"Good password" : "Dobré heslo",
- "Strong password" : "Silné heslo",
+ "Strong password" : "Odolné heslo",
"The Base DN appears to be wrong" : "Base DN se nezdá být pořádku",
- "Testing configuration…" : "Testování konfigurace...",
- "Configuration incorrect" : "Nesprávná konfigurace",
- "Configuration incomplete" : "Nekompletní konfigurace",
- "Configuration OK" : "Konfigurace v pořádku",
+ "Testing configuration…" : "Zkoušení nastavení…",
+ "Configuration incorrect" : "Nesprávná nastavení",
+ "Configuration incomplete" : "Nastavení není dokončené",
+ "Configuration OK" : "Nastavení v pořádku",
"Select groups" : "Vyberte skupiny",
"Select object classes" : "Vyberte objektové třídy",
"Please check the credentials, they seem to be wrong." : "Ověřte své přihlašovací údaje, zdají se být neplatné.",
- "Please specify the port, it could not be auto-detected." : "Uveďte prosím port, nelze ho automaticky detekovat.",
+ "Please specify the port, it could not be auto-detected." : "Zadejte port, nepodařilo se ho zjistit automaticky.",
"Base DN could not be auto-detected, please revise credentials, host and port." : "Base DN nelze automaticky detekovat, ověřte prosím přihlašovací údaje, host a port.",
"Could not detect Base DN, please enter it manually." : "Nelze automaticky detekovat Base DN, zadejte prosím ručně.",
"{nthServer}. Server" : "{nthServer}. Server",
"No object found in the given Base DN. Please revise." : "V zadané Base DN nebyl objekt nalezen. Ověřte.",
- "More than 1,000 directory entries available." : "Je dostupných více než 1000 adresářů.",
+ "More than 1,000 directory entries available." : "Je dostupných více než 1000 položek adresáře.",
+ "_{objectsFound} entry available within the provided Base DN_::_{objectsFound} entries available within the provided Base DN_" : ["{objectsFound} položka k dispozici v rámci poskytnuté Base DN","{objectsFound} položky k dispozici v rámci poskytnuté Base DN","{objectsFound} položek k dispozici v rámci poskytnuté Base DN","{objectsFound} položky k dispozici v rámci poskytnuté Base DN"],
"An error occurred. Please check the Base DN, as well as connection settings and credentials." : "Došlo k chybě. Ověře prosím Base DN společně s nastavením připojení a přihlašovacími údaji.",
- "Do you really want to delete the current Server Configuration?" : "Opravdu si přejete smazat současné nastavení serveru?",
+ "Do you really want to delete the current Server Configuration?" : "Opravdu si přejete smazat stávající nastavení serveru?",
"Confirm Deletion" : "Potvrdit smazání",
"Mappings cleared successfully!" : "Mapování úspěšně vyčištěno!",
"Error while clearing the mappings." : "Chyba při čištění mapování.",
- "Anonymous bind is not allowed. Please provide a User DN and Password." : "Anonymní bind není povolen. Zadejte prosím User DN a Heslo.",
+ "Anonymous bind is not allowed. Please provide a User DN and Password." : "Anonymní bind není povolen. Zadejte User DN a Heslo.",
"LDAP Operations error. Anonymous bind might not be allowed." : "Chyba LDAP operace. Anonymní bind nejspíše není povolen.",
- "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Ukládání selhalo. Ujistěte se, že databáze funguje. Načtěte znovu, než budete pokračovat.",
+ "Saving failed. Please make sure the database is in Operation. Reload before continuing." : "Ukládání se nezdařilo. Ujistěte se, že databáze funguje. Načtěte znovu, než budete pokračovat.",
"Switching the mode will enable automatic LDAP queries. Depending on your LDAP size they may take a while. Do you still want to switch the mode?" : "Přepnutí režimu povolí automatické LDAP dotazy. V závislosti na velikosti vašeho LDAP může vyhledávání chvíli trvat. Opravdu si přejete přepnout mód?",
"Mode switch" : "Přepnutí režimu",
"Select attributes" : "Vyberte atributy",
"User not found. Please check your login attributes and username. Effective filter (to copy-and-paste for command-line validation): <br/>" : "Uživatel nenalezen. Zkontrolujte prosím své přihlašovací údaje a jméno. Použitý filtr (pro zkopírování a ověření v příkazovém řádku): <br/>",
"User found and settings verified." : "Uživatel nalezen a nastavení ověřeno.",
"Consider narrowing your search, as it encompassed many users, only the first one of whom will be able to log in." : "Zvažte zúžení vyhledávání, protože současné zahrnuje mnoho uživatelů, ze kterých se bude schopen přihlásit pouze první.",
- "An unspecified error occurred. Please check log and settings." : "Došlo k nespecifikované chybě. Zkontrolujte prosím nastavení a soubor logu.",
+ "An unspecified error occurred. Please check log and settings." : "Došlo k nespecifikované chybě. Zkontrolujte nastavení a soubor se záznamem událostí.",
"The search filter is invalid, probably due to syntax issues like uneven number of opened and closed brackets. Please revise." : "Filtr vyhledávání je neplatný, pravděpodobně z důvodu chybné syntax jako třeba neuzavřené závorky. Ověřte to.",
"A connection error to LDAP / AD occurred, please check host, port and credentials." : "Došlo k chybě připojení k LDAP / AD, zkontrolujte prosím host, port a přihlašovací údaje.",
- "The \"%uid\" placeholder is missing. It will be replaced with the login name when querying LDAP / AD." : "Zástupný symbol \"%uid\" chybí. Při dotatzu na LDAP / AD bude nahrazen přihlašovacím jménem.",
+ "The \"%uid\" placeholder is missing. It will be replaced with the login name when querying LDAP / AD." : "Zástupný symbol „%uid“ chybí. Při dotatzu na LDAP / AD bude nahrazen přihlašovacím jménem.",
"Please provide a login name to test against" : "Zadejte prosím přihlašovací jméno pro otestování",
"The group box was disabled, because the LDAP / AD server does not support memberOf." : "Skupinové pole bylo vypnuto, protože LDAP / AD server nepodporuje memberOf.",
"Password change rejected. Hint: " : "Změna hesla zamítnuta. Nápověda: ",
- "Please login with the new password" : "Prosím, přihlaste se pomocí nového hesla",
- "Your password will expire tomorrow." : "Vaše heslo zítra vyprší.",
- "Your password will expire today." : "Vaše heslo dnes vyprší.",
- "_Your password will expire within %n day._::_Your password will expire within %n days._" : ["Vaše heslo vyprší za %n den.","Vaše heslo vyprší za %n dny.","Vaše heslo vyprší za %n dní.","Vaše heslo vyprší za %n dní."],
+ "Please login with the new password" : "Přihlaste se pomocí nového hesla",
+ "Your password will expire tomorrow." : "Platnost hesla zítra skončí.",
+ "Your password will expire today." : "Platnost hesla dnes končí.",
+ "_Your password will expire within %n day._::_Your password will expire within %n days._" : ["Platnost hesla skončí za %n den.","Platnost hesla skončí za %n dny.","Platnost hesla skončí za %n dnů.","Platnost hesla skončí za %n dny."],
"LDAP / AD integration" : "LDAP / AD propojení",
"_%s group found_::_%s groups found_" : ["nalezena %s skupina","nalezeny %s skupiny","nalezeno %s skupin","nalezeno %s skupin"],
"_%s user found_::_%s users found_" : ["nalezen %s uživatel","nalezeni %s uživatelé","nalezeno %s uživatelů","nalezeno %s uživatelů"],
- "Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings." : "Nelze detekovat atribut pro zobrazení jména uživatele. Upřesněte ho prosím sami v rozšířeném nastavení LDAP.",
+ "Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings." : "Nedaří se zjistit atribut pro zobrazení jména uživatele. Upřesněte ho sami v rozšířeném nastavení LDAP.",
"Could not find the desired feature" : "Nelze nalézt požadovanou vlastnost",
"Invalid Host" : "Neplatný hostitel",
"This application enables administrators to connect Nextcloud to an LDAP-based user directory." : "Tato aplikace umožňuje správcům připojit Nextcloud na adresář uživatelů založený na LDAP.",
+ "This application enables administrators to connect Nextcloud to an LDAP-based user directory for authentication and provisioning users, groups and user attributes. Admins can configure this application to connect to one or more LDAP directories or Active Directories via an LDAP interface. Attributes such as user quota, email, avatar pictures, group memberships and more can be pulled into Nextcloud from a directory with the appropriate queries and filters.\n\nA user logs into Nextcloud with their LDAP or AD credentials, and is granted access based on an authentication request handled by the LDAP or AD server. Nextcloud does not store LDAP or AD passwords, rather these credentials are used to authenticate a user and then Nextcloud uses a session for the user ID. More information is available in the LDAP User and Group Backend documentation." : "Tato aplikace umožní správcům propojit Nextcloud s adresářem uživatelů, založeném na LDAP pro ověřování a zprovozňování uživatelů, skupin a atributů uživatelů. Správci mohou tuto aplikaci nastavit pro propojení s jedním či více LDAP adresáři nebo Active Directory prostřednictvím LDAP rozhraní. Atributy jako například kvóta uživatele, e-mail, fotografie, členství ve skupinách a další mohou být vytažené do Nextcloud z adresáře pomocí příslušných dotazů a filtrů.\n\nUživatel se do Nextcloud přihlásí pomocí svých LDAP nebo AD přihlašovacích údajů a je mu udělen přístup na základě požadavku na ověření obslouženém LDAP nebo AD serverem. Nextcloud neukládá LDAP nebo AD hesla, namísto toho jsou tyto přihlašovací údaje použity pro ověření uživatele a Nextcloud používá relaci pro identifikátor uživatele. Více informací je k dispozici v dokumentaci k podpůrné vrstvě LDAP uživatel a skupina.",
"Test Configuration" : "Vyzkoušet nastavení",
"Help" : "Nápověda",
"Groups meeting these criteria are available in %s:" : "Skupiny splňující tyto podmínky jsou k dispozici v %s:",
@@ -77,16 +79,16 @@
"Verify settings and count the groups" : "Ověřit nastavení a spočítat skupiny",
"When logging in, %s will find the user based on the following attributes:" : "Při přihlašování, %s bude hledat uživatele na základě následujících atributů:",
"LDAP / AD Username:" : "LDAP / AD uživatelské jméno:",
- "Allows login against the LDAP / AD username, which is either \"uid\" or \"sAMAccountName\" and will be detected." : "Umožňuje přihlašování pomocí LDAP / AD uživatelského jména, což je buď „uid“ nebo „sAMAccountName“ a bude zjištěno.",
- "LDAP / AD Email Address:" : "LDAP / AD e-mailová adresa:",
- "Allows login against an email attribute. \"mail\" and \"mailPrimaryAddress\" allowed." : "Povoluje přihlášení pomocí e-mailového atributu. Je povolen \"mail\" a \"mailPrimaryAddress\" allowed.",
+ "Allows login against the LDAP / AD username, which is either \"uid\" or \"sAMAccountName\" and will be detected." : "Umožňuje přihlašování pomocí LDAP/AD uživatelského jména, což je buď „uid“ nebo „sAMAccountName“ a bude zjištěno.",
+ "LDAP / AD Email Address:" : "LDAP/AD e-mailová adresa:",
+ "Allows login against an email attribute. \"mail\" and \"mailPrimaryAddress\" allowed." : "Umožňuje přihlašování pomocí atributu e-mail. Je možné použít „mail“ a „mailPrimaryAddress“.",
"Other Attributes:" : "Další atributy:",
- "Defines the filter to apply, when login is attempted. \"%%uid\" replaces the username in the login action. Example: \"uid=%%uid\"" : "Definuje filtr použitý při pokusu o přihlášení. %%uid je nahrazeno uživatelským jménem z přihlašovací akce. Příklad: \"uid=%%uid\"",
+ "Defines the filter to apply, when login is attempted. \"%%uid\" replaces the username in the login action. Example: \"uid=%%uid\"" : "Definuje filtr který použít při pokusu o přihlášení. „%%uid“ je nahrazeno uživatelským jménem z přihlašovací akce. Příklad: „uid=%%uid“",
"Test Loginname" : "Testovací přihlašovací jméno",
"Verify settings" : "Ověřit nastavení",
"%s. Server:" : "%s. Server:",
"Add a new configuration" : "Přidat nové nastavení",
- "Copy current configuration into new directory binding" : "Zkopírovat současnou konfiguraci do nového adresářového propojení",
+ "Copy current configuration into new directory binding" : "Zkopírovat stávající nastavení do nového adresářového propojení",
"Delete the current configuration" : "Smazat stávající nastavení",
"Host" : "Počítač",
"You can omit the protocol, unless you require SSL. If so, start with ldaps://" : "Pokud nevyžadujete SSL, můžete protokol vynechat. Pokud ano, začněte ldaps://",
@@ -97,27 +99,27 @@
"Password" : "Heslo",
"For anonymous access, leave DN and Password empty." : "Pro anonymní přístup ponechte údaje DN and heslo prázdné.",
"Save Credentials" : "Uložit pověření",
- "One Base DN per line" : "Jedna základní DN na řádku",
+ "One Base DN per line" : "Každé základní DN na samostatném řádku",
"You can specify Base DN for users and groups in the Advanced tab" : "V rozšířeném nastavení můžete určit základní DN pro uživatele a skupiny",
- "Detect Base DN" : "Detekovat Base DN",
+ "Detect Base DN" : "Zjistitit Base DN",
"Test Base DN" : "Test Base DN",
"Avoids automatic LDAP requests. Better for bigger setups, but requires some LDAP knowledge." : "Zabraňuje automatickým LDAP požadavkům. Výhodné pro objemná nastavení, ale vyžaduje znalosti o LDAP.",
"Manually enter LDAP filters (recommended for large directories)" : "Ručně vložit LDAP filtry (doporučeno pro obsáhlé adresáře)",
"Listing and searching for users is constrained by these criteria:" : "Získávání a vyhledávání uživatelů je omezeno následujícími kritérii:",
- "The most common object classes for users are organizationalPerson, person, user, and inetOrgPerson. If you are not sure which object class to select, please consult your directory admin." : "Nejčastější třídy objektů pro uživatele jsou organizationalPerson, person, user a inetOrgPerson. Pokud si nejste jisti které třídy objektů zvolit, obraťte se na svého adresářového správce.",
+ "The most common object classes for users are organizationalPerson, person, user, and inetOrgPerson. If you are not sure which object class to select, please consult your directory admin." : "Nejčastější třídy objektů pro uživatele jsou organizationalPerson, person, user a inetOrgPerson. Pokud si nejste jisti které třídy objektů zvolit, obraťte se na správce svého adresáře.",
"The filter specifies which LDAP users shall have access to the %s instance." : "Filtr určuje, kteří uživatelé LDAP mají mít přístup k instanci %s.",
"Verify settings and count users" : "Ověřit nastavení a spočítat uživatele",
"Saving" : "Ukládá se",
"Back" : "Zpět",
"Continue" : "Pokračovat",
- "Please renew your password." : "Prosím, obnovte vaše heslo.",
+ "Please renew your password." : "Obnovte své heslo.",
"An internal error occurred." : "Došlo k interní chybě.",
- "Please try again or contact your administrator." : "Zkuste to znovu, nebo kontaktujte vašeho administrátora.",
+ "Please try again or contact your administrator." : "Zkuste to znovu, nebo se obraťte na svého správce.",
"Current password" : "Aktuální heslo",
"New password" : "Žádné heslo",
"Renew password" : "Obnovit heslo",
"Wrong password." : "Chybné heslo.",
- "Cancel" : "Zrušit",
+ "Cancel" : "Storno",
"Server" : "Server",
"Users" : "Uživatelé",
"Login Attributes" : "Přihlašovací atributy",
@@ -140,8 +142,8 @@
"Directory Settings" : "Nastavení adresáře",
"User Display Name Field" : "Pole zobrazovaného jména uživatele",
"The LDAP attribute to use to generate the user's display name." : "LDAP atribut použitý k vytvoření zobrazovaného jména uživatele.",
- "2nd User Display Name Field" : "Druhé pole zobrazovaného jména uživatele",
- "Optional. An LDAP attribute to be added to the display name in brackets. Results in e.g. »John Doe (john.doe@example.org)«." : "Volitelné. Přidání LDAP atributu v závorkách k zobrazovanému jménu. Vypadá např. jako »John Doe (john.doe@example.org)«.",
+ "2nd User Display Name Field" : "Druhá kolonka zobrazovaného jména uživatele",
+ "Optional. An LDAP attribute to be added to the display name in brackets. Results in e.g. »John Doe (john.doe@example.org)«." : "Volitelné. Přidání LDAP atributu v závorkách k zobrazovanému jménu. Vypadá např. jako „John Doe (john.doe@example.org)“",
"Base User Tree" : "Základní uživatelský strom",
"One User Base DN per line" : "Jedna uživatelská základní DN na řádku",
"User Search Attributes" : "Atributy vyhledávání uživatelů",
@@ -164,13 +166,13 @@
"Default password policy DN" : "DN výchozí politiky hesel",
"The DN of a default password policy that will be used for password expiry handling. Works only when LDAP password changes per user are enabled and is only supported by OpenLDAP. Leave empty to disable password expiry handling." : "DN výchozí politiky hesel, která bude použita ke zpracování vypršení hesel. Funguje pouze pokud jsou povoleny změny hesla uživatelem a používá se OpenLDAP. Ponechte prázdné pro výchozí zpracování vypršení hesel.",
"Special Attributes" : "Speciální atributy",
- "Quota Field" : "Pole pro kvótu",
+ "Quota Field" : "Kolonka kvóty",
"Leave empty for user's default quota. Otherwise, specify an LDAP/AD attribute." : "Ponechte prázné pro výchozí uživatelskou kvótu. Jinak uveďte LDAP / AD atribut.",
"Quota Default" : "Výchozí kvóta",
"Override default quota for LDAP users who do not have a quota set in the Quota Field." : "Přepsat výchozí kvótu pro LDAP uživatele, kteří nemají kvótu nastavenou v poli kvóty.",
"Email Field" : "Pole e-mailu",
"Set the user's email from their LDAP attribute. Leave it empty for default behaviour." : "Nastavit e-mail uživatele na základě LDAP atributu. Ponechte prázdné pro výchozí chování.",
- "User Home Folder Naming Rule" : "Pravidlo pojmenování domovského adresáře uživatele",
+ "User Home Folder Naming Rule" : "Pravidlo pojmenování domovské složky uživatele",
"Leave empty for user name (default). Otherwise, specify an LDAP/AD attribute." : "Ponechte prázdné pro uživatelské jméno (výchozí). Jinak uveďte LDAP/AD parametr.",
"Internal Username" : "Interní uživatelské jméno",
"By default the internal username will be created from the UUID attribute. It makes sure that the username is unique and characters do not need to be converted. The internal username has the restriction that only these characters are allowed: [ a-zA-Z0-9_.@- ]. Other characters are replaced with their ASCII correspondence or simply omitted. On collisions a number will be added/increased. The internal username is used to identify a user internally. It is also the default name for the user home folder. It is also a part of remote URLs, for instance for all *DAV services. With this setting, the default behavior can be overridden. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users." : "Ve výchozím nastavení bude interní uživatelské jméno vytvořeno z atributu UUID. To zajišťuje, že je uživatelské jméno unikátní a znaky nemusí být převáděny. Interní uživatelské jméno má omezení, podle kterého jsou povoleny jen následující znaky [ a-zA-Z0-9_.@- ]. Ostatní znaky jsou nahrazeny jejich protějšky z ASCII nebo prostě vynechány. Při konfliktech bude přidáno/zvýšeno číslo. Interní uživatelské jméno slouží pro interní identifikaci uživatele. Je také výchozím názvem domovského adresáře uživatele. Je také součástí URL, např. pro služby *DAV. Tímto nastavením může být výchozí chování změněno. Ponechte jej prázdné, chcete-li zachovat výchozí nastavení. Změny se projeví pouze u nově namapovaných (přidaných) uživatelů LDAP.",
@@ -179,14 +181,15 @@
"By default, the UUID attribute is automatically detected. The UUID attribute is used to doubtlessly identify LDAP users and groups. Also, the internal username will be created based on the UUID, if not specified otherwise above. You can override the setting and pass an attribute of your choice. You must make sure that the attribute of your choice can be fetched for both users and groups and it is unique. Leave it empty for default behavior. Changes will have effect only on newly mapped (added) LDAP users and groups." : "Ve výchozím nastavení je UUID atribut nalezen automaticky. UUID atribut je používán pro nezpochybnitelnou identifikaci uživatelů a skupin z LDAP. Navíc je na základě UUID tvořeno také interní uživatelské jméno, pokud není nastaveno jinak. Můžete výchozí nastavení přepsat a použít atribut, který sami zvolíte. Musíte se ale ujistit, že atribut, který vyberete, bude uveden jak u uživatelů, tak i u skupin a je unikátní. Ponechte prázdné pro výchozí chování. Změna bude mít vliv jen na nově namapované (přidané) uživatele a skupiny z LDAP.",
"UUID Attribute for Users:" : "UUID atribut pro uživatele:",
"UUID Attribute for Groups:" : "UUID atribut pro skupiny:",
- "Username-LDAP User Mapping" : "Mapování uživatelských jmen z LDAPu",
+ "Username-LDAP User Mapping" : "Mapování uživatelských jmen z LDAP",
+ "Usernames are used to store and assign metadata. In order to precisely identify and recognize users, each LDAP user will have an internal username. This requires a mapping from username to LDAP user. The created username is mapped to the UUID of the LDAP user. Additionally the DN is cached as well to reduce LDAP interaction, but it is not used for identification. If the DN changes, the changes will be found. The internal username is used all over. Clearing the mappings will have leftovers everywhere. Clearing the mappings is not configuration sensitive, it affects all LDAP configurations! Never clear the mappings in a production environment, only in a testing or experimental stage." : "Uživatelská jména slouží k ukládání a přiřazování metadat. Pro přesnou identifikaci a rozpoznávání uživatelů, každý LDAP uživatel má vnitřní uživatelské jméno. Toto vyžaduje mapování uživatelského jména na LDAP uživatele. Krom toho je uložen do mezipaměti rozlišený název aby se omezila interakce s LDAP, ale není používáno pro identifikaci. Pokud se DN změní, změny budou nalezeny. Vnitřní uživatelské jméno bude použito nade všechno. Čištění mapování bude mít pozůstatky všude. Čištění mapování není citlivé na nastavení, postihuje všechny LDAP nastavení. Nikdy nečistěte mapování v produkčním prostředí, pouze v testovací nebo experimentální fázi.",
"Clear Username-LDAP User Mapping" : "Zrušit mapování uživatelských jmen LDAPu",
"Clear Groupname-LDAP Group Mapping" : "Zrušit mapování názvů skupin LDAPu",
" entries available within the provided Base DN" : "záznamů dostupných v zadané Base DN",
"1. Server" : "1. Server",
"Wrong password. Reset it?" : "Chybné heslo. Resetovat?",
"LDAP" : "LDAP",
- "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behavior. Please ask your system administrator to disable one of them." : "<b>Varování:</b> Aplikace user_ldap a user_webdavauth jsou vzájemně nekompatibilní. Můžete zaznamenat neočekávané chování. Požádejte prosím svého správce systému o zakázání jedné z nich.",
+ "<b>Warning:</b> Apps user_ldap and user_webdavauth are incompatible. You may experience unexpected behavior. Please ask your system administrator to disable one of them." : "<b>Varování:</b> Aplikace user_ldap a user_webdavauth jsou vzájemně nekompatibilní. Můžete zaznamenat neočekávané chování. Požádejte svého správce systému o zakázání jedné z nich.",
"Usernames are used to store and assign (meta) data. In order to precisely identify and recognize users, each LDAP user will have an internal username. This requires a mapping from username to LDAP user. The created username is mapped to the UUID of the LDAP user. Additionally the DN is cached as well to reduce LDAP interaction, but it is not used for identification. If the DN changes, the changes will be found. The internal username is used all over. Clearing the mappings will have leftovers everywhere. Clearing the mappings is not configuration sensitive, it affects all LDAP configurations! Never clear the mappings in a production environment, only in a testing or experimental stage." : "Uživatelská jména jsou používána pro uchovávání a přiřazování (meta)dat. Pro správnou identifikaci a rozpoznání uživatelů bude mít každý LDAP uživatel interní uživatelské jméno. To vyžaduje mapování uživatelských jmen na uživatele LDAP. Vytvořené uživatelské jméno je mapováno na UUID uživatele v LDAP. DN informace je navíc udržována v paměti pro snížení interakce s LDAP, ale není používána pro identifikaci. Pokud se DN změní, bude to správně rozpoznáno. Interní uživatelské jméno se používá celé. Vyčištění mapování zanechá zbytky všude. Vyčištění navíc není specifické pro každou konfiguraci, bude mít vliv na všechny LDAP konfigurace! Nikdy nečistěte mapování v produkčním prostředí, ale pouze v testovací nebo experimentální fázi."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/user_ldap/l10n/nl.js b/apps/user_ldap/l10n/nl.js
index f56b7d1501e..1272701ddf5 100644
--- a/apps/user_ldap/l10n/nl.js
+++ b/apps/user_ldap/l10n/nl.js
@@ -65,6 +65,8 @@ OC.L10N.register(
"Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings." : "Kon het weergavenaam attribuut van de gebruiker niet vinden. Geef het zelf op in de geavanceerde LDAP instellingen.",
"Could not find the desired feature" : "Kon de gewenste functie niet vinden",
"Invalid Host" : "Ongeldige server",
+ "This application enables administrators to connect Nextcloud to an LDAP-based user directory." : "Deze applicatie laat beheerders Nextcloud verbinden met een LDAP-gebruikersdatabase.",
+ "This application enables administrators to connect Nextcloud to an LDAP-based user directory for authentication and provisioning users, groups and user attributes. Admins can configure this application to connect to one or more LDAP directories or Active Directories via an LDAP interface. Attributes such as user quota, email, avatar pictures, group memberships and more can be pulled into Nextcloud from a directory with the appropriate queries and filters.\n\nA user logs into Nextcloud with their LDAP or AD credentials, and is granted access based on an authentication request handled by the LDAP or AD server. Nextcloud does not store LDAP or AD passwords, rather these credentials are used to authenticate a user and then Nextcloud uses a session for the user ID. More information is available in the LDAP User and Group Backend documentation." : "Met deze applicatie kunnen beheerders Nextcloud verbinden met een LDAP-gebruikersdirectory voor authenticatie en beheer van gebruikers, groepen en gebruikersattributen. Beheerders kunnen deze toepassing configureren om verbinding te maken met één of meer LDAP-directory's of Active Directory's via een LDAP-interface. Attributen zoals gebruikersquota, e-mail, avatarafbeeldingen, groepslidmaatschappen en meer kunnen in NextCloud met de juiste zoekopdrachten en filters vanuit een map worden opgehaald.\n\nEen gebruiker meldt zich aan bij Nextcloud met zijn LDAP- of AD-referenties en krijgt toegang op basis van een authenticatieverzoek dat door de LDAP- of AD-server wordt afgehandeld. Nextcloud slaat geen LDAP- of AD-wachtwoorden op, maar deze inloggegevens worden alleen gebruikt om een gebruiker te verifiëren en vervolgens gebruikt Nextcloud een sessie voor de gebruikers-ID. Meer informatie is beschikbaar in de documentatie LDAP-gebruiker en groepsbackend.",
"Test Configuration" : "Test configuratie",
"Help" : "Help",
"Groups meeting these criteria are available in %s:" : "Groepsafspraken die voldoen aan deze criteria zijn beschikbaar in %s:",
diff --git a/apps/user_ldap/l10n/nl.json b/apps/user_ldap/l10n/nl.json
index 4a02a922ff4..ca886cd2760 100644
--- a/apps/user_ldap/l10n/nl.json
+++ b/apps/user_ldap/l10n/nl.json
@@ -63,6 +63,8 @@
"Could not detect user display name attribute. Please specify it yourself in advanced LDAP settings." : "Kon het weergavenaam attribuut van de gebruiker niet vinden. Geef het zelf op in de geavanceerde LDAP instellingen.",
"Could not find the desired feature" : "Kon de gewenste functie niet vinden",
"Invalid Host" : "Ongeldige server",
+ "This application enables administrators to connect Nextcloud to an LDAP-based user directory." : "Deze applicatie laat beheerders Nextcloud verbinden met een LDAP-gebruikersdatabase.",
+ "This application enables administrators to connect Nextcloud to an LDAP-based user directory for authentication and provisioning users, groups and user attributes. Admins can configure this application to connect to one or more LDAP directories or Active Directories via an LDAP interface. Attributes such as user quota, email, avatar pictures, group memberships and more can be pulled into Nextcloud from a directory with the appropriate queries and filters.\n\nA user logs into Nextcloud with their LDAP or AD credentials, and is granted access based on an authentication request handled by the LDAP or AD server. Nextcloud does not store LDAP or AD passwords, rather these credentials are used to authenticate a user and then Nextcloud uses a session for the user ID. More information is available in the LDAP User and Group Backend documentation." : "Met deze applicatie kunnen beheerders Nextcloud verbinden met een LDAP-gebruikersdirectory voor authenticatie en beheer van gebruikers, groepen en gebruikersattributen. Beheerders kunnen deze toepassing configureren om verbinding te maken met één of meer LDAP-directory's of Active Directory's via een LDAP-interface. Attributen zoals gebruikersquota, e-mail, avatarafbeeldingen, groepslidmaatschappen en meer kunnen in NextCloud met de juiste zoekopdrachten en filters vanuit een map worden opgehaald.\n\nEen gebruiker meldt zich aan bij Nextcloud met zijn LDAP- of AD-referenties en krijgt toegang op basis van een authenticatieverzoek dat door de LDAP- of AD-server wordt afgehandeld. Nextcloud slaat geen LDAP- of AD-wachtwoorden op, maar deze inloggegevens worden alleen gebruikt om een gebruiker te verifiëren en vervolgens gebruikt Nextcloud een sessie voor de gebruikers-ID. Meer informatie is beschikbaar in de documentatie LDAP-gebruiker en groepsbackend.",
"Test Configuration" : "Test configuratie",
"Help" : "Help",
"Groups meeting these criteria are available in %s:" : "Groepsafspraken die voldoen aan deze criteria zijn beschikbaar in %s:",
diff --git a/apps/user_ldap/l10n/sl.js b/apps/user_ldap/l10n/sl.js
index 5a1168af449..5f048d59062 100644
--- a/apps/user_ldap/l10n/sl.js
+++ b/apps/user_ldap/l10n/sl.js
@@ -82,13 +82,14 @@ OC.L10N.register(
"Saving" : "Poteka shranjevanje ...",
"Back" : "Nazaj",
"Continue" : "Nadaljuj",
+ "Cancel" : "Prekliči",
"Server" : "Strežnik",
"Users" : "Uporabniki",
"Login Attributes" : "Atributi prijave",
"Groups" : "Skupine",
"Expert" : "Napredno",
"Advanced" : "Napredne možnosti",
- "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." : "<b>Opozorilo:</b> modul PHP LDAP mora biti nameščen, sicer vmesnik ne bo deloval. Paket je treba namestiti.",
+ "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." : "<b>Opozorilo:</b> modul PHP LDAP mora biti nameščen, sicer vmesnik ne bo deloval. Za pravilno delovanje je paket treba namestiti.",
"Connection Settings" : "Nastavitve povezave",
"Configuration Active" : "Dejavna nastavitev",
"When unchecked, this configuration will be skipped." : "Neizbrana možnost preskoči nastavitev.",
diff --git a/apps/user_ldap/l10n/sl.json b/apps/user_ldap/l10n/sl.json
index 50c6dded16b..eff5aee082d 100644
--- a/apps/user_ldap/l10n/sl.json
+++ b/apps/user_ldap/l10n/sl.json
@@ -80,13 +80,14 @@
"Saving" : "Poteka shranjevanje ...",
"Back" : "Nazaj",
"Continue" : "Nadaljuj",
+ "Cancel" : "Prekliči",
"Server" : "Strežnik",
"Users" : "Uporabniki",
"Login Attributes" : "Atributi prijave",
"Groups" : "Skupine",
"Expert" : "Napredno",
"Advanced" : "Napredne možnosti",
- "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." : "<b>Opozorilo:</b> modul PHP LDAP mora biti nameščen, sicer vmesnik ne bo deloval. Paket je treba namestiti.",
+ "<b>Warning:</b> The PHP LDAP module is not installed, the backend will not work. Please ask your system administrator to install it." : "<b>Opozorilo:</b> modul PHP LDAP mora biti nameščen, sicer vmesnik ne bo deloval. Za pravilno delovanje je paket treba namestiti.",
"Connection Settings" : "Nastavitve povezave",
"Configuration Active" : "Dejavna nastavitev",
"When unchecked, this configuration will be skipped." : "Neizbrana možnost preskoči nastavitev.",
diff --git a/apps/user_ldap/lib/User_LDAP.php b/apps/user_ldap/lib/User_LDAP.php
index 11ed02f47ab..fbdf1cc2551 100644
--- a/apps/user_ldap/lib/User_LDAP.php
+++ b/apps/user_ldap/lib/User_LDAP.php
@@ -119,24 +119,26 @@ class User_LDAP extends BackendUtility implements \OCP\IUserBackend, \OCP\UserIn
}
/**
- * returns the username for the given login name, if available
+ * Return the username for the given login name, if available
*
* @param string $loginName
* @return string|false
+ * @throws \Exception
*/
public function loginName2UserName($loginName) {
- $cacheKey = 'loginName2UserName-'.$loginName;
+ $cacheKey = 'loginName2UserName-' . $loginName;
$username = $this->access->connection->getFromCache($cacheKey);
- if(!is_null($username)) {
+
+ if ($username !== null) {
return $username;
}
try {
$ldapRecord = $this->getLDAPUserByLoginName($loginName);
$user = $this->access->userManager->get($ldapRecord['dn'][0]);
- if($user instanceof OfflineUser) {
+ if ($user === null || $user instanceof OfflineUser) {
// this path is not really possible, however get() is documented
- // to return User or OfflineUser so we are very defensive here.
+ // to return User, OfflineUser or null so we are very defensive here.
$this->access->connection->writeToCache($cacheKey, false);
return false;
}
diff --git a/apps/workflowengine/l10n/bg.js b/apps/workflowengine/l10n/bg.js
index 7efea5d1e6a..62ce0277784 100644
--- a/apps/workflowengine/l10n/bg.js
+++ b/apps/workflowengine/l10n/bg.js
@@ -14,10 +14,10 @@ OC.L10N.register(
"less or equals" : "по-малко или равно",
"greater or equals" : "по-голямо или равно",
"greater" : "по-голям",
- "File system tag" : "Таг на файлова система",
- "is tagged with" : "е тагнат с",
- "is not tagged with" : "не е тагнат с",
- "Select tag…" : "Избери таг...",
+ "File system tag" : "Етикет на файлова система",
+ "is tagged with" : "има етикет",
+ "is not tagged with" : "няма етикет",
+ "Select tag…" : "Изберете етикет...",
"Request remote address" : "Искане на отдалечен адрес",
"matches IPv4" : "съвпада IPv4",
"does not match IPv4" : "не съвпада IPv4",
@@ -43,7 +43,7 @@ OC.L10N.register(
"The given operator is invalid" : "Даденият оператор е невалиден",
"The given regular expression is invalid" : "Даденият израз е невалиден",
"The given file size is invalid" : "Даденият размер на файла не е валиден",
- "The given tag id is invalid" : "Даденият таг код не е валиден",
+ "The given tag id is invalid" : "Даденият етикет не е валиден",
"The given IP range is invalid" : "Даденият IP диапазон е невалиден",
"The given IP range is not valid for IPv4" : "Даденият IP диапазон не е валиден за IPv4",
"The given IP range is not valid for IPv6" : "Даденият IP диапазон не е валиден за IPv6",
diff --git a/apps/workflowengine/l10n/bg.json b/apps/workflowengine/l10n/bg.json
index 85f67e23520..72d74e83231 100644
--- a/apps/workflowengine/l10n/bg.json
+++ b/apps/workflowengine/l10n/bg.json
@@ -12,10 +12,10 @@
"less or equals" : "по-малко или равно",
"greater or equals" : "по-голямо или равно",
"greater" : "по-голям",
- "File system tag" : "Таг на файлова система",
- "is tagged with" : "е тагнат с",
- "is not tagged with" : "не е тагнат с",
- "Select tag…" : "Избери таг...",
+ "File system tag" : "Етикет на файлова система",
+ "is tagged with" : "има етикет",
+ "is not tagged with" : "няма етикет",
+ "Select tag…" : "Изберете етикет...",
"Request remote address" : "Искане на отдалечен адрес",
"matches IPv4" : "съвпада IPv4",
"does not match IPv4" : "не съвпада IPv4",
@@ -41,7 +41,7 @@
"The given operator is invalid" : "Даденият оператор е невалиден",
"The given regular expression is invalid" : "Даденият израз е невалиден",
"The given file size is invalid" : "Даденият размер на файла не е валиден",
- "The given tag id is invalid" : "Даденият таг код не е валиден",
+ "The given tag id is invalid" : "Даденият етикет не е валиден",
"The given IP range is invalid" : "Даденият IP диапазон е невалиден",
"The given IP range is not valid for IPv4" : "Даденият IP диапазон не е валиден за IPv4",
"The given IP range is not valid for IPv6" : "Даденият IP диапазон не е валиден за IPv6",
diff --git a/apps/workflowengine/l10n/cs.js b/apps/workflowengine/l10n/cs.js
index cedb877c367..830b90e971c 100644
--- a/apps/workflowengine/l10n/cs.js
+++ b/apps/workflowengine/l10n/cs.js
@@ -19,7 +19,7 @@ OC.L10N.register(
"File system tag" : "Štítek souborového systému",
"is tagged with" : "je označeno jako",
"is not tagged with" : "není označen",
- "Select tag…" : "Vybrat značku…",
+ "Select tag…" : "Vybrat štítek…",
"Request remote address" : "Vzdálená adresa požadavku",
"matches IPv4" : "odpovídá IPv4",
"does not match IPv4" : "neodpovídá IPv4",
@@ -39,28 +39,30 @@ OC.L10N.register(
"Android client" : "Android klient",
"iOS client" : "iOS klient",
"Desktop client" : "Desktopový klient",
+ "Thunderbird & Outlook addons" : "Doplňky pro Thunderbird a Outlook",
"User group membership" : "Členství ve skupině uživatelů",
"is member of" : "je členem",
"is not member of" : "není členem",
- "The given operator is invalid" : "Zadaný operátor je neplatný",
+ "The given operator is invalid" : "Zadaný operátor není platný",
"The given regular expression is invalid" : "Zadaný regulární výraz je neplatný",
- "The given file size is invalid" : "Zadaná velikost souboru je neplatná",
+ "The given file size is invalid" : "Zadaná velikost souboru není platná",
"The given tag id is invalid" : "Zadané id značky je neplatné",
"The given IP range is invalid" : "Zadaný rozsah IP adres není platný",
"The given IP range is not valid for IPv4" : "Zadaný rozsah IP je pro IPv4 neplatný",
"The given IP range is not valid for IPv6" : "Zadaný IP rozsah není pro IPv6 platný",
"The given time span is invalid" : "Zadaný časový rozsah je neplatný",
- "The given start time is invalid" : "Zadaný počáteční čas je neplatný",
+ "The given start time is invalid" : "Zadaný počáteční čas není platný",
"The given end time is invalid" : "Zadaný koncový čas je neplatný",
"The given group does not exist" : "Zadaná skupina neexistuje",
"Check %s is invalid or does not exist" : "Kontrola %s je neplatná, nebo neexistuje",
- "Operation #%s does not exist" : "Operace #%s neexistuje",
+ "Operation #%s does not exist" : "Operace č. %s neexistuje",
"Operation %s does not exist" : "Operace %s neexistuje",
- "Operation %s is invalid" : "Operace %s je neplatná",
+ "Operation %s is invalid" : "Operace %s není platná",
"Check %s does not exist" : "Kontrola %s neexistuje",
"Check %s is invalid" : "Kontrola %s je neplatná",
- "Check #%s does not exist" : "Kontrola #%s neexistuje",
+ "Check #%s does not exist" : "Kontrola č. %s neexistuje",
"Workflow" : "Postup práce",
+ "Files workflow engine" : "Engine práce se soubory",
"Open documentation" : "Otevřít dokumentaci",
"Add rule group" : "Přidat skupinu pravidel",
"Short rule description" : "Krátký popis pravidla",
diff --git a/apps/workflowengine/l10n/cs.json b/apps/workflowengine/l10n/cs.json
index 33c00ad8638..28260df901c 100644
--- a/apps/workflowengine/l10n/cs.json
+++ b/apps/workflowengine/l10n/cs.json
@@ -17,7 +17,7 @@
"File system tag" : "Štítek souborového systému",
"is tagged with" : "je označeno jako",
"is not tagged with" : "není označen",
- "Select tag…" : "Vybrat značku…",
+ "Select tag…" : "Vybrat štítek…",
"Request remote address" : "Vzdálená adresa požadavku",
"matches IPv4" : "odpovídá IPv4",
"does not match IPv4" : "neodpovídá IPv4",
@@ -37,28 +37,30 @@
"Android client" : "Android klient",
"iOS client" : "iOS klient",
"Desktop client" : "Desktopový klient",
+ "Thunderbird & Outlook addons" : "Doplňky pro Thunderbird a Outlook",
"User group membership" : "Členství ve skupině uživatelů",
"is member of" : "je členem",
"is not member of" : "není členem",
- "The given operator is invalid" : "Zadaný operátor je neplatný",
+ "The given operator is invalid" : "Zadaný operátor není platný",
"The given regular expression is invalid" : "Zadaný regulární výraz je neplatný",
- "The given file size is invalid" : "Zadaná velikost souboru je neplatná",
+ "The given file size is invalid" : "Zadaná velikost souboru není platná",
"The given tag id is invalid" : "Zadané id značky je neplatné",
"The given IP range is invalid" : "Zadaný rozsah IP adres není platný",
"The given IP range is not valid for IPv4" : "Zadaný rozsah IP je pro IPv4 neplatný",
"The given IP range is not valid for IPv6" : "Zadaný IP rozsah není pro IPv6 platný",
"The given time span is invalid" : "Zadaný časový rozsah je neplatný",
- "The given start time is invalid" : "Zadaný počáteční čas je neplatný",
+ "The given start time is invalid" : "Zadaný počáteční čas není platný",
"The given end time is invalid" : "Zadaný koncový čas je neplatný",
"The given group does not exist" : "Zadaná skupina neexistuje",
"Check %s is invalid or does not exist" : "Kontrola %s je neplatná, nebo neexistuje",
- "Operation #%s does not exist" : "Operace #%s neexistuje",
+ "Operation #%s does not exist" : "Operace č. %s neexistuje",
"Operation %s does not exist" : "Operace %s neexistuje",
- "Operation %s is invalid" : "Operace %s je neplatná",
+ "Operation %s is invalid" : "Operace %s není platná",
"Check %s does not exist" : "Kontrola %s neexistuje",
"Check %s is invalid" : "Kontrola %s je neplatná",
- "Check #%s does not exist" : "Kontrola #%s neexistuje",
+ "Check #%s does not exist" : "Kontrola č. %s neexistuje",
"Workflow" : "Postup práce",
+ "Files workflow engine" : "Engine práce se soubory",
"Open documentation" : "Otevřít dokumentaci",
"Add rule group" : "Přidat skupinu pravidel",
"Short rule description" : "Krátký popis pravidla",
diff --git a/apps/workflowengine/l10n/fi.js b/apps/workflowengine/l10n/fi.js
index f91eca53b63..772cc2c2420 100644
--- a/apps/workflowengine/l10n/fi.js
+++ b/apps/workflowengine/l10n/fi.js
@@ -39,6 +39,7 @@ OC.L10N.register(
"Android client" : "Android-sovellus",
"iOS client" : "iOS-sovellus",
"Desktop client" : "Työpöytäsovellus",
+ "Thunderbird & Outlook addons" : "Thunderbird- & Outlook-lisäosat",
"User group membership" : "Käyttäjäryhmä jäsenyys",
"is member of" : "on jäsen",
"is not member of" : "ei ole jäsen",
diff --git a/apps/workflowengine/l10n/fi.json b/apps/workflowengine/l10n/fi.json
index e9dfaf185fa..a16485fb377 100644
--- a/apps/workflowengine/l10n/fi.json
+++ b/apps/workflowengine/l10n/fi.json
@@ -37,6 +37,7 @@
"Android client" : "Android-sovellus",
"iOS client" : "iOS-sovellus",
"Desktop client" : "Työpöytäsovellus",
+ "Thunderbird & Outlook addons" : "Thunderbird- & Outlook-lisäosat",
"User group membership" : "Käyttäjäryhmä jäsenyys",
"is member of" : "on jäsen",
"is not member of" : "ei ole jäsen",
diff --git a/apps/workflowengine/l10n/he.js b/apps/workflowengine/l10n/he.js
index b28e80f592d..99bdf9db707 100644
--- a/apps/workflowengine/l10n/he.js
+++ b/apps/workflowengine/l10n/he.js
@@ -39,6 +39,7 @@ OC.L10N.register(
"Android client" : "לקוח Android",
"iOS client" : "לקוח iOS",
"Desktop client" : "לקוח שולחן עבודה",
+ "Thunderbird & Outlook addons" : "תוספות ל־Thunderbird ול־Outlook",
"User group membership" : "חברות בקבוצת משתמשים",
"is member of" : "חבר בקבוצה",
"is not member of" : "לא חבר בקבוצה",
@@ -56,6 +57,9 @@ OC.L10N.register(
"Operation #%s does not exist" : "פעולה מס׳ %s לא קיימת",
"Operation %s does not exist" : "הפעולה %s לא קיימת",
"Operation %s is invalid" : "הפעולה %s שגויה",
+ "Open documentation" : "פתיחת תיעוד",
+ "Add rule group" : "הוספת קבוצת כללים",
+ "Short rule description" : "תיאור מקוצר לכלל",
"Add rule" : "הוספת כלל",
"Reset" : "איפוס",
"Save" : "שמירה",
diff --git a/apps/workflowengine/l10n/he.json b/apps/workflowengine/l10n/he.json
index 970bf69de77..c59825d5e75 100644
--- a/apps/workflowengine/l10n/he.json
+++ b/apps/workflowengine/l10n/he.json
@@ -37,6 +37,7 @@
"Android client" : "לקוח Android",
"iOS client" : "לקוח iOS",
"Desktop client" : "לקוח שולחן עבודה",
+ "Thunderbird & Outlook addons" : "תוספות ל־Thunderbird ול־Outlook",
"User group membership" : "חברות בקבוצת משתמשים",
"is member of" : "חבר בקבוצה",
"is not member of" : "לא חבר בקבוצה",
@@ -54,6 +55,9 @@
"Operation #%s does not exist" : "פעולה מס׳ %s לא קיימת",
"Operation %s does not exist" : "הפעולה %s לא קיימת",
"Operation %s is invalid" : "הפעולה %s שגויה",
+ "Open documentation" : "פתיחת תיעוד",
+ "Add rule group" : "הוספת קבוצת כללים",
+ "Short rule description" : "תיאור מקוצר לכלל",
"Add rule" : "הוספת כלל",
"Reset" : "איפוס",
"Save" : "שמירה",
diff --git a/apps/workflowengine/l10n/ko.js b/apps/workflowengine/l10n/ko.js
index e1ad26ca130..46bbcf87c4e 100644
--- a/apps/workflowengine/l10n/ko.js
+++ b/apps/workflowengine/l10n/ko.js
@@ -1,6 +1,8 @@
OC.L10N.register(
"workflowengine",
{
+ "Group list is empty" : "그룹 목록이 비었습니다.",
+ "Unable to retrieve the group list" : "그룹 리스트를 받아올 수 없습니다.",
"Saved" : "저장됨",
"Saving failed:" : "저장 실패:",
"File MIME type" : "파일 MIME 형식",
diff --git a/apps/workflowengine/l10n/ko.json b/apps/workflowengine/l10n/ko.json
index 0bf33319f0b..44d3a8614d7 100644
--- a/apps/workflowengine/l10n/ko.json
+++ b/apps/workflowengine/l10n/ko.json
@@ -1,4 +1,6 @@
{ "translations": {
+ "Group list is empty" : "그룹 목록이 비었습니다.",
+ "Unable to retrieve the group list" : "그룹 리스트를 받아올 수 없습니다.",
"Saved" : "저장됨",
"Saving failed:" : "저장 실패:",
"File MIME type" : "파일 MIME 형식",
diff --git a/apps/workflowengine/l10n/nl.js b/apps/workflowengine/l10n/nl.js
index 5922b7aed70..8324bebcd2c 100644
--- a/apps/workflowengine/l10n/nl.js
+++ b/apps/workflowengine/l10n/nl.js
@@ -2,7 +2,7 @@ OC.L10N.register(
"workflowengine",
{
"Group list is empty" : "Groepenlijst is leeg",
- "Unable to retrieve the group list" : "Kan groepsoverzicht niet ophalen",
+ "Unable to retrieve the group list" : "Kan groepenoverzicht niet ophalen",
"Saved" : "Bewaard",
"Saving failed:" : "Opslaan mislukt:",
"File MIME type" : "Mimetype bestand",
diff --git a/apps/workflowengine/l10n/nl.json b/apps/workflowengine/l10n/nl.json
index 1340a6b371c..b6147c35b03 100644
--- a/apps/workflowengine/l10n/nl.json
+++ b/apps/workflowengine/l10n/nl.json
@@ -1,6 +1,6 @@
{ "translations": {
"Group list is empty" : "Groepenlijst is leeg",
- "Unable to retrieve the group list" : "Kan groepsoverzicht niet ophalen",
+ "Unable to retrieve the group list" : "Kan groepenoverzicht niet ophalen",
"Saved" : "Bewaard",
"Saving failed:" : "Opslaan mislukt:",
"File MIME type" : "Mimetype bestand",
diff --git a/apps/workflowengine/l10n/sl.js b/apps/workflowengine/l10n/sl.js
new file mode 100644
index 00000000000..572b58ac15f
--- /dev/null
+++ b/apps/workflowengine/l10n/sl.js
@@ -0,0 +1,75 @@
+OC.L10N.register(
+ "workflowengine",
+ {
+ "Group list is empty" : "Skupinski seznam je prazen",
+ "Unable to retrieve the group list" : "Skupinskega seznama ni mogoče pridobiti.",
+ "Saved" : "Shranjeno",
+ "Saving failed:" : "Shranjevanje je spodletelo:",
+ "File MIME type" : "Vrsta MIME datoteke",
+ "is" : "je",
+ "is not" : "ni",
+ "matches" : "se sklada z",
+ "does not match" : "se ne sklada z",
+ "Example: {placeholder}" : "Primer: {placeholder}",
+ "File size (upload)" : "Velikost datoteke (pošiljanje)",
+ "less" : "je manjša",
+ "less or equals" : "je manjša ali enaka",
+ "greater or equals" : "je večja ali enaka",
+ "greater" : "je večja",
+ "File system tag" : "Sistemska oznaka datoteke",
+ "is tagged with" : "je",
+ "is not tagged with" : "ni",
+ "Select tag…" : "Izbor oznake ...",
+ "Request remote address" : "Oddaljeni naslov",
+ "matches IPv4" : "se sklada z IPv4",
+ "does not match IPv4" : "ni skladen z IPv4",
+ "matches IPv6" : "se sklada z IPv6",
+ "does not match IPv6" : "ni skladen z IPv6",
+ "Request time" : "Čas dostopa",
+ "between" : "je dovoljen med",
+ "not between" : "ni dovoljen med",
+ "Start" : "Začetek",
+ "End" : "Konec",
+ "Select timezone…" : "Časovni pas ...",
+ "Request URL" : "Naslov URL za dostop",
+ "Predefined URLs" : "Določeni naslovi URL",
+ "Files WebDAV" : "Datoteke WebDAV",
+ "Request user agent" : "Uporabniški odjemalec",
+ "Sync clients" : "Odjemalci za usklajevanje",
+ "Android client" : "Odjemalec za Android",
+ "iOS client" : "Odjemalec za iOS",
+ "Desktop client" : "Odjemalec za namizne računalnike",
+ "Thunderbird & Outlook addons" : "Razširitve za Thunderbird in Outlook",
+ "User group membership" : "Članstvo v uporabniških skupinah",
+ "is member of" : "je v skupini",
+ "is not member of" : "ni v skupini",
+ "The given operator is invalid" : "Podan operator ni veljaven.",
+ "The given regular expression is invalid" : "Podan logični izraz ni veljaven.",
+ "The given file size is invalid" : "Podana velikost datoteke ni veljavna.",
+ "The given tag id is invalid" : "Podan ID oznake ni veljaven.",
+ "The given IP range is invalid" : "Podan obseg IP ni veljaven.",
+ "The given IP range is not valid for IPv4" : "Podan obseg IP ni veljaven za IPv4.",
+ "The given IP range is not valid for IPv6" : "Podan obseg IP ni veljaven za IPv6.",
+ "The given time span is invalid" : "Podan časovni obseg ni veljaven.",
+ "The given start time is invalid" : "Podan čas začetka ni veljaven.",
+ "The given end time is invalid" : "Podan čas zaključka ni veljaven.",
+ "The given group does not exist" : "Podana skupina ne obstaja.",
+ "Check %s is invalid or does not exist" : "Preverba %s ne obstaja.",
+ "Operation #%s does not exist" : "Opravilo #%s ne obstaja.",
+ "Operation %s does not exist" : "Opravilo %s ne obstaja.",
+ "Operation %s is invalid" : "Opravilo %s ni veljavno.",
+ "Check %s does not exist" : "Preverba %s ne obstaja.",
+ "Check %s is invalid" : "Preverba %s ni veljavna.",
+ "Check #%s does not exist" : "Preverba #%s ne obstaja.",
+ "Workflow" : "Delovni tok",
+ "Files workflow engine" : "Delovni tok datotek",
+ "Open documentation" : "Odpri dokumentacijo",
+ "Add rule group" : "Dodaj skupino pravil",
+ "Short rule description" : "Kratek opis pravila",
+ "Add rule" : "Dodaj pravilo",
+ "Reset" : "Razveljavi",
+ "Save" : "Shrani",
+ "Saving…" : "Poteka shranjevanje ...",
+ "Loading…" : "Poteka nalaganje ..."
+},
+"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);");
diff --git a/apps/workflowengine/l10n/sl.json b/apps/workflowengine/l10n/sl.json
new file mode 100644
index 00000000000..9b9755e20b9
--- /dev/null
+++ b/apps/workflowengine/l10n/sl.json
@@ -0,0 +1,73 @@
+{ "translations": {
+ "Group list is empty" : "Skupinski seznam je prazen",
+ "Unable to retrieve the group list" : "Skupinskega seznama ni mogoče pridobiti.",
+ "Saved" : "Shranjeno",
+ "Saving failed:" : "Shranjevanje je spodletelo:",
+ "File MIME type" : "Vrsta MIME datoteke",
+ "is" : "je",
+ "is not" : "ni",
+ "matches" : "se sklada z",
+ "does not match" : "se ne sklada z",
+ "Example: {placeholder}" : "Primer: {placeholder}",
+ "File size (upload)" : "Velikost datoteke (pošiljanje)",
+ "less" : "je manjša",
+ "less or equals" : "je manjša ali enaka",
+ "greater or equals" : "je večja ali enaka",
+ "greater" : "je večja",
+ "File system tag" : "Sistemska oznaka datoteke",
+ "is tagged with" : "je",
+ "is not tagged with" : "ni",
+ "Select tag…" : "Izbor oznake ...",
+ "Request remote address" : "Oddaljeni naslov",
+ "matches IPv4" : "se sklada z IPv4",
+ "does not match IPv4" : "ni skladen z IPv4",
+ "matches IPv6" : "se sklada z IPv6",
+ "does not match IPv6" : "ni skladen z IPv6",
+ "Request time" : "Čas dostopa",
+ "between" : "je dovoljen med",
+ "not between" : "ni dovoljen med",
+ "Start" : "Začetek",
+ "End" : "Konec",
+ "Select timezone…" : "Časovni pas ...",
+ "Request URL" : "Naslov URL za dostop",
+ "Predefined URLs" : "Določeni naslovi URL",
+ "Files WebDAV" : "Datoteke WebDAV",
+ "Request user agent" : "Uporabniški odjemalec",
+ "Sync clients" : "Odjemalci za usklajevanje",
+ "Android client" : "Odjemalec za Android",
+ "iOS client" : "Odjemalec za iOS",
+ "Desktop client" : "Odjemalec za namizne računalnike",
+ "Thunderbird & Outlook addons" : "Razširitve za Thunderbird in Outlook",
+ "User group membership" : "Članstvo v uporabniških skupinah",
+ "is member of" : "je v skupini",
+ "is not member of" : "ni v skupini",
+ "The given operator is invalid" : "Podan operator ni veljaven.",
+ "The given regular expression is invalid" : "Podan logični izraz ni veljaven.",
+ "The given file size is invalid" : "Podana velikost datoteke ni veljavna.",
+ "The given tag id is invalid" : "Podan ID oznake ni veljaven.",
+ "The given IP range is invalid" : "Podan obseg IP ni veljaven.",
+ "The given IP range is not valid for IPv4" : "Podan obseg IP ni veljaven za IPv4.",
+ "The given IP range is not valid for IPv6" : "Podan obseg IP ni veljaven za IPv6.",
+ "The given time span is invalid" : "Podan časovni obseg ni veljaven.",
+ "The given start time is invalid" : "Podan čas začetka ni veljaven.",
+ "The given end time is invalid" : "Podan čas zaključka ni veljaven.",
+ "The given group does not exist" : "Podana skupina ne obstaja.",
+ "Check %s is invalid or does not exist" : "Preverba %s ne obstaja.",
+ "Operation #%s does not exist" : "Opravilo #%s ne obstaja.",
+ "Operation %s does not exist" : "Opravilo %s ne obstaja.",
+ "Operation %s is invalid" : "Opravilo %s ni veljavno.",
+ "Check %s does not exist" : "Preverba %s ne obstaja.",
+ "Check %s is invalid" : "Preverba %s ni veljavna.",
+ "Check #%s does not exist" : "Preverba #%s ne obstaja.",
+ "Workflow" : "Delovni tok",
+ "Files workflow engine" : "Delovni tok datotek",
+ "Open documentation" : "Odpri dokumentacijo",
+ "Add rule group" : "Dodaj skupino pravil",
+ "Short rule description" : "Kratek opis pravila",
+ "Add rule" : "Dodaj pravilo",
+ "Reset" : "Razveljavi",
+ "Save" : "Shrani",
+ "Saving…" : "Poteka shranjevanje ...",
+ "Loading…" : "Poteka nalaganje ..."
+},"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"
+} \ No newline at end of file
diff --git a/apps/workflowengine/l10n/zh_CN.js b/apps/workflowengine/l10n/zh_CN.js
index 1cc81c40faa..35bfb47564f 100644
--- a/apps/workflowengine/l10n/zh_CN.js
+++ b/apps/workflowengine/l10n/zh_CN.js
@@ -39,6 +39,7 @@ OC.L10N.register(
"Android client" : "Android 客户端",
"iOS client" : "iOS 客户端",
"Desktop client" : "桌面客户端",
+ "Thunderbird & Outlook addons" : "Thunderbird & Outlook 插件",
"User group membership" : "用户组成员资格",
"is member of" : "是成员",
"is not member of" : "不是成员",
diff --git a/apps/workflowengine/l10n/zh_CN.json b/apps/workflowengine/l10n/zh_CN.json
index 55c6ca16773..7d442796593 100644
--- a/apps/workflowengine/l10n/zh_CN.json
+++ b/apps/workflowengine/l10n/zh_CN.json
@@ -37,6 +37,7 @@
"Android client" : "Android 客户端",
"iOS client" : "iOS 客户端",
"Desktop client" : "桌面客户端",
+ "Thunderbird & Outlook addons" : "Thunderbird & Outlook 插件",
"User group membership" : "用户组成员资格",
"is member of" : "是成员",
"is not member of" : "不是成员",
diff --git a/core/Command/TwoFactorAuth/Cleanup.php b/core/Command/TwoFactorAuth/Cleanup.php
new file mode 100644
index 00000000000..b9acc649784
--- /dev/null
+++ b/core/Command/TwoFactorAuth/Cleanup.php
@@ -0,0 +1,61 @@
+<?php
+
+declare(strict_types = 1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OC\Core\Command\TwoFactorAuth;
+
+use OCP\Authentication\TwoFactorAuth\IRegistry;
+use Symfony\Component\Console\Input\InputArgument;
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class Cleanup extends Base {
+
+ /** @var IRegistry */
+ private $registry;
+
+ public function __construct(IRegistry $registry) {
+ parent::__construct();
+
+ $this->registry = $registry;
+ }
+
+ protected function configure() {
+ parent::configure();
+
+ $this->setName('twofactorauth:cleanup');
+ $this->setDescription('Clean up the two-factor user-provider association of an uninstalled/removed provider');
+ $this->addArgument('provider-id', InputArgument::REQUIRED);
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output) {
+ $providerId = $input->getArgument('provider-id');
+
+ $this->registry->cleanUp($providerId);
+
+ $output->writeln("<info>All user-provider associations for provider <options=bold>$providerId</> have been removed.</info>");
+ }
+
+}
diff --git a/core/Command/TwoFactorAuth/Disable.php b/core/Command/TwoFactorAuth/Disable.php
index 0564c89017c..fc180e790b1 100644
--- a/core/Command/TwoFactorAuth/Disable.php
+++ b/core/Command/TwoFactorAuth/Disable.php
@@ -24,6 +24,7 @@
namespace OC\Core\Command\TwoFactorAuth;
use OC\Authentication\TwoFactorAuth\Manager;
+use OC\Authentication\TwoFactorAuth\ProviderManager;
use OCP\IUserManager;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
@@ -31,13 +32,13 @@ use Symfony\Component\Console\Output\OutputInterface;
class Disable extends Base {
- /** @var Manager */
+ /** @var ProviderManager */
private $manager;
/** @var IUserManager */
protected $userManager;
- public function __construct(Manager $manager, IUserManager $userManager) {
+ public function __construct(ProviderManager $manager, IUserManager $userManager) {
parent::__construct('twofactorauth:disable');
$this->manager = $manager;
$this->userManager = $userManager;
@@ -49,17 +50,24 @@ class Disable extends Base {
$this->setName('twofactorauth:disable');
$this->setDescription('Disable two-factor authentication for a user');
$this->addArgument('uid', InputArgument::REQUIRED);
+ $this->addArgument('provider_id', InputArgument::REQUIRED);
}
protected function execute(InputInterface $input, OutputInterface $output) {
$uid = $input->getArgument('uid');
+ $providerId = $input->getArgument('provider_id');
$user = $this->userManager->get($uid);
if (is_null($user)) {
$output->writeln("<error>Invalid UID</error>");
- return;
+ return 1;
+ }
+ if ($this->manager->tryDisableProviderFor($providerId, $user)) {
+ $output->writeln("Two-factor provider <options=bold>$providerId</> disabled for user <options=bold>$uid</>.");
+ return 0;
+ } else {
+ $output->writeln("<error>The provider does not support this operation.</error>");
+ return 2;
}
- $this->manager->disableTwoFactorAuthentication($user);
- $output->writeln("Two-factor authentication disabled for user $uid");
}
}
diff --git a/core/Command/TwoFactorAuth/Enable.php b/core/Command/TwoFactorAuth/Enable.php
index 98e8b178cdb..4a9c12e686d 100644
--- a/core/Command/TwoFactorAuth/Enable.php
+++ b/core/Command/TwoFactorAuth/Enable.php
@@ -23,7 +23,7 @@
namespace OC\Core\Command\TwoFactorAuth;
-use OC\Authentication\TwoFactorAuth\Manager;
+use OC\Authentication\TwoFactorAuth\ProviderManager;
use OCP\IUserManager;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
@@ -31,13 +31,13 @@ use Symfony\Component\Console\Output\OutputInterface;
class Enable extends Base {
- /** @var Manager */
+ /** @var ProviderManager */
private $manager;
/** @var IUserManager */
protected $userManager;
- public function __construct(Manager $manager, IUserManager $userManager) {
+ public function __construct(ProviderManager $manager, IUserManager $userManager) {
parent::__construct('twofactorauth:enable');
$this->manager = $manager;
$this->userManager = $userManager;
@@ -49,17 +49,24 @@ class Enable extends Base {
$this->setName('twofactorauth:enable');
$this->setDescription('Enable two-factor authentication for a user');
$this->addArgument('uid', InputArgument::REQUIRED);
+ $this->addArgument('provider_id', InputArgument::REQUIRED);
}
protected function execute(InputInterface $input, OutputInterface $output) {
$uid = $input->getArgument('uid');
+ $providerId = $input->getArgument('provider_id');
$user = $this->userManager->get($uid);
if (is_null($user)) {
$output->writeln("<error>Invalid UID</error>");
- return;
+ return 1;
+ }
+ if ($this->manager->tryEnableProviderFor($providerId, $user)) {
+ $output->writeln("Two-factor provider <options=bold>$providerId</> enabled for user <options=bold>$uid</>.");
+ return 0;
+ } else {
+ $output->writeln("<error>The provider does not support this operation.</error>");
+ return 2;
}
- $this->manager->enableTwoFactorAuthentication($user);
- $output->writeln("Two-factor authentication enabled for user $uid");
}
}
diff --git a/core/Command/TwoFactorAuth/State.php b/core/Command/TwoFactorAuth/State.php
index 73e17b4ceb7..66d2b4f3eec 100644
--- a/core/Command/TwoFactorAuth/State.php
+++ b/core/Command/TwoFactorAuth/State.php
@@ -1,6 +1,6 @@
<?php
-declare(strict_types = 1);
+declare(strict_types=1);
/**
* @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
@@ -57,7 +57,7 @@ class State extends Base {
$user = $this->userManager->get($uid);
if (is_null($user)) {
$output->writeln("<error>Invalid UID</error>");
- return;
+ return 1;
}
$providerStates = $this->registry->getProviderStates($user);
@@ -73,6 +73,8 @@ class State extends Base {
$output->writeln("");
$this->printProviders("Enabled providers", $enabled, $output);
$this->printProviders("Disabled providers", $disabled, $output);
+
+ return 0;
}
private function filterEnabledDisabledUnknownProviders(array $providerStates): array {
@@ -91,7 +93,7 @@ class State extends Base {
}
private function printProviders(string $title, array $providers,
- OutputInterface $output) {
+ OutputInterface $output) {
if (empty($providers)) {
// Ignore and don't print anything
return;
diff --git a/core/Controller/LostController.php b/core/Controller/LostController.php
index ab5a10b8035..8d1481dfc28 100644
--- a/core/Controller/LostController.php
+++ b/core/Controller/LostController.php
@@ -364,24 +364,27 @@ class LostController extends Controller {
* @throws \InvalidArgumentException
*/
protected function findUserByIdOrMail($input) {
+ $userNotFound = new \InvalidArgumentException(
+ $this->l10n->t('Couldn\'t send reset email. Please make sure your username is correct.')
+ );
+
$user = $this->userManager->get($input);
if ($user instanceof IUser) {
if (!$user->isEnabled()) {
- throw new \InvalidArgumentException($this->l10n->t('Couldn\'t send reset email. Please make sure your username is correct.'));
+ throw $userNotFound;
}
return $user;
}
- $users = $this->userManager->getByEmail($input);
- if (count($users) === 1) {
- $user = $users[0];
- if (!$user->isEnabled()) {
- throw new \InvalidArgumentException($this->l10n->t('Couldn\'t send reset email. Please make sure your username is correct.'));
- }
- return $user;
+ $users = \array_filter($this->userManager->getByEmail($input), function (IUser $user) {
+ return $user->isEnabled();
+ });
+
+ if (\count($users) === 1) {
+ return $users[0];
}
- throw new \InvalidArgumentException($this->l10n->t('Couldn\'t send reset email. Please make sure your username is correct.'));
+ throw $userNotFound;
}
}
diff --git a/core/css/apps.scss b/core/css/apps.scss
index 913e445f5bf..f294f8aa512 100644
--- a/core/css/apps.scss
+++ b/core/css/apps.scss
@@ -1066,7 +1066,7 @@ $popovericon-size: 16px;
/* CONTENT LIST ------------------------------------------------------------ */
.app-content-list {
- width: 300px;
+ max-width: 300px;
@include position('sticky');
top: $header-height;
border-right: 1px solid var(--color-border);
@@ -1077,7 +1077,7 @@ $popovericon-size: 16px;
max-height: calc(100vh - #{$header-height});
overflow-y: auto;
overflow-x: hidden;
- flex: 0 0 300px;
+ flex: 0 1 300px;
/* Default item */
.app-content-list-item {
diff --git a/core/css/mobile.scss b/core/css/mobile.scss
index 44660e44c33..e4a4f53367b 100644
--- a/core/css/mobile.scss
+++ b/core/css/mobile.scss
@@ -39,6 +39,8 @@
flex: 1 1 100%;
// make full height scroll since app-content-details is hidden
max-height: unset;
+ // ignore 300px default max width
+ max-width: 100%;
+ .app-content-details {
display: none;
}
diff --git a/core/img/mastodon.svg b/core/img/mastodon.svg
new file mode 100644
index 00000000000..02121eda038
--- /dev/null
+++ b/core/img/mastodon.svg
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="16" height="16" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><metadata><rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/><dc:title/></cc:Work></rdf:RDF></metadata><g><circle cx="8" cy="8" r="8" fill="#2b90d2"/><path d="m13.183 9.2819c-0.1566 0.80567-1.4026 1.6874-2.8336 1.8583-0.74623 0.08903-1.4809 0.17088-2.2644 0.13494-1.2813-0.05872-2.2923-0.30582-2.2923-0.30582 0 0.12473 0.0077 0.24349 0.02307 0.35456 0.16657 1.2645 1.2538 1.3402 2.2837 1.3755 1.0395 0.03557 1.9651-0.25629 1.9651-0.25629l0.0427 0.93975s-0.72709 0.39044-2.0223 0.46224c-0.71423 0.03926-1.6011-0.01798-2.634-0.29136-2.2402-0.59294-2.6255-2.9809-2.6844-5.4039-0.01797-0.7194-0.00687-1.3977-0.00687-1.9651 0-2.4776 1.6233-3.2038 1.6233-3.2038 0.81852-0.37591 2.223-0.53399 3.6832-0.54593h0.035867c1.4601 0.011937 2.8656 0.17002 3.6841 0.54593 0 0 1.6233 0.72623 1.6233 3.2038 0 0 0.02036 1.828-0.22639 3.0971" fill="#fff" stroke-width=".049227"/><path d="m11.494 6.377v3h-1.1885v-2.9118c0-0.6138-0.25826-0.92535-0.77484-0.92535-0.57116 0-0.85742 0.36957-0.85742 1.1004v1.5938h-1.1815v-1.5938c0-0.73078-0.28632-1.1004-0.85748-1.1004-0.51658 0-0.77484 0.31155-0.77484 0.92535v2.9118h-1.1885v-3c0-0.61313 0.15611-1.1004 0.46969-1.4608 0.32336-0.36047 0.74684-0.54525 1.2725-0.54525 0.6082 0 1.0688 0.23377 1.3733 0.70137l0.29604 0.49627 0.2961-0.49627c0.30447-0.4676 0.76505-0.70137 1.3733-0.70137 0.52563 0 0.9491 0.18479 1.2725 0.54525 0.31352 0.36047 0.46963 0.84769 0.46963 1.4608" fill="#2b90d9" stroke-width=".049227"/></g></svg>
diff --git a/core/js/files/client.js b/core/js/files/client.js
index 6ddd8b35558..9d3f5c4a3d6 100644
--- a/core/js/files/client.js
+++ b/core/js/files/client.js
@@ -271,7 +271,7 @@
* @return {Array.<FileInfo>} array of file info
*/
_parseFileInfo: function(response) {
- var path = response.href;
+ var path = decodeURIComponent(response.href);
if (path.substr(0, this._root.length) === this._root) {
path = path.substr(this._root.length);
}
diff --git a/core/js/setupchecks.js b/core/js/setupchecks.js
index 628606a9e5b..62f0fb10c10 100644
--- a/core/js/setupchecks.js
+++ b/core/js/setupchecks.js
@@ -183,10 +183,10 @@
type: OC.SetupChecks.MESSAGE_TYPE_INFO
});
}
- if(!data.isUrandomAvailable) {
+ if(!data.isRandomnessSecure) {
messages.push({
- msg: t('core', '/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target="_blank" rel="noreferrer noopener" href="{docLink}">documentation</a>.', {docLink: data.securityDocs}),
- type: OC.SetupChecks.MESSAGE_TYPE_WARNING
+ msg: t('core', 'No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target="_blank" rel="noreferrer noopener" href="{docLink}">documentation</a>.', {docLink: data.securityDocs}),
+ type: OC.SetupChecks.MESSAGE_TYPE_ERROR
});
}
if(data.isUsedTlsLibOutdated) {
diff --git a/core/js/sharedialogresharerinfoview.js b/core/js/sharedialogresharerinfoview.js
index 06e18fef3f2..b2d5a093990 100644
--- a/core/js/sharedialogresharerinfoview.js
+++ b/core/js/sharedialogresharerinfoview.js
@@ -100,16 +100,28 @@
{escape: false}
);
} else if (this.model.getReshareType() === OC.Share.SHARE_TYPE_ROOM) {
- sharedByText = t(
- 'core',
- 'Shared with you and the conversation {conversation} by {owner}',
- {
- conversation: this.model.getReshareWithDisplayName(),
- owner: ownerDisplayName
- },
- undefined,
- {escape: false}
- );
+ if (this.model.get('reshare').share_with_displayname) {
+ sharedByText = t(
+ 'core',
+ 'Shared with you and the conversation {conversation} by {owner}',
+ {
+ conversation: this.model.getReshareWithDisplayName(),
+ owner: ownerDisplayName
+ },
+ undefined,
+ {escape: false}
+ );
+ } else {
+ sharedByText = t(
+ 'core',
+ 'Shared with you in a conversation by {owner}',
+ {
+ owner: ownerDisplayName
+ },
+ undefined,
+ {escape: false}
+ );
+ }
} else {
sharedByText = t(
'core',
diff --git a/core/js/sharedialogview.js b/core/js/sharedialogview.js
index da4d887634a..f5b876c37be 100644
--- a/core/js/sharedialogview.js
+++ b/core/js/sharedialogview.js
@@ -326,7 +326,23 @@
var suggestions = exactMatches.concat(users).concat(groups).concat(remotes).concat(remoteGroups).concat(emails).concat(circles).concat(rooms).concat(lookup);
- deferred.resolve(suggestions, exactMatches);
+ var moreResultsAvailable =
+ (
+ oc_config['sharing.maxAutocompleteResults'] > 0
+ && Math.min(perPage, oc_config['sharing.maxAutocompleteResults'])
+ <= Math.max(
+ users.length + exactUsers.length,
+ groups.length + exactGroups.length,
+ remoteGroups.length + exactRemoteGroups.length,
+ remotes.length + exactRemotes.length,
+ emails.length + exactEmails.length,
+ circles.length + exactCircles.length,
+ rooms.length + exactRooms.length,
+ lookup.length
+ )
+ );
+
+ deferred.resolve(suggestions, exactMatches, moreResultsAvailable);
} else {
deferred.reject(result.ocs.meta.message);
}
@@ -380,12 +396,12 @@
$shareWithField.removeClass('error')
.tooltip('hide');
- var perPage = 200;
+ var perPage = parseInt(oc_config['sharing.maxAutocompleteResults'], 10) || 200;
this._getSuggestions(
search.term.trim(),
perPage,
view.model
- ).done(function(suggestions) {
+ ).done(function(suggestions, exactMatches, moreResultsAvailable) {
view._pendingOperationsCount--;
if (view._pendingOperationsCount === 0) {
$loading.addClass('hidden');
@@ -401,10 +417,7 @@
// show a notice that the list is truncated
// this is the case if one of the search results is at least as long as the max result config option
- if(oc_config['sharing.maxAutocompleteResults'] > 0 &&
- Math.min(perPage, oc_config['sharing.maxAutocompleteResults'])
- <= Math.max(users.length, groups.length, remotes.length, emails.length, lookup.length)) {
-
+ if(moreResultsAvailable) {
var message = t('core', 'This list is maybe truncated - please refine your search term to see more results.');
$('.ui-autocomplete').append('<li class="autocomplete-note">' + message + '</li>');
}
@@ -557,7 +570,7 @@
$shareWithField.focus();
};
- var perPage = 200;
+ var perPage = parseInt(oc_config['sharing.maxAutocompleteResults'], 10) || 200;
var onlyExactMatches = true;
this._getSuggestions(
$shareWithField.val(),
diff --git a/core/js/tests/specs/setupchecksSpec.js b/core/js/tests/specs/setupchecksSpec.js
index 4c0545b7b4f..41bed276b6f 100644
--- a/core/js/tests/specs/setupchecksSpec.js
+++ b/core/js/tests/specs/setupchecksSpec.js
@@ -155,7 +155,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
serverHasInternetConnection: false,
memcacheDocs: 'https://docs.nextcloud.com/server/go.php?to=admin-performance',
forwardedForHeadersWorking: true,
@@ -204,7 +204,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
serverHasInternetConnection: false,
memcacheDocs: 'https://docs.nextcloud.com/server/go.php?to=admin-performance',
forwardedForHeadersWorking: true,
@@ -254,7 +254,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
serverHasInternetConnection: false,
isMemcacheConfigured: true,
forwardedForHeadersWorking: true,
@@ -301,7 +301,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: false,
+ isRandomnessSecure: false,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
@@ -325,8 +325,8 @@ describe('OC.SetupChecks tests', function() {
async.done(function( data, s, x ){
expect(data).toEqual([{
- msg: '/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a href="https://docs.owncloud.org/myDocs.html" rel="noreferrer noopener">documentation</a>.',
- type: OC.SetupChecks.MESSAGE_TYPE_WARNING
+ msg: 'No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a href="https://docs.owncloud.org/myDocs.html" rel="noreferrer noopener">documentation</a>.',
+ type: OC.SetupChecks.MESSAGE_TYPE_ERROR
}]);
done();
});
@@ -347,7 +347,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
@@ -393,7 +393,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
@@ -441,7 +441,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
serverHasInternetConnection: true,
isMemcacheConfigured: true,
forwardedForHeadersWorking: false,
@@ -487,7 +487,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
serverHasInternetConnection: true,
isMemcacheConfigured: true,
forwardedForHeadersWorking: true,
@@ -533,7 +533,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
serverHasInternetConnection: true,
isMemcacheConfigured: true,
forwardedForHeadersWorking: true,
@@ -599,7 +599,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
@@ -646,7 +646,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
@@ -693,7 +693,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
@@ -740,7 +740,7 @@ describe('OC.SetupChecks tests', function() {
hasWorkingFileLocking: true,
hasValidTransactionIsolationLevel: true,
suggestedOverwriteCliURL: '',
- isUrandomAvailable: true,
+ isRandomnessSecure: true,
securityDocs: 'https://docs.owncloud.org/myDocs.html',
serverHasInternetConnection: true,
isMemcacheConfigured: true,
diff --git a/core/js/tests/specs/sharedialogviewSpec.js b/core/js/tests/specs/sharedialogviewSpec.js
index 20504c56b67..efe50c415c8 100644
--- a/core/js/tests/specs/sharedialogviewSpec.js
+++ b/core/js/tests/specs/sharedialogviewSpec.js
@@ -22,6 +22,7 @@
/* global oc_appconfig, sinon */
describe('OC.Share.ShareDialogView', function() {
var $container;
+ var oldConfig;
var oldAppConfig;
var autocompleteStub;
var avatarStub;
@@ -40,6 +41,9 @@ describe('OC.Share.ShareDialogView', function() {
// horrible parameters
$('#testArea').append('<input id="allowShareWithLink" type="hidden" value="yes">');
$container = $('#shareContainer');
+ oldConfig = window.oc_config;
+ window.oc_config = window.oc_config || {};
+ window.oc_config['sharing.maxAutocompleteResults'] = 0;
/* jshint camelcase:false */
oldAppConfig = _.extend({}, oc_appconfig.core);
oc_appconfig.core.enforcePasswordForPublicLink = false;
@@ -108,6 +112,7 @@ describe('OC.Share.ShareDialogView', function() {
});
afterEach(function() {
OC.currentUser = oldCurrentUser;
+ window.oc_config = oldConfig;
/* jshint camelcase:false */
oc_appconfig.core = oldAppConfig;
@@ -357,9 +362,10 @@ describe('OC.Share.ShareDialogView', function() {
);
expect(doneStub.calledOnce).toEqual(true);
- expect(doneStub.calledWithExactly([], [])).toEqual(true);
+ expect(doneStub.calledWithExactly([], [], false)).toEqual(true);
expect(failStub.called).toEqual(false);
});
+
it('single partial match', function() {
var doneStub = sinon.stub();
var failStub = sinon.stub();
@@ -407,11 +413,14 @@ describe('OC.Share.ShareDialogView', function() {
);
expect(doneStub.calledOnce).toEqual(true);
- expect(doneStub.calledWithExactly([{
- 'label': 'bobby',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'imbob'}
- }], [
- ])).toEqual(true);
+ expect(doneStub.calledWithExactly(
+ [{
+ 'label': 'bobby',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'imbob'}
+ }],
+ [],
+ false
+ )).toEqual(true);
expect(failStub.called).toEqual(false);
});
it('single exact match', function() {
@@ -461,13 +470,17 @@ describe('OC.Share.ShareDialogView', function() {
);
expect(doneStub.calledOnce).toEqual(true);
- expect(doneStub.calledWithExactly([{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }], [{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }])).toEqual(true);
+ expect(doneStub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ false
+ )).toEqual(true);
expect(failStub.called).toEqual(false);
});
it('mixed matches', function() {
@@ -548,28 +561,140 @@ describe('OC.Share.ShareDialogView', function() {
);
expect(doneStub.calledOnce).toEqual(true);
- expect(doneStub.calledWithExactly([{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }, {
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'group1'}
- }, {
- 'label': 'bobby',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'imbob'}
- }, {
- 'label': 'bob the second',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user2'}
- }, {
- 'label': 'bobfans',
- 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'fans'}
- }], [{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }, {
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'group1'}
- }])).toEqual(true);
+ expect(doneStub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }, {
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'group1'}
+ }, {
+ 'label': 'bobby',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'imbob'}
+ }, {
+ 'label': 'bob the second',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user2'}
+ }, {
+ 'label': 'bobfans',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'fans'}
+ }],
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }, {
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'group1'}
+ }],
+ false
+ )).toEqual(true);
+ expect(failStub.called).toEqual(false);
+ });
+
+ it('capped mixed matches', function() {
+ window.oc_config['sharing.maxAutocompleteResults'] = 3;
+ var doneStub = sinon.stub();
+ var failStub = sinon.stub();
+
+ dialog._getSuggestions('bob', 42, shareModel).done(doneStub).fail(failStub);
+
+ var jsonData = JSON.stringify({
+ 'ocs': {
+ 'meta': {
+ 'status': 'success',
+ 'statuscode': 100,
+ 'message': null
+ },
+ 'data': {
+ 'exact': {
+ 'users': [
+ {
+ 'label': 'bob',
+ 'value': {
+ 'shareType': OC.Share.SHARE_TYPE_USER,
+ 'shareWith': 'user1'
+ }
+ }
+ ],
+ 'groups': [
+ {
+ 'label': 'bob',
+ 'value': {
+ 'shareType': OC.Share.SHARE_TYPE_GROUP,
+ 'shareWith': 'group1'
+ }
+ }
+ ],
+ 'remotes': [],
+ 'remote_groups': [],
+ },
+ 'users': [
+ {
+ 'label': 'bobby',
+ 'value': {
+ 'shareType': OC.Share.SHARE_TYPE_USER,
+ 'shareWith': 'imbob'
+ }
+ },
+ {
+ 'label': 'bob the second',
+ 'value': {
+ 'shareType': OC.Share.SHARE_TYPE_USER,
+ 'shareWith': 'user2'
+ }
+ }
+ ],
+ 'groups': [
+ {
+ 'label': 'bobfans',
+ 'value': {
+ 'shareType': OC.Share.SHARE_TYPE_GROUP,
+ 'shareWith': 'fans'
+ }
+ }
+ ],
+ 'remotes': [],
+ 'remote_groups': [],
+ 'lookup': []
+ }
+ }
+ });
+
+ expect(doneStub.called).toEqual(false);
+ expect(failStub.called).toEqual(false);
+
+ fakeServer.requests[0].respond(
+ 200,
+ {'Content-Type': 'application/json'},
+ jsonData
+ );
+
+ expect(doneStub.calledOnce).toEqual(true);
+ expect(doneStub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }, {
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'group1'}
+ }, {
+ 'label': 'bobby',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'imbob'}
+ }, {
+ 'label': 'bob the second',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user2'}
+ }, {
+ 'label': 'bobfans',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'fans'}
+ }],
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }, {
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_GROUP, 'shareWith': 'group1'}
+ }],
+ true
+ )).toEqual(true);
expect(failStub.called).toEqual(false);
});
@@ -620,13 +745,16 @@ describe('OC.Share.ShareDialogView', function() {
);
expect(doneStub.calledOnce).toEqual(true);
- expect(doneStub.calledWithExactly([{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }], [{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }])).toEqual(true);
+ expect(doneStub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }], [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ false
+ )).toEqual(true);
expect(failStub.called).toEqual(false);
var done2Stub = sinon.stub();
@@ -638,13 +766,17 @@ describe('OC.Share.ShareDialogView', function() {
expect(failStub.called).toEqual(false);
expect(done2Stub.calledOnce).toEqual(true);
- expect(done2Stub.calledWithExactly([{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }], [{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }])).toEqual(true);
+ expect(done2Stub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ false
+ )).toEqual(true);
expect(fail2Stub.called).toEqual(false);
});
@@ -695,13 +827,17 @@ describe('OC.Share.ShareDialogView', function() {
);
expect(doneStub.calledOnce).toEqual(true);
- expect(doneStub.calledWithExactly([{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }], [{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }])).toEqual(true);
+ expect(doneStub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ false
+ )).toEqual(true);
expect(failStub.called).toEqual(false);
var done2Stub = sinon.stub();
@@ -741,13 +877,17 @@ describe('OC.Share.ShareDialogView', function() {
expect(fail2Stub.called).toEqual(false);
expect(done3Stub.calledOnce).toEqual(true);
- expect(done3Stub.calledWithExactly([{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }], [{
- 'label': 'bob',
- 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
- }])).toEqual(true);
+ expect(done3Stub.calledWithExactly(
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ [{
+ 'label': 'bob',
+ 'value': {'shareType': OC.Share.SHARE_TYPE_USER, 'shareWith': 'user1'}
+ }],
+ false
+ )).toEqual(true);
expect(fail3Stub.called).toEqual(false);
});
});
diff --git a/core/l10n/bg.js b/core/l10n/bg.js
index 7089dc4dc91..ab52528adde 100644
--- a/core/l10n/bg.js
+++ b/core/l10n/bg.js
@@ -7,16 +7,16 @@ OC.L10N.register(
"The selected file cannot be read." : "Избраният файл не може да бъде отворен.",
"Invalid file provided" : "Предоставен е невалиден файл",
"No image or file provided" : "Не бяха доставени картинка или файл",
- "Unknown filetype" : "Непознат тип файл",
+ "Unknown filetype" : "Неизвестен тип файл",
"Invalid image" : "Невалидно изображение",
"An error occurred. Please contact your admin." : "Възникна неизвестна грешка. Свържете с администратора.",
"No temporary profile picture available, try again" : "Не е налична временна профилна снимка, опитайте отново",
"No crop data provided" : "Липсват данни за изрязването",
- "No valid crop data provided" : "Липсват данни за изрязването",
+ "No valid crop data provided" : "Данни за изрязването са невалидни",
"Crop is not square" : "Областта не е квадратна",
- "Password reset is disabled" : "Възстановяването на парола е изключено",
- "Couldn't reset password because the token is invalid" : "Нулирането на паролата е невъзможно, защото връзката за удостоверение е невалидна",
- "Couldn't reset password because the token is expired" : "Нулирането на паролата е невъзможно, защото връзката за удостоверение е изтекла",
+ "Password reset is disabled" : "Възстановяването на пароли е забранено",
+ "Couldn't reset password because the token is invalid" : "Възстановяването на паролата е невъзможно, защото връзката за удостоверение е невалидна",
+ "Couldn't reset password because the token is expired" : "Възстановяването на паролата е невъзможно, защото връзката за удостоверение е с изтекла валидност",
"Could not send reset email because there is no email address for this username. Please contact your administrator." : "Имейлът за възстановяване на паролата не може да бъде изпратен защо потребителят няма имейл адрес. Свържете се с администратора.",
"%s password reset" : "Паролата на %s е променена",
"Password reset" : "Възстановяване на парола",
@@ -30,15 +30,17 @@ OC.L10N.register(
"Repair warning: " : "Предупреждение при поправка:",
"Repair error: " : "Грешка при поправка:",
"Please use the command line updater because automatic updating is disabled in the config.php." : "Моля използвайте съветникът за обновяване в команден ред, защото автоматичният е забранен в config.php.",
- "[%d / %d]: Checking table %s" : "[%d / %d]: Проверка на таблица %s",
+ "[%d / %d]: Checking table %s" : "[%d / %d]: Проверяване на таблица %s",
"Turned on maintenance mode" : "Режимът за поддръжка е включен",
"Turned off maintenance mode" : "Режимът за поддръжка е изключен",
"Maintenance mode is kept active" : "Режим на поддръжка се поддържа активен",
- "Updating database schema" : "Актуализиране на схемата на базата данни",
- "Updated database" : "Базата данни е обоновена",
+ "Updating database schema" : "Актуализиране схемата на базата данни",
+ "Updated database" : "Базата данни е актуализирана",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "Проверка дали схемата на базата данни може да се актуализира (възможно е да отнеме повече време в зависимост от големината на базата данни)",
"Checked database schema update" : "Обновяването на схемата на базата данни е проверено",
"Checking updates of apps" : "Проверка на актуализациите за добавките",
+ "Checking for update of app \"%s\" in appstore" : "Проверяване за актуализация на \"%s\"",
+ "Update app \"%s\" from appstore" : "Актуализиране на \"%s\"",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Проверка дали схемата на базата данни %s може да бъде актуализирана (това може да отнеме повече време в зависимост от големината на базата данни)",
"Checked database schema update for apps" : "Обновяването на схемата на базата данни за приложения е проверено",
"Updated \"%s\" to %s" : "Обновен \"%s\" до %s",
@@ -47,27 +49,28 @@ OC.L10N.register(
"Starting code integrity check" : "Стартиране на проверка за цялостта на кода",
"Finished code integrity check" : "Приключена проверка за цялостта на кода",
"%s (incompatible)" : "%s (несъвместим)",
- "Following apps have been disabled: %s" : "Следната добавка беше изключена: %s",
- "Already up to date" : "Вече е актуална",
- "Search contacts …" : "Търсене на контакти ...",
+ "Following apps have been disabled: %s" : "Следните приложения са изключени: %s",
+ "Already up to date" : "Актуално",
+ "Search contacts …" : "Търсене в контактите ...",
"No contacts found" : "Няма намерени контакти",
"Show all contacts …" : "Покажи всички контакти ...",
- "Loading your contacts …" : "Зареждане на вашите контакти ...",
- "<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Има проблем с проверката за цялостта на кода. Повече информация…</a>",
+ "Could not load your contacts" : "Контактите не могат да бъдат заредени",
+ "Loading your contacts …" : "Зареждане на контактите ...",
+ "<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Проблем с инсталацията. Повече информация…</a>",
"No action available" : "Няма налични действия",
"Settings" : "Настройки",
- "Connection to server lost" : "Връзката със сървъра е загубена",
- "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Проблем при зареждане на страницата, презареждане след %n секунда","Проблем при зареждане на страницата, презареждане след %n секунди"],
+ "Connection to server lost" : "Няма връзка със сървъра",
+ "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Проблем при зареждането на страницата, презареждане след %n секунда","Проблем при зареждането на страницата, презареждане след %n секунди"],
"Saving..." : "Запазване...",
"Dismiss" : "Отхвърляне",
"Authentication required" : "Изисква удостоверяване",
- "This action requires you to confirm your password" : "Това действие изисква да потвърдите паролата си",
+ "This action requires you to confirm your password" : "Необходимо е да потвърдите паролата си",
"Confirm" : "Потвърди",
"Password" : "Парола",
"Failed to authenticate, try again" : "Грешка при удостоверяване, опитайте пак",
"seconds ago" : "преди секунди",
"Logging in …" : "Вписване ...",
- "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Връзката за възстановяване на паролата беше изпратена до вашия имейл. Ако не я получите в разумен период от време, проверете спам и junk папките.<br>Ако не я откривате и там, се свържете с местния администратор.",
+ "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Връзката за възстановяване на паролата беше изпратена до вашия имейл. Ако не я получите в разумен период от време, проверете спам и junk папките.<br>Ако не я откривате и там, се свържете с администратора.",
"I know what I'm doing" : "Знам какво правя",
"Password can not be changed. Please contact your administrator." : "Паролата не може да бъде промена. Моля, свържете се с администратора.",
"Reset password" : "Възстановяване на паролата",
@@ -75,12 +78,13 @@ OC.L10N.register(
"No" : "Не",
"Yes" : "Да",
"No files in here" : "Тук няма файлове",
- "Choose" : "Избиране",
- "Copy" : "Копиране",
- "Move" : "Преместване",
- "Error loading file picker template: {error}" : "Грешка при зареждането на шаблон за избор на файл: {error}",
- "OK" : "ОК",
- "Error loading message template: {error}" : "Грешка при зареждането на шаблон за съобщения: {error}",
+ "No more subfolders in here" : "Тук няма подпапки",
+ "Choose" : "Избор",
+ "Copy" : "Копирай",
+ "Move" : "Премести",
+ "Error loading file picker template: {error}" : "Грешка при зареждането на шаблона за избор на файл: {error}",
+ "OK" : "Добре",
+ "Error loading message template: {error}" : "Грешка при зареждането на шаблона за съобщения: {error}",
"read-only" : "Само за четене",
"_{count} file conflict_::_{count} file conflicts_" : ["{count} файлов конфликт","{count} файлови кофликта"],
"One file conflict" : "Един файлов конфликт",
@@ -92,76 +96,87 @@ OC.L10N.register(
"Continue" : "Продължаване",
"(all selected)" : "(всички избрани)",
"({count} selected)" : "({count} избрани)",
- "Error loading file exists template" : "Грешка при зареждането на шаблон за вече съществуващ файл",
+ "Error loading file exists template" : "Грешка при зареждането на шаблона за вече съществуващ файл",
"Pending" : "Чакащо",
"Copy to {folder}" : "Копирай в {folder}",
"Move to {folder}" : "Премести в {folder}",
- "Very weak password" : "Много слаба парола",
- "Weak password" : "Слаба парола",
+ "Very weak password" : "Много проста парола",
+ "Weak password" : "Проста парола",
"So-so password" : "Не особено добра парола",
"Good password" : "Добра парола",
- "Strong password" : "Сигурна парола",
- "Error occurred while checking server setup" : "Възникна грешка при проверката на настройките на сървъра.",
+ "Strong password" : "Сложна парола",
+ "Error occurred while checking server setup" : "Възникна грешка при проверката на настройките на сървъра",
"Shared" : "Споделено",
"Shared with" : "Споделено с",
"Shared by" : "Споделено от",
- "Choose a password for the public link" : "Изберете парола за общодостъпната връзка",
- "Copied!" : "Копирано!",
+ "Choose a password for the public link" : "Парола за публичната връзка",
+ "Copied!" : "Копирана!",
"Not supported!" : "Не се поддържа!",
"Press ⌘-C to copy." : "За копиране натиснете ⌘-C.",
"Press Ctrl-C to copy." : "За копиране натиснете Ctrl-C.",
- "Resharing is not allowed" : "Повторно споделяне не е разрешено.",
+ "Resharing is not allowed" : "Повторното споделяне е забранено",
"Share to {name}" : "Сподели с {name}",
+ "Copy URL" : "Копирай URL адреса",
"Link" : "Връзка",
- "Password protect" : "Защитено с парола",
- "Allow editing" : "Позволяване на редактиране",
- "Email link to person" : "Имейл връзка към човек",
- "Send" : "Изпращане",
- "Allow upload and editing" : "Позволи обновяване и редактиране",
+ "Password protect" : "Защита с парола",
+ "Allow editing" : "Възможност за редактиране",
+ "Email link to person" : "Изпрати чрез имейл връзката",
+ "Send" : "Изпрати",
+ "Allow upload and editing" : "За качване и редактиране",
"Read only" : "Само за четене",
- "File drop (upload only)" : "Пускане на файл (качване само)",
- "Set expiration date" : "Задаване на дата на изтичане",
- "Expiration" : "Изтичане",
+ "File drop (upload only)" : "Само за качване",
+ "Set expiration date" : "Срок на валидност",
+ "Expiration" : "Валидност",
"Expiration date" : "Дата на изтичане",
+ "Note to recipient" : "Бележка за получателя",
"Share link" : "Връзка за споделяне",
+ "Enable" : "Включена",
"Shared with you and the group {group} by {owner}" : "Споделено от {owner} с вас и групата {group}",
+ "Shared with you in a conversation by {owner}" : "Споделено с вас в разговор от {owner}",
"Shared with you by {owner}" : "Споделено с вас от {owner}",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} споделен с връзка",
"group" : "група",
"remote" : "отдалечен",
+ "remote group" : "отдалечена група",
"email" : "имейл",
+ "conversation" : "разговор",
"shared by {sharer}" : "споделено от {sharer}",
- "Unshare" : "Прекратяване на споделяне",
- "Can reshare" : "Може да споделя на други",
- "Can edit" : "Може да променя",
+ "Unshare" : "Прекрати споделянето",
+ "Can reshare" : "Може да споделя повторно",
+ "Can edit" : "Може да редактира",
"Can create" : "Може да създава",
"Can change" : "Може да променя",
"Can delete" : "Може да изтрива",
"Access control" : "Контрол на достъпа",
- "Could not unshare" : "Споделянето не е прекратено",
+ "Could not unshare" : "Споделянето не може да бъде прекратено",
"Error while sharing" : "Грешка при споделяне",
"Share details could not be loaded for this item." : "Данните за споделяне не могат да бъдат заредени",
"No users or groups found for {search}" : "Няма потребители или групи за {search}",
"No users found for {search}" : "Няма потребители за {search}",
- "An error occurred. Please try again" : "Възникна грешка. Моля, опитайте отново.",
+ "An error occurred. Please try again" : "Възникна грешка. Моля, опитайте отново",
"{sharee} (group)" : "{sharee} (група)",
"{sharee} (remote)" : "{sharee} (отдалечен)",
- "{sharee} (email)" : "{sharee} (email)",
+ "{sharee} (remote group)" : "{sharee} (отдалечена група)",
+ "{sharee} (email)" : "{sharee} (имейл)",
+ "{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (разговор)",
"Share" : "Споделяне",
+ "Name or email address..." : "Име или имейл адрес...",
+ "Name..." : "Име...",
"Error" : "Грешка",
- "Error removing share" : "Грешка при махане на споделяне",
- "Non-existing tag #{tag}" : "Не-съществуващ етикет #{tag}",
+ "Error removing share" : "Грешка при изриване на споделяне",
+ "Non-existing tag #{tag}" : "Несъществуващ етикет #{tag}",
"restricted" : "ограничен",
"invisible" : "невидим",
"({scope})" : "({scope})",
- "Delete" : "Изтриване",
- "Rename" : "Преименуване",
- "Collaborative tags" : "Съвместни тагове",
+ "Delete" : "Изтрий",
+ "Rename" : "Преименувай",
+ "Collaborative tags" : "Съвместни етикети",
"No tags found" : "Няма открити етикети",
"unknown text" : "непознат текст",
"Hello world!" : "Здравей Свят!",
"sunny" : "слънчево",
- "Hello {name}, the weather is {weather}" : "Здравей {name}, времето е {weather}",
+ "Hello {name}, the weather is {weather}" : "Здравейте {name}, времето е {weather}",
"Hello {name}" : "Здравейте, {name}",
"new" : "нов",
"_download %n file_::_download %n files_" : ["изтегли %n файл","изтегли %n файла"],
@@ -183,19 +198,22 @@ OC.L10N.register(
"File not found" : "Файлът не е открит",
"The specified document has not been found on the server." : "Избраният документ не е намерен на сървъра.",
"You can click here to return to %s." : "Можете да натиснете тук, за да се върнете на %s.",
- "Internal Server Error" : "Вътрешна системна грешка",
- "More details can be found in the server log." : "Повече детайли могат да бъдат намерени в сървърния журнал.",
- "Technical details" : "Технически детайли",
+ "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." : "Подробности можете да намерите журнала на сървъра.",
+ "Technical details" : "Технически данни",
"Remote Address: %s" : "Отдалечен адрес: %s",
- "Request ID: %s" : "ID на заявка: %s",
+ "Request ID: %s" : "ID на заявката: %s",
"Type: %s" : "Тип: %s",
"Code: %s" : "Код: %s",
"Message: %s" : "Съобщение: %s",
"File: %s" : "Файл: %s",
- "Line: %s" : "Линия: %s",
+ "Line: %s" : "Ред: %s",
"Trace" : "Проследяване на грешките",
"Security warning" : "Предупреждение за сигурност",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Вашата директория за данни и файлове Ви вероятно са достъпни от интернет, поради това, че файлът \".htaccess\" не функционира.",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Директория с данни и файлове ви са вероятно са достъпни от Интернет, защото файлът \".htaccess\" не функционира.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Информация, как да настроите сървъра коректно, ще намерите в <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">документацията</a>.",
"Create an <strong>admin account</strong>" : "Създаване на <strong>администраторски профил</strong>.",
"Username" : "Потребител",
"Storage & database" : "Хранилища и бази данни",
@@ -203,38 +221,41 @@ OC.L10N.register(
"Configure the database" : "Конфигуриране на базата данни",
"Only %s is available." : "Само %s е наличен.",
"Install and activate additional PHP modules to choose other database types." : "Инсталирайте и активирайте допълнителни PHP модули, за да изберете други видове бази данни.",
- "For more details check out the documentation." : "За повече детайли проверете документацията.",
+ "For more details check out the documentation." : "За повече информация проверете документацията.",
"Database user" : "Потребител за базата данни",
"Database password" : "Парола за базата данни",
"Database name" : "Име на базата данни",
"Database tablespace" : "Tablespace на базата данни",
- "Database host" : "Хост за базата данни",
- "Performance warning" : "Предупреждение за производителност",
- "SQLite will be used as database." : "Ще бъде използвана SQLite за база данни.",
- "For larger installations we recommend to choose a different database backend." : "За по- големи инсталации Ви препоръчваме да изберете друг сървър за бази данни.",
- "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Използването на SQLite не се препоръчва, особено ако ползвате клиента за настолен компютър.",
- "Finish setup" : "Завършване на настройките",
+ "Database host" : "Хост",
+ "Performance warning" : "Предупреждение за производителността",
+ "SQLite will be used as database." : "Ще бъде използвана база данни SQLite.",
+ "For larger installations we recommend to choose a different database backend." : "За големи инсталации е препоръчително ползването на друг тип база данни.",
+ "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Използването на SQLite не се препоръчва, особено ако ползвате клиента за настолни компютри.",
+ "Finish setup" : "Завършване на инсталацията",
"Finishing …" : "Завършване...",
"Need help?" : "Нуждаете се от помощ?",
"See the documentation" : "Прегледайте документацията",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "За да функционира приложението изисква JavaScript. Моля, {linkstart}включете JavaScript{linkend} и презаредете страницата.",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Приложението изисква JavaScript. Моля, {linkstart}включете JavaScript{linkend} и презаредете страницата.",
"More apps" : "Още приложения",
"Search" : "Търсене",
+ "Contacts" : "Контакти",
"Confirm your password" : "Потвърдете паролата си",
"Server side authentication failed!" : "Удостоверяването от страна на сървъра е неуспешно!",
"Please contact your administrator." : "Моля, свържете се с администратора.",
- "An internal error occurred." : "Възникна вътрешна грешка.",
+ "An internal error occurred." : "Възникна вътрешно сървърна грешка.",
"Please try again or contact your administrator." : "Опитайте отново или се свържете с администраотра.",
"Username or email" : "Потребител или имейл",
"Log in" : "Вписване",
"Wrong password." : "Грешна парола",
+ "User disabled" : "Потребителят е деактивиран",
"Forgot password?" : "Забравена парола?",
"Redirecting …" : "Пренасочване ...",
"New password" : "Нова парола",
"New Password" : "Нова парола",
+ "The password is wrong. Try again." : "Паролата е грешна. Опитайте отново.",
"Two-factor authentication" : "Двуфакторно удостоверяване",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "Повишената сигурност е активирана за профила ви. Моля удостоверете използвайки втори фактор.",
- "Cancel log in" : "Откажи вписване",
+ "Cancel log in" : "Откажи вписването",
"Use backup code" : "Използвай код за възстановяване",
"Error while validating your second factor" : "Грешка при валидиране на втория ви фактор",
"Access through untrusted domain" : "Достъп чрез ненадежден домейн",
@@ -247,18 +268,27 @@ OC.L10N.register(
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Моля, уверете се, че сте направили копия на базата данни, папките с настройки и данните, преди да продължите.",
"Start update" : "Начало на обновяването",
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "За да избегнеш таймаутове при по-големи инсталации, можеш да изпълниш следните команди в инсталанционната директория:",
- "Detailed logs" : "Подробни логове",
+ "Detailed logs" : "Подробни журнали",
"Update needed" : "Нужно е обновяване",
- "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "За помощ, вижте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацията</a>.",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "За помощ, прегледайте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацията</a>.",
"Upgrade via web on my own risk" : "Актуализиране чрез интернет на собствен риск",
"This %s instance is currently in maintenance mode, which may take a while." : "В момента този %s се обновява, а това може да отнеме време.",
"This page will refresh itself when the %s instance is available again." : "Страницата ще се зареди автоматично, когато %s е отново на линия.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Свържете се със системния администратор ако това съобщение се задържи твърде дълго или се е появило неочаквано.",
- "Thank you for your patience." : "Благодарим за търпението.",
- "Error setting expiration date" : "Грешка при настройване на датата за изтичане",
+ "Thank you for your patience." : "Благодарим ви за търпението.",
+ "There was an error loading your contacts" : "Възникна грешка при зареждането на контактите.",
+ "Shared with {recipients}" : "Споделено с {recipients}",
+ "Error setting expiration date" : "Грешка при задаване на срок на валидност",
"The public link will expire no later than {days} days after it is created" : "Общодостъпната връзка ще изтече не по-късно от {days} дни след създаването ѝ.",
+ "The server encountered an internal error and was unable to complete your request." : "Поради вътрешно сървърна грешка, сървърът не можа да изпълни заявката ви.",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "Ако грешката се повтори, моля изпратете техническите данни на администратора.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentation</a>." : "Информация, как да настроите сървъра коректно, ще намерите в <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">документацията</a>.",
+ "This action requires you to confirm your password:" : "Необходимо е да потвърдите паролата си:",
+ "Wrong password. Reset it?" : "Грешна парола. Възстановяване?",
"Stay logged in" : "Остани вписан",
- "Alternative Logins" : "Алтернативни методи на вписване",
- "Add \"%s\" as trusted domain" : "Добави \"%s\" като сигурен домейн"
+ "Alternative Logins" : "Алтернативни методи за вписване",
+ "You are accessing the server from an untrusted domain." : "Постъпвате сървъра от домейн, който не е маркиран като сигурен.",
+ "Add \"%s\" as trusted domain" : "Добави \"%s\" към списъка със сигурни домейни",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "За помощ, прегледайте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацията</a>."
},
"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/bg.json b/core/l10n/bg.json
index 408e040eb7a..af07feeab14 100644
--- a/core/l10n/bg.json
+++ b/core/l10n/bg.json
@@ -5,16 +5,16 @@
"The selected file cannot be read." : "Избраният файл не може да бъде отворен.",
"Invalid file provided" : "Предоставен е невалиден файл",
"No image or file provided" : "Не бяха доставени картинка или файл",
- "Unknown filetype" : "Непознат тип файл",
+ "Unknown filetype" : "Неизвестен тип файл",
"Invalid image" : "Невалидно изображение",
"An error occurred. Please contact your admin." : "Възникна неизвестна грешка. Свържете с администратора.",
"No temporary profile picture available, try again" : "Не е налична временна профилна снимка, опитайте отново",
"No crop data provided" : "Липсват данни за изрязването",
- "No valid crop data provided" : "Липсват данни за изрязването",
+ "No valid crop data provided" : "Данни за изрязването са невалидни",
"Crop is not square" : "Областта не е квадратна",
- "Password reset is disabled" : "Възстановяването на парола е изключено",
- "Couldn't reset password because the token is invalid" : "Нулирането на паролата е невъзможно, защото връзката за удостоверение е невалидна",
- "Couldn't reset password because the token is expired" : "Нулирането на паролата е невъзможно, защото връзката за удостоверение е изтекла",
+ "Password reset is disabled" : "Възстановяването на пароли е забранено",
+ "Couldn't reset password because the token is invalid" : "Възстановяването на паролата е невъзможно, защото връзката за удостоверение е невалидна",
+ "Couldn't reset password because the token is expired" : "Възстановяването на паролата е невъзможно, защото връзката за удостоверение е с изтекла валидност",
"Could not send reset email because there is no email address for this username. Please contact your administrator." : "Имейлът за възстановяване на паролата не може да бъде изпратен защо потребителят няма имейл адрес. Свържете се с администратора.",
"%s password reset" : "Паролата на %s е променена",
"Password reset" : "Възстановяване на парола",
@@ -28,15 +28,17 @@
"Repair warning: " : "Предупреждение при поправка:",
"Repair error: " : "Грешка при поправка:",
"Please use the command line updater because automatic updating is disabled in the config.php." : "Моля използвайте съветникът за обновяване в команден ред, защото автоматичният е забранен в config.php.",
- "[%d / %d]: Checking table %s" : "[%d / %d]: Проверка на таблица %s",
+ "[%d / %d]: Checking table %s" : "[%d / %d]: Проверяване на таблица %s",
"Turned on maintenance mode" : "Режимът за поддръжка е включен",
"Turned off maintenance mode" : "Режимът за поддръжка е изключен",
"Maintenance mode is kept active" : "Режим на поддръжка се поддържа активен",
- "Updating database schema" : "Актуализиране на схемата на базата данни",
- "Updated database" : "Базата данни е обоновена",
+ "Updating database schema" : "Актуализиране схемата на базата данни",
+ "Updated database" : "Базата данни е актуализирана",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "Проверка дали схемата на базата данни може да се актуализира (възможно е да отнеме повече време в зависимост от големината на базата данни)",
"Checked database schema update" : "Обновяването на схемата на базата данни е проверено",
"Checking updates of apps" : "Проверка на актуализациите за добавките",
+ "Checking for update of app \"%s\" in appstore" : "Проверяване за актуализация на \"%s\"",
+ "Update app \"%s\" from appstore" : "Актуализиране на \"%s\"",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Проверка дали схемата на базата данни %s може да бъде актуализирана (това може да отнеме повече време в зависимост от големината на базата данни)",
"Checked database schema update for apps" : "Обновяването на схемата на базата данни за приложения е проверено",
"Updated \"%s\" to %s" : "Обновен \"%s\" до %s",
@@ -45,27 +47,28 @@
"Starting code integrity check" : "Стартиране на проверка за цялостта на кода",
"Finished code integrity check" : "Приключена проверка за цялостта на кода",
"%s (incompatible)" : "%s (несъвместим)",
- "Following apps have been disabled: %s" : "Следната добавка беше изключена: %s",
- "Already up to date" : "Вече е актуална",
- "Search contacts …" : "Търсене на контакти ...",
+ "Following apps have been disabled: %s" : "Следните приложения са изключени: %s",
+ "Already up to date" : "Актуално",
+ "Search contacts …" : "Търсене в контактите ...",
"No contacts found" : "Няма намерени контакти",
"Show all contacts …" : "Покажи всички контакти ...",
- "Loading your contacts …" : "Зареждане на вашите контакти ...",
- "<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Има проблем с проверката за цялостта на кода. Повече информация…</a>",
+ "Could not load your contacts" : "Контактите не могат да бъдат заредени",
+ "Loading your contacts …" : "Зареждане на контактите ...",
+ "<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Проблем с инсталацията. Повече информация…</a>",
"No action available" : "Няма налични действия",
"Settings" : "Настройки",
- "Connection to server lost" : "Връзката със сървъра е загубена",
- "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Проблем при зареждане на страницата, презареждане след %n секунда","Проблем при зареждане на страницата, презареждане след %n секунди"],
+ "Connection to server lost" : "Няма връзка със сървъра",
+ "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Проблем при зареждането на страницата, презареждане след %n секунда","Проблем при зареждането на страницата, презареждане след %n секунди"],
"Saving..." : "Запазване...",
"Dismiss" : "Отхвърляне",
"Authentication required" : "Изисква удостоверяване",
- "This action requires you to confirm your password" : "Това действие изисква да потвърдите паролата си",
+ "This action requires you to confirm your password" : "Необходимо е да потвърдите паролата си",
"Confirm" : "Потвърди",
"Password" : "Парола",
"Failed to authenticate, try again" : "Грешка при удостоверяване, опитайте пак",
"seconds ago" : "преди секунди",
"Logging in …" : "Вписване ...",
- "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Връзката за възстановяване на паролата беше изпратена до вашия имейл. Ако не я получите в разумен период от време, проверете спам и junk папките.<br>Ако не я откривате и там, се свържете с местния администратор.",
+ "The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Връзката за възстановяване на паролата беше изпратена до вашия имейл. Ако не я получите в разумен период от време, проверете спам и junk папките.<br>Ако не я откривате и там, се свържете с администратора.",
"I know what I'm doing" : "Знам какво правя",
"Password can not be changed. Please contact your administrator." : "Паролата не може да бъде промена. Моля, свържете се с администратора.",
"Reset password" : "Възстановяване на паролата",
@@ -73,12 +76,13 @@
"No" : "Не",
"Yes" : "Да",
"No files in here" : "Тук няма файлове",
- "Choose" : "Избиране",
- "Copy" : "Копиране",
- "Move" : "Преместване",
- "Error loading file picker template: {error}" : "Грешка при зареждането на шаблон за избор на файл: {error}",
- "OK" : "ОК",
- "Error loading message template: {error}" : "Грешка при зареждането на шаблон за съобщения: {error}",
+ "No more subfolders in here" : "Тук няма подпапки",
+ "Choose" : "Избор",
+ "Copy" : "Копирай",
+ "Move" : "Премести",
+ "Error loading file picker template: {error}" : "Грешка при зареждането на шаблона за избор на файл: {error}",
+ "OK" : "Добре",
+ "Error loading message template: {error}" : "Грешка при зареждането на шаблона за съобщения: {error}",
"read-only" : "Само за четене",
"_{count} file conflict_::_{count} file conflicts_" : ["{count} файлов конфликт","{count} файлови кофликта"],
"One file conflict" : "Един файлов конфликт",
@@ -90,76 +94,87 @@
"Continue" : "Продължаване",
"(all selected)" : "(всички избрани)",
"({count} selected)" : "({count} избрани)",
- "Error loading file exists template" : "Грешка при зареждането на шаблон за вече съществуващ файл",
+ "Error loading file exists template" : "Грешка при зареждането на шаблона за вече съществуващ файл",
"Pending" : "Чакащо",
"Copy to {folder}" : "Копирай в {folder}",
"Move to {folder}" : "Премести в {folder}",
- "Very weak password" : "Много слаба парола",
- "Weak password" : "Слаба парола",
+ "Very weak password" : "Много проста парола",
+ "Weak password" : "Проста парола",
"So-so password" : "Не особено добра парола",
"Good password" : "Добра парола",
- "Strong password" : "Сигурна парола",
- "Error occurred while checking server setup" : "Възникна грешка при проверката на настройките на сървъра.",
+ "Strong password" : "Сложна парола",
+ "Error occurred while checking server setup" : "Възникна грешка при проверката на настройките на сървъра",
"Shared" : "Споделено",
"Shared with" : "Споделено с",
"Shared by" : "Споделено от",
- "Choose a password for the public link" : "Изберете парола за общодостъпната връзка",
- "Copied!" : "Копирано!",
+ "Choose a password for the public link" : "Парола за публичната връзка",
+ "Copied!" : "Копирана!",
"Not supported!" : "Не се поддържа!",
"Press ⌘-C to copy." : "За копиране натиснете ⌘-C.",
"Press Ctrl-C to copy." : "За копиране натиснете Ctrl-C.",
- "Resharing is not allowed" : "Повторно споделяне не е разрешено.",
+ "Resharing is not allowed" : "Повторното споделяне е забранено",
"Share to {name}" : "Сподели с {name}",
+ "Copy URL" : "Копирай URL адреса",
"Link" : "Връзка",
- "Password protect" : "Защитено с парола",
- "Allow editing" : "Позволяване на редактиране",
- "Email link to person" : "Имейл връзка към човек",
- "Send" : "Изпращане",
- "Allow upload and editing" : "Позволи обновяване и редактиране",
+ "Password protect" : "Защита с парола",
+ "Allow editing" : "Възможност за редактиране",
+ "Email link to person" : "Изпрати чрез имейл връзката",
+ "Send" : "Изпрати",
+ "Allow upload and editing" : "За качване и редактиране",
"Read only" : "Само за четене",
- "File drop (upload only)" : "Пускане на файл (качване само)",
- "Set expiration date" : "Задаване на дата на изтичане",
- "Expiration" : "Изтичане",
+ "File drop (upload only)" : "Само за качване",
+ "Set expiration date" : "Срок на валидност",
+ "Expiration" : "Валидност",
"Expiration date" : "Дата на изтичане",
+ "Note to recipient" : "Бележка за получателя",
"Share link" : "Връзка за споделяне",
+ "Enable" : "Включена",
"Shared with you and the group {group} by {owner}" : "Споделено от {owner} с вас и групата {group}",
+ "Shared with you in a conversation by {owner}" : "Споделено с вас в разговор от {owner}",
"Shared with you by {owner}" : "Споделено с вас от {owner}",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} споделен с връзка",
"group" : "група",
"remote" : "отдалечен",
+ "remote group" : "отдалечена група",
"email" : "имейл",
+ "conversation" : "разговор",
"shared by {sharer}" : "споделено от {sharer}",
- "Unshare" : "Прекратяване на споделяне",
- "Can reshare" : "Може да споделя на други",
- "Can edit" : "Може да променя",
+ "Unshare" : "Прекрати споделянето",
+ "Can reshare" : "Може да споделя повторно",
+ "Can edit" : "Може да редактира",
"Can create" : "Може да създава",
"Can change" : "Може да променя",
"Can delete" : "Може да изтрива",
"Access control" : "Контрол на достъпа",
- "Could not unshare" : "Споделянето не е прекратено",
+ "Could not unshare" : "Споделянето не може да бъде прекратено",
"Error while sharing" : "Грешка при споделяне",
"Share details could not be loaded for this item." : "Данните за споделяне не могат да бъдат заредени",
"No users or groups found for {search}" : "Няма потребители или групи за {search}",
"No users found for {search}" : "Няма потребители за {search}",
- "An error occurred. Please try again" : "Възникна грешка. Моля, опитайте отново.",
+ "An error occurred. Please try again" : "Възникна грешка. Моля, опитайте отново",
"{sharee} (group)" : "{sharee} (група)",
"{sharee} (remote)" : "{sharee} (отдалечен)",
- "{sharee} (email)" : "{sharee} (email)",
+ "{sharee} (remote group)" : "{sharee} (отдалечена група)",
+ "{sharee} (email)" : "{sharee} (имейл)",
+ "{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (разговор)",
"Share" : "Споделяне",
+ "Name or email address..." : "Име или имейл адрес...",
+ "Name..." : "Име...",
"Error" : "Грешка",
- "Error removing share" : "Грешка при махане на споделяне",
- "Non-existing tag #{tag}" : "Не-съществуващ етикет #{tag}",
+ "Error removing share" : "Грешка при изриване на споделяне",
+ "Non-existing tag #{tag}" : "Несъществуващ етикет #{tag}",
"restricted" : "ограничен",
"invisible" : "невидим",
"({scope})" : "({scope})",
- "Delete" : "Изтриване",
- "Rename" : "Преименуване",
- "Collaborative tags" : "Съвместни тагове",
+ "Delete" : "Изтрий",
+ "Rename" : "Преименувай",
+ "Collaborative tags" : "Съвместни етикети",
"No tags found" : "Няма открити етикети",
"unknown text" : "непознат текст",
"Hello world!" : "Здравей Свят!",
"sunny" : "слънчево",
- "Hello {name}, the weather is {weather}" : "Здравей {name}, времето е {weather}",
+ "Hello {name}, the weather is {weather}" : "Здравейте {name}, времето е {weather}",
"Hello {name}" : "Здравейте, {name}",
"new" : "нов",
"_download %n file_::_download %n files_" : ["изтегли %n файл","изтегли %n файла"],
@@ -181,19 +196,22 @@
"File not found" : "Файлът не е открит",
"The specified document has not been found on the server." : "Избраният документ не е намерен на сървъра.",
"You can click here to return to %s." : "Можете да натиснете тук, за да се върнете на %s.",
- "Internal Server Error" : "Вътрешна системна грешка",
- "More details can be found in the server log." : "Повече детайли могат да бъдат намерени в сървърния журнал.",
- "Technical details" : "Технически детайли",
+ "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." : "Подробности можете да намерите журнала на сървъра.",
+ "Technical details" : "Технически данни",
"Remote Address: %s" : "Отдалечен адрес: %s",
- "Request ID: %s" : "ID на заявка: %s",
+ "Request ID: %s" : "ID на заявката: %s",
"Type: %s" : "Тип: %s",
"Code: %s" : "Код: %s",
"Message: %s" : "Съобщение: %s",
"File: %s" : "Файл: %s",
- "Line: %s" : "Линия: %s",
+ "Line: %s" : "Ред: %s",
"Trace" : "Проследяване на грешките",
"Security warning" : "Предупреждение за сигурност",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Вашата директория за данни и файлове Ви вероятно са достъпни от интернет, поради това, че файлът \".htaccess\" не функционира.",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Директория с данни и файлове ви са вероятно са достъпни от Интернет, защото файлът \".htaccess\" не функционира.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Информация, как да настроите сървъра коректно, ще намерите в <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">документацията</a>.",
"Create an <strong>admin account</strong>" : "Създаване на <strong>администраторски профил</strong>.",
"Username" : "Потребител",
"Storage & database" : "Хранилища и бази данни",
@@ -201,38 +219,41 @@
"Configure the database" : "Конфигуриране на базата данни",
"Only %s is available." : "Само %s е наличен.",
"Install and activate additional PHP modules to choose other database types." : "Инсталирайте и активирайте допълнителни PHP модули, за да изберете други видове бази данни.",
- "For more details check out the documentation." : "За повече детайли проверете документацията.",
+ "For more details check out the documentation." : "За повече информация проверете документацията.",
"Database user" : "Потребител за базата данни",
"Database password" : "Парола за базата данни",
"Database name" : "Име на базата данни",
"Database tablespace" : "Tablespace на базата данни",
- "Database host" : "Хост за базата данни",
- "Performance warning" : "Предупреждение за производителност",
- "SQLite will be used as database." : "Ще бъде използвана SQLite за база данни.",
- "For larger installations we recommend to choose a different database backend." : "За по- големи инсталации Ви препоръчваме да изберете друг сървър за бази данни.",
- "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Използването на SQLite не се препоръчва, особено ако ползвате клиента за настолен компютър.",
- "Finish setup" : "Завършване на настройките",
+ "Database host" : "Хост",
+ "Performance warning" : "Предупреждение за производителността",
+ "SQLite will be used as database." : "Ще бъде използвана база данни SQLite.",
+ "For larger installations we recommend to choose a different database backend." : "За големи инсталации е препоръчително ползването на друг тип база данни.",
+ "Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "Използването на SQLite не се препоръчва, особено ако ползвате клиента за настолни компютри.",
+ "Finish setup" : "Завършване на инсталацията",
"Finishing …" : "Завършване...",
"Need help?" : "Нуждаете се от помощ?",
"See the documentation" : "Прегледайте документацията",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "За да функционира приложението изисква JavaScript. Моля, {linkstart}включете JavaScript{linkend} и презаредете страницата.",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Приложението изисква JavaScript. Моля, {linkstart}включете JavaScript{linkend} и презаредете страницата.",
"More apps" : "Още приложения",
"Search" : "Търсене",
+ "Contacts" : "Контакти",
"Confirm your password" : "Потвърдете паролата си",
"Server side authentication failed!" : "Удостоверяването от страна на сървъра е неуспешно!",
"Please contact your administrator." : "Моля, свържете се с администратора.",
- "An internal error occurred." : "Възникна вътрешна грешка.",
+ "An internal error occurred." : "Възникна вътрешно сървърна грешка.",
"Please try again or contact your administrator." : "Опитайте отново или се свържете с администраотра.",
"Username or email" : "Потребител или имейл",
"Log in" : "Вписване",
"Wrong password." : "Грешна парола",
+ "User disabled" : "Потребителят е деактивиран",
"Forgot password?" : "Забравена парола?",
"Redirecting …" : "Пренасочване ...",
"New password" : "Нова парола",
"New Password" : "Нова парола",
+ "The password is wrong. Try again." : "Паролата е грешна. Опитайте отново.",
"Two-factor authentication" : "Двуфакторно удостоверяване",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "Повишената сигурност е активирана за профила ви. Моля удостоверете използвайки втори фактор.",
- "Cancel log in" : "Откажи вписване",
+ "Cancel log in" : "Откажи вписването",
"Use backup code" : "Използвай код за възстановяване",
"Error while validating your second factor" : "Грешка при валидиране на втория ви фактор",
"Access through untrusted domain" : "Достъп чрез ненадежден домейн",
@@ -245,18 +266,27 @@
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Моля, уверете се, че сте направили копия на базата данни, папките с настройки и данните, преди да продължите.",
"Start update" : "Начало на обновяването",
"To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "За да избегнеш таймаутове при по-големи инсталации, можеш да изпълниш следните команди в инсталанционната директория:",
- "Detailed logs" : "Подробни логове",
+ "Detailed logs" : "Подробни журнали",
"Update needed" : "Нужно е обновяване",
- "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "За помощ, вижте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацията</a>.",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "За помощ, прегледайте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацията</a>.",
"Upgrade via web on my own risk" : "Актуализиране чрез интернет на собствен риск",
"This %s instance is currently in maintenance mode, which may take a while." : "В момента този %s се обновява, а това може да отнеме време.",
"This page will refresh itself when the %s instance is available again." : "Страницата ще се зареди автоматично, когато %s е отново на линия.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Свържете се със системния администратор ако това съобщение се задържи твърде дълго или се е появило неочаквано.",
- "Thank you for your patience." : "Благодарим за търпението.",
- "Error setting expiration date" : "Грешка при настройване на датата за изтичане",
+ "Thank you for your patience." : "Благодарим ви за търпението.",
+ "There was an error loading your contacts" : "Възникна грешка при зареждането на контактите.",
+ "Shared with {recipients}" : "Споделено с {recipients}",
+ "Error setting expiration date" : "Грешка при задаване на срок на валидност",
"The public link will expire no later than {days} days after it is created" : "Общодостъпната връзка ще изтече не по-късно от {days} дни след създаването ѝ.",
+ "The server encountered an internal error and was unable to complete your request." : "Поради вътрешно сървърна грешка, сървърът не можа да изпълни заявката ви.",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "Ако грешката се повтори, моля изпратете техническите данни на администратора.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentation</a>." : "Информация, как да настроите сървъра коректно, ще намерите в <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">документацията</a>.",
+ "This action requires you to confirm your password:" : "Необходимо е да потвърдите паролата си:",
+ "Wrong password. Reset it?" : "Грешна парола. Възстановяване?",
"Stay logged in" : "Остани вписан",
- "Alternative Logins" : "Алтернативни методи на вписване",
- "Add \"%s\" as trusted domain" : "Добави \"%s\" като сигурен домейн"
+ "Alternative Logins" : "Алтернативни методи за вписване",
+ "You are accessing the server from an untrusted domain." : "Постъпвате сървъра от домейн, който не е маркиран като сигурен.",
+ "Add \"%s\" as trusted domain" : "Добави \"%s\" към списъка със сигурни домейни",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "За помощ, прегледайте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацията</a>."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/core/l10n/ca.js b/core/l10n/ca.js
index 88fc41892e4..fe708bb6254 100644
--- a/core/l10n/ca.js
+++ b/core/l10n/ca.js
@@ -128,7 +128,6 @@ OC.L10N.register(
"Check the background job settings" : "Comproveu la configuració de feina de fons",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Aquest servidor no té una connexió a Internet operativa: múltiples punts finals no es poden accedir. Això significa que algunes de les funcions com a muntar emmagatzematge extern, notificacions sobre les actualitzacions o instal·lació d'apps de tercers no funcionarà. L’accés a arxius remots i l’enviament d'e-mail de notificació podrien no funcionar, tampoc. Establir una connexió d'aquest servidor a Internet per a gaudir de totes les funcionalitats.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No s’ha configurat cap memòria cau. Per millorar el seu rendiment configureu un memcache si està disponible. Trobareu més informació a la nostra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom no és llegible per PHP que no és gens recomanable per motius de seguretat. Trobareu més informació a la nostra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Actualment esteu executant PHP {version}. Us animem a actualitzar la versió de PHP que feu servir per tenir avantatge d’<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualitzacions de rendiment i seguretat proporcionats pel PHP Group</a> tan aviat com ho suporti la vostra distribució.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualment esteu executant PHP 5.6. La versió actual principal de Nextcloud és l'última que funciona a PHP 5.6. Es recomana actualitzar la versió PHP a 7.0+ per que es pugui actualitzar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuració de capçaleres per intermediari web invers és incorrecta o estàs accedint a Nextcloud des d'un intermediari de confiança. Si no, aquest és un problema de seguretat i pot permetre a un atacant falsejar la seva adreça d'IP visible al Nextcloud. Trobareu més informació a la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
@@ -367,6 +366,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Segons la configuració, com a administrador potser també es pot utilitzar el botó de sota per confiar en aquest domini.",
"Add \"%s\" as trusted domain" : "Afegeix \"%s\" com a domini de confiança",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Per obtenir ajuda, vegeu la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\"> documentació</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom no és llegible per PHP que no és gens recomanable per motius de seguretat. Trobareu més informació a la nostra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "El seu PHP no té suport per FreeType, el que resulta en un trencament de les fotos de perfil i la interfície de configuració.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "S'està accedint de manera no segura mitjançant HTTP. Es recomana utilitzar HTTPS, tal i com detallen els <a href=\"{docUrl}\">consells de seguretat</a>.",
"Back to log in" : "Torna a l'accés",
diff --git a/core/l10n/ca.json b/core/l10n/ca.json
index 392ae77322b..ef890487375 100644
--- a/core/l10n/ca.json
+++ b/core/l10n/ca.json
@@ -126,7 +126,6 @@
"Check the background job settings" : "Comproveu la configuració de feina de fons",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Aquest servidor no té una connexió a Internet operativa: múltiples punts finals no es poden accedir. Això significa que algunes de les funcions com a muntar emmagatzematge extern, notificacions sobre les actualitzacions o instal·lació d'apps de tercers no funcionarà. L’accés a arxius remots i l’enviament d'e-mail de notificació podrien no funcionar, tampoc. Establir una connexió d'aquest servidor a Internet per a gaudir de totes les funcionalitats.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No s’ha configurat cap memòria cau. Per millorar el seu rendiment configureu un memcache si està disponible. Trobareu més informació a la nostra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom no és llegible per PHP que no és gens recomanable per motius de seguretat. Trobareu més informació a la nostra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Actualment esteu executant PHP {version}. Us animem a actualitzar la versió de PHP que feu servir per tenir avantatge d’<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualitzacions de rendiment i seguretat proporcionats pel PHP Group</a> tan aviat com ho suporti la vostra distribució.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualment esteu executant PHP 5.6. La versió actual principal de Nextcloud és l'última que funciona a PHP 5.6. Es recomana actualitzar la versió PHP a 7.0+ per que es pugui actualitzar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuració de capçaleres per intermediari web invers és incorrecta o estàs accedint a Nextcloud des d'un intermediari de confiança. Si no, aquest és un problema de seguretat i pot permetre a un atacant falsejar la seva adreça d'IP visible al Nextcloud. Trobareu més informació a la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
@@ -365,6 +364,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Segons la configuració, com a administrador potser també es pot utilitzar el botó de sota per confiar en aquest domini.",
"Add \"%s\" as trusted domain" : "Afegeix \"%s\" com a domini de confiança",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Per obtenir ajuda, vegeu la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\"> documentació</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom no és llegible per PHP que no és gens recomanable per motius de seguretat. Trobareu més informació a la nostra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentació</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "El seu PHP no té suport per FreeType, el que resulta en un trencament de les fotos de perfil i la interfície de configuració.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "S'està accedint de manera no segura mitjançant HTTP. Es recomana utilitzar HTTPS, tal i com detallen els <a href=\"{docUrl}\">consells de seguretat</a>.",
"Back to log in" : "Torna a l'accés",
diff --git a/core/l10n/cs.js b/core/l10n/cs.js
index 8e676aeef6e..e688bbef5a5 100644
--- a/core/l10n/cs.js
+++ b/core/l10n/cs.js
@@ -6,7 +6,7 @@ OC.L10N.register(
"The selected file is not an image." : "Vybraný soubor není obrázek.",
"The selected file cannot be read." : "Vybraný soubor nelze přečíst.",
"Invalid file provided" : "Zadán neplatný soubor",
- "No image or file provided" : "Soubor nebo obrázek nebyl zadán",
+ "No image or file provided" : "Nebyl poskytnut žádný obrázek nebo soubor",
"Unknown filetype" : "Neznámý typ souboru",
"Invalid image" : "Neplatný obrázek",
"An error occurred. Please contact your admin." : "Došlo k chybě. Kontaktujte svého správce.",
@@ -22,31 +22,31 @@ OC.L10N.register(
"%s password reset" : "reset hesla %s",
"Password reset" : "Reset hesla",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na tlačítko níže. Pokud jste o resetování hesla nežádali, tento e-mail ignorujte.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat vaše heslo, klikněte na následující odkaz. Pokud jste o reset nežádali, tento e-mail ignorujte.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na následující odkaz. Pokud jste o reset nežádali, tento e-mail ignorujte.",
"Reset your password" : "Resetovat vaše heslo",
- "Couldn't send reset email. Please contact your administrator." : "Nepodařilo se odeslat e-mail pro změnu hesla. Kontaktujte prosím administrátora.",
- "Couldn't send reset email. Please make sure your username is correct." : "Nelze odeslat e-mail pro změnu hesla. Ujistěte se prosím, že zadáváte správné uživatelské jméno.",
+ "Couldn't send reset email. Please contact your administrator." : "Nepodařilo se odeslat e-mail pro změnu hesla. Obraťte se na správce.",
+ "Couldn't send reset email. Please make sure your username is correct." : "Nedaří se odeslat e-mail pro změnu hesla. Ujistěte se, že zadáváte správné uživatelské jméno.",
"Preparing update" : "Příprava na aktualizaci",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair warning: " : "Upozornění opravy:",
"Repair error: " : "Chyba opravy:",
- "Please use the command line updater because automatic updating is disabled in the config.php." : "Prosím použijte aktualizační příkazový řádek, protože automatická aktualizace je zakázána v config.php",
+ "Please use the command line updater because automatic updating is disabled in the config.php." : "Použijte aktualizační příkazový řádek, protože automatická aktualizace je zakázána v config.php",
"[%d / %d]: Checking table %s" : "[%d / %d]: Kontrola tabulky %s",
"Turned on maintenance mode" : "Zapnut režim údržby",
"Turned off maintenance mode" : "Vypnut režim údržby",
- "Maintenance mode is kept active" : "Mód údržby je aktivní",
- "Waiting for cron to finish (checks again in 5 seconds) …" : "Čekání na dokončení cronu (zkontroluje znovu za 5 sekund) ...",
+ "Maintenance mode is kept active" : "Režim údržby je aktivní",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "Čekání na dokončení cronu (zkontroluje znovu za 5 sekund)…",
"Updating database schema" : "Aktualizace schéma databáze",
"Updated database" : "Zaktualizována databáze",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "Probíhá ověření, zda je možné aktualizovat schéma databáze (toto může trvat déle v závislosti na velikosti databáze)",
"Checked database schema update" : "Aktualizace schéma databáze byla ověřena",
"Checking updates of apps" : "Kontrola aktualizace aplikací",
- "Checking for update of app \"%s\" in appstore" : "Hledám aktualizaci aplikace \"%s\" v obchodu s aplikacemi",
- "Update app \"%s\" from appstore" : "Aktualizuji aplikaci \"%s\" z obchodu s aplikacemi",
- "Checked for update of app \"%s\" in appstore" : "Zkontrolována aktualizace aplikace \"%s\" v obchodu s aplikacemi",
+ "Checking for update of app \"%s\" in appstore" : "Hledám aktualizaci aplikace „%s“ v obchodu s aplikacemi",
+ "Update app \"%s\" from appstore" : "Aktualizuje se aplikace „%s“ z katalogu aplikací",
+ "Checked for update of app \"%s\" in appstore" : "Zkontrolována aktualizace aplikace „%s“ v katalogu aplikací",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Probíhá ověření, zda je možné aktualizovat schéma databáze %s (toto může trvat déle v závislosti na velikosti databáze)",
"Checked database schema update for apps" : "Aktualizace schéma databáze aplikací byla ověřena",
- "Updated \"%s\" to %s" : "Aktualizováno z \"%s\" na %s",
+ "Updated \"%s\" to %s" : "Aktualizováno z „%s“ na %s",
"Set log level to debug" : "Nastavit úroveň logování na debug",
"Reset log level" : "Resetovat úroveň logování",
"Starting code integrity check" : "Spouští se kontrola integrity kódu",
@@ -54,19 +54,19 @@ OC.L10N.register(
"%s (incompatible)" : "%s (nekompatibilní)",
"Following apps have been disabled: %s" : "Následující aplikace byly vypnuty: %s",
"Already up to date" : "Je již aktuální",
- "Search contacts …" : "Prohledat kontakty...",
- "No contacts found" : "Nebyly nalezeny žádné kontakty",
- "Show all contacts …" : "Zobrazit všechny kontakty …",
- "Could not load your contacts" : "Nelze načíst vaše kontakty",
- "Loading your contacts …" : "Načítání vašich kontaktů …",
- "Looking for {term} …" : "Hledání {term} …",
+ "Search contacts …" : "Prohledat kontakty…",
+ "No contacts found" : "Nenalezeny žádné kontakty",
+ "Show all contacts …" : "Zobrazit všechny kontakty…",
+ "Could not load your contacts" : "Nedaří se načíst vaše kontakty",
+ "Loading your contacts …" : "Načítání vašich kontaktů…",
+ "Looking for {term} …" : "Hledání {term}…",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Došlo k problémům při kontrole integrity kódu. Více informací…</a>",
"No action available" : "Není dostupná žádná akce",
"Error fetching contact actions" : "Chyba při získávání akcí kontaktů",
"Settings" : "Nastavení",
"Connection to server lost" : "Připojení k serveru ztraceno",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problém s načítáním stránky, obnovení za %n sekundu","Problém s načítáním stránky, obnovení za %n sekundy","Problém s načítáním stránky, obnovení za %n sekund","Problém s načítáním stránky, obnovení za %n sekund"],
- "Saving..." : "Ukládám...",
+ "Saving..." : "Ukládání…",
"Dismiss" : "Zamítnout",
"Authentication required" : "Vyžadováno ověření",
"This action requires you to confirm your password" : "Tato akce vyžaduje zadání vašeho hesla",
@@ -78,7 +78,7 @@ OC.L10N.register(
"The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Odkaz na obnovení hesla byl odeslán na vaši e-mailovou adresu. Pokud jej v krátké době neobdržíte, zkontrolujte nevyžádanou poštu a koš.<br>Pokud jej nenaleznete, kontaktujte svého správce systému.",
"Your files are encrypted. There will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "Vaše soubory jsou šifrovány. Po vyresetování vašeho hesla nebudete moc získat data zpět.<br/>Pokud si nejste jisti tím co děláte, předtím než budete pokračovat, kontaktujte vašeho administrátora.<br/>Opravdu chcete pokračovat?",
"I know what I'm doing" : "Vím co dělám",
- "Password can not be changed. Please contact your administrator." : "Heslo nelze změnit. Kontaktujte prosím svého správce systému.",
+ "Password can not be changed. Please contact your administrator." : "Heslo nelze změnit. Obraťte se na svého správce systému.",
"Reset password" : "Obnovit heslo",
"Sending email …" : "Odesílání e-mailu…",
"No" : "Ne",
@@ -88,7 +88,7 @@ OC.L10N.register(
"Choose" : "Vybrat",
"Copy" : "Zkopírovat",
"Move" : "Přesunout",
- "Error loading file picker template: {error}" : "Chyba při nahrávání šablony výběru souborů: {error}",
+ "Error loading file picker template: {error}" : "Chyba při načítání šablony výběru souborů: {error}",
"OK" : "OK",
"Error loading message template: {error}" : "Chyba při nahrávání šablony zprávy: {error}",
"read-only" : "pouze ke čtení",
@@ -113,38 +113,56 @@ OC.L10N.register(
"So-so password" : "Středně silné heslo",
"Good password" : "Dobré heslo",
"Strong password" : "Silné heslo",
- "Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Váš webový server ještě není správně nastaven, pro umožnění synchronizace souborů, rozhraní WebDAV je pravděpodobně nefunkční.",
- "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Váš webový server není správně nastaven pro rozpoznání \"{url}\". Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Váš webový server ještě není správně nastaven, pro umožnění synchronizace souborů, rozhraní WebDAV pravděpodobně není funkční.",
+ "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Váš webový server není správně nastaven pro rozpoznání „{url}“. Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "Zdá se, že PHP není správně nastaveno pro dotazování proměnných prostředí systému. Test s příkazem getenv (\"PATH\") vrátí pouze prázdnou odpověď.",
- "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Vaše databáze neběží s úrovní izolace transakcí \"READ COMMITTED\". Toto může způsobit problémy při paralelním spouštění více akcí současně.",
- "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "Modul PHP 'fileinfo' chybí. Důrazně se doporučuje zapnout tento modul pro zajištění lepší detekce MIME typů.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "Nahlédněte do <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">instalační dokumentace ↗</a> kvůli poznámkám pro nastavování PHP a zkontrolujte nastavení PHP na svém serveru, zejména pokud používáte php-fpm.",
+ "The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Nastavení bylo přepnuto do režimu pouze pro čtení. To brání změnám prostřednictvím webového rozhraní. Dále při každé aktualizaci, je třeba soubor ručně zpřístupnit pro zápis.",
+ "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Vaše databáze není spuštěná s úrovní izolace transakcí „READ COMMITTED“. Toto může způsobit problémy při paralelním spouštění více akcí současně.",
+ "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "Modul PHP „fileinfo“ chybí. Důrazně se doporučuje zapnout tento modul pro zajištění lepšího zjišťování MIME typů.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "Je nainstalovaná {name} starší verze než {version}. Z důvodu stability a výkonu je doporučeno aktualizovat na novější verzi {name}.",
+ "Transactional file locking is disabled, this might lead to issues with race conditions. Enable \"filelocking.enabled\" in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a> for more information." : "Transakční zamykání souborů je vypnuto, což může vést k problémům při souběžném přístupu. Abyste se jim vyhli, zapněte v config.php volbu „filelocking.enabled“. Další informace naleznete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci ↗</a>.",
+ "If your installation is not installed at the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (suggestion: \"{suggestedOverwriteCliURL}\")" : "Pokud se vaše instalace nenachází v kořeni domény a používá plánovač systému, může být problém s vytvářením URL adres. Abyste se jim vyhnuli, nastavte volbu „overwrite.cli.url“ v souboru config.php na umístění kořene webu vaší instalace (doporučení: „{suggestedOverwriteCliURL}“)",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebylo možné vykonat naplánovanou úlohu z příkazového řádku. Objevily se následující technické chyby:",
"Last background job execution ran {relativeTime}. Something seems wrong." : "Běh posledního cronjobu: {relativeTime}. Vypadá to, že něco není v pořádku.",
- "Check the background job settings" : "Prověřte nastavení cronjobu",
+ "Check the background job settings" : "Prověřte nastavení cronjob na pozadí",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Tento server nemá funkční připojení k Internetu: Nedaří se připojit k vícero koncovým bodům. Některé moduly jako např. externí úložiště, oznámení o dostupných aktualizacích, nebo instalace aplikací třetích stran nebudou fungovat. Přístup k souborům z jiných míst a odesílání oznamovacích emailů také nemusí fungovat. Pokud chcete využívat všechny možnosti tohoto serveru, doporučujeme povolit připojení k Internetu.",
- "No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nebyla nakonfigurována paměťová cache. Pokud je dostupná, nakonfigurujte ji prosím pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nebyla nastavena mezipaměť v paměti. Pokud je dostupná, nastavte ji pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP nenalezlo žádný použitelný zdroj náhodnosti, což je silně nedoporučeno z důvodu zabezpečení. Bližší informace naleznete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Aktuálně používáte PHP {version}. Aktualizujte verzi PHP, abyste mohli využít <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">výkonnostní a bezpečnostní aktualizace poskytované autory PHP</a> tak rychle, jak to vaše distribuce umožňuje.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Aktuálně používáte PHP 5.6. Aktuální verze Nextcloud podporuje verzi PHP 5.6, ale je doporučený upgrade na PHP verzi 7.0 a vyšší pro upgrade na Nextcloud 14",
- "The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfigurace hlaviček reverzní proxy není správná nebo přistupujete na Nextcloud z důvěryhodné proxy. Pokud nepřistupujete k Nextcloud z důvěryhodné proxy, potom je toto bezpečností chyba a může útočníkovi umožnit falšovat IP adresu, kterou NextCloud vidí. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
- "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nakonfigurován memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul \"memcache\". \\OC\\Memcache\\Memcached podporuje pouze \"memcached\" a ne \"memcache\". Podívejte se na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
+ "The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nastavení hlaviček reverzní proxy není správné nebo přistupujete na Nextcloud z důvěryhodné proxy. Pokud nepřistupujete k Nextcloud z důvěryhodné proxy, potom je toto bezpečností chyba a může útočníkovi umožnit falšovat IP adresu, kterou NextCloud vidí. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nastaven memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul „memcache“. \\OC\\Memcache\\Memcached podporuje pouze „memcached“ a ne „memcache“. Podívejte se na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Některé soubory neprošly kontrolou integrity. Více informací o tom jak tento problém vyřešit, lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Seznam neplatných souborů…</a> / <a href=\"{rescanEndpoint}\">Znovu ověřit…</a>)",
+ "The PHP OPcache module is not loaded. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to load it into your PHP installation." : "PHP modul OPcache není načten. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Pro lepší výkon je doporučeno</a> načíst ho do vaší PHP instalace.",
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcache není správně nakonfigurována.<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Pro lepší výkon doporučujeme</a> použít následující nastavení v <code>php.ini</code>:",
- "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP funkce \"set_time_limit\" není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP funkce „set_time_limit“ není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "Vaše PHP nepodporuje FreeType, to bude mít za následky poškození obrázků profilů a nastavení rozhraní",
+ "Missing index \"{indexName}\" in table \"{tableName}\"." : "Chybí index „{indexName}“ v tabulce „{tableName}“.",
+ "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "V databázi chybí některé indexy. Protože přidávání indexů na velkých tabulkách může zabrat nějaký čas, nebyly přidány automaticky. Spuštěním „occ db:add-missing-indices“ je možné tyto chybějící indexy ručně za provozu instance. Po přidání indexů dotazy do těchto tabulek jsou obvykle mnohem rychlejší.",
+ "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "Jako podpůrná databázová vrstva je nyní používáno SQLite. Pro větší instalace doporučujeme přejít na jinou databázi.",
+ "This is particularly recommended when using the desktop client for file synchronisation." : "Toto je doporučeno zejména když používáte pro synchronizaci souborů desktop klienta.",
+ "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a>." : "Pro migraci na jinou databázi použijte nástroj pro příkazový řádek: „occ db:convert-type“, nebo se podívejte do <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentace ↗</a>.",
+ "Use of the the built in php mailer is no longer supported. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Please update your email server settings ↗<a/>." : "Použití odesílání e-mailů, vestavěného v php už není podporováno. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Aktualizujte nastavení svého e-mailového serveru ↗<a/>.",
"The PHP memory limit is below the recommended value of 512MB." : "Limit paměti pro PHP je nastaven na níže než doporučenou hodnotu 512MB.",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Adresáře některých aplikací jsou vlastněny jiným uživatelem, než je ten webového serveru. To může být případ pokud aplikace byly nainstalované ručně. Zkontrolujte oprávnění následujících adresářů aplikací:",
"Error occurred while checking server setup" : "Při ověřování nastavení serveru došlo k chybě",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Váš datový adresář a vaše soubory jsou pravděpodobně dostupné z internetu. Soubor .htaccess nefunguje. Je velmi doporučeno zajistit, aby tento adresář již nebyl dostupný z internetu, nebo byl přesunut mimo document root webového serveru.",
- "The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP hlavička \"{header}\" není nakonfigurována ve shodě s \"{expected}\". To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
- "The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "HTTP hlavička \"{header}\" není nakonfigurována ve shodě s \"{expected}\". To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP hlavička „{header}“ není nastavena ve shodě s „{expected}“. To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "HTTP hlavička „{header}“ není nastavena ve shodě s „{expected}“. To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not set to \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". This can leak referer information. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C Recommendation ↗</a>." : "HTTP hlavička „{header}“ není nastavena na „{val1}“, „{val2}“, „{val3}“ nebo „{val4}“. To může odhalovat referer informaci. Viz <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">doporučení W3C ↗</a>.",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "HTTP hlavička „Strict-Transport-Security“ není nastavena na přinejmenším „{seconds}“ sekund. Pro lepší zabezpečení je doporučeno zapnout HSTS, jak je popsáno v <a href=\"{docUrl}\" rel=\"noreferrer noopener\">tipech pro zabezpečení ↗</a>.",
+ "Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips ↗</a>." : "Přistupujete přes nezabezpečené HTTP. Silně doporučujeme nastavit svůj server tak, aby vyžadoval namísto toho HTTPS, jak je popsáno v <a href=\"{docUrl}\">tipech pro zabezpečení ↗</a>.",
"Shared" : "Sdílené",
"Shared with" : "Sdíleno s",
"Shared by" : "Nasdílel",
"Choose a password for the public link" : "Zadej heslo pro tento veřejný odkaz",
- "Choose a password for the public link or press the \"Enter\" key" : "Zvolte heslo pro veřejný odkaz nebo stiskněte klávesu \"Enter\"",
+ "Choose a password for the public link or press the \"Enter\" key" : "Zvolte heslo pro veřejný odkaz nebo stiskněte klávesu „Enter“",
"Copied!" : "Zkopírováno!",
"Not supported!" : "Nepodporováno!",
"Press ⌘-C to copy." : "Zmáčknout ⌘-C pro kopírování.",
"Press Ctrl-C to copy." : "Zmáčknout Ctrl-C pro kopírování.",
- "Resharing is not allowed" : "Sdílení již sdílené položky není povoleno",
+ "Resharing is not allowed" : "Sdílení už sdílené položky není povoleno",
"Share to {name}" : "Sdílet {name}",
"Copy URL" : "Kopírovat URL",
"Link" : "Odkaz",
@@ -155,14 +173,16 @@ OC.L10N.register(
"Allow upload and editing" : "Povolit nahrávání a úpravy",
"Read only" : "Pouze pro čtení",
"File drop (upload only)" : "Přetažení souboru (pouze nahrání)",
- "Set expiration date" : "Nastavit datum vypršení platnosti",
+ "Set expiration date" : "Nastavit datum skončení platnosti",
"Expiration" : "Konec platnosti",
- "Expiration date" : "Datum vypršení platnosti",
+ "Expiration date" : "Datum skončení platnosti",
"Note to recipient" : "Poznámka pro příjemce",
"Share link" : "Sdílet odkaz",
"Enable" : "Povolit",
"Shared with you and the group {group} by {owner}" : "S Vámi a skupinou {group} sdílí {owner}",
"Shared with you and {circle} by {owner}" : "Sdíleno s vámi a {circle} od {owner}",
+ "Shared with you and the conversation {conversation} by {owner}" : "Sdíleno {owner} s vámi a konverzací {conversation}",
+ "Shared with you in a conversation by {owner}" : "Sdílí s vámi {owner} v konverzaci",
"Shared with you by {owner}" : "S Vámi sdílí {owner}",
"Choose a password for the mail share" : "Zvolte si heslo e-mailového sdílení",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} sdílí pomocí odkazu",
@@ -178,28 +198,31 @@ OC.L10N.register(
"Can create" : "Může vytvářet",
"Can change" : "Může měnit",
"Can delete" : "Může mazat",
+ "Password protect by Talk" : "Ochrana heslem pomocí Talk",
"Access control" : "Řízení přístupu",
"Could not unshare" : "Nelze zrušit sdílení",
"Error while sharing" : "Chyba při sdílení",
"Share details could not be loaded for this item." : "Detaily sdílení pro tuto položku nelze načíst.",
"_At least {count} character is needed for autocompletion_::_At least {count} characters are needed for autocompletion_" : ["Alespoň {count} znak je vyžadován pro automatické doplňování","Alespoň {count} znaky jsou vyžadovány pro automatické doplňování","Alespoň {count} znaků je vyžadováno pro automatické doplňování","Alespoň {count} znaků je vyžadováno pro automatické doplňování"],
- "This list is maybe truncated - please refine your search term to see more results." : "Tento seznam je možná zkrácený - prosím upřesněte vyhledávací výraz pro více výsledků.",
+ "This list is maybe truncated - please refine your search term to see more results." : "Tento seznam je možná zkrácený - upřesněte vyhledávací výraz pro více výsledků.",
"No users or groups found for {search}" : "Nebyli nalezeni žádní členové ani skupiny pro {search}",
"No users found for {search}" : "Nebyli nalezeni žádní uživatelé pro {search}",
"An error occurred (\"{message}\"). Please try again" : "Došlo k chybě („{message}“). Zkuste to znovu",
"An error occurred. Please try again" : "Došlo k chybě. Zkuste to znovu",
"{sharee} (group)" : "{sharee} (skupina)",
- "{sharee} (remote)" : "{sharee} (vzdálený)",
- "{sharee} (email)" : "{sharee} (email)",
+ "{sharee} (remote)" : "{sharee} (na protějšku)",
+ "{sharee} (remote group)" : "{sharee} (skupina na protějšku)",
+ "{sharee} (email)" : "{sharee} (e-mail)",
"{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (konverzace)",
"Share" : "Sdílet",
"Name or email address..." : "Jméno nebo e-mailová adresa…",
- "Name or federated cloud ID..." : "Jméno nebo sdružené cloud ID...",
- "Name, federated cloud ID or email address..." : "Jméno, sdružené cloud ID, nebo e-mailová adresa...",
+ "Name or federated cloud ID..." : "Jméno nebo identifikátor v rámci sdruženého cloudu…",
+ "Name, federated cloud ID or email address..." : "Jméno, identifikátor v rámci sdruženého cloudu, nebo e-mailová adresa…",
"Name..." : "Jméno…",
"Error" : "Chyba",
"Error removing share" : "Chyba při odstraňování sdílení",
- "Non-existing tag #{tag}" : "Neexistující tag #{tag}",
+ "Non-existing tag #{tag}" : "Neexistující štítek #{tag}",
"restricted" : "omezeno",
"invisible" : "neviditelný",
"({scope})" : "({scope})",
@@ -210,26 +233,26 @@ OC.L10N.register(
"unknown text" : "neznámý text",
"Hello world!" : "Zdravím, světe!",
"sunny" : "slunečno",
- "Hello {name}, the weather is {weather}" : "Ahoj {name}, je {weather}",
- "Hello {name}" : "Vítej, {name}",
- "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Toto jsou vaše výsledky hledání<script>alert(1)</script></strong>",
+ "Hello {name}, the weather is {weather}" : "Zdravím {name}, počasí je {weather}",
+ "Hello {name}" : "Vítejte, {name}",
+ "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Toto výsledky pro vaše hledání<script>alert(1)</script></strong>",
"new" : "nový",
"_download %n file_::_download %n files_" : ["stáhnout %n soubor","stáhnout %n soubory","stáhnout %n souborů","stáhnout %n souborů"],
"The update is in progress, leaving this page might interrupt the process in some environments." : "Probíhá aktualizace, opuštění této stránky může v některých prostředích přerušit proces.",
- "Update to {version}" : "Aktualizace na {version}",
+ "Update to {version}" : "Aktualizovat na {version}",
"An error occurred." : "Došlo k chybě.",
- "Please reload the page." : "Načtěte stránku znovu, prosím.",
+ "Please reload the page." : "Načtěte stránku znovu.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Aktualizace nebyla úspěšná. Pro více informací si <a href=\"{url}\">přečtěte komentáře ve fóru</a> pojednávající o tomto problému.",
- "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Aktualizace byla neúspěšná. Nahlaste prosím problém <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">komunitě Nextcloudu</a>",
+ "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Aktualizace nebyla úspěšná. Nahlaste problém <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">komunitě kolem Nextcloud</a>",
"Continue to Nextcloud" : "Pokračovat do Nextcloud",
- "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundu.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundy.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekund.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekund."],
+ "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundu.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundy.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekund.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundy."],
"Searching other places" : "Prohledávání ostatních umístění",
"No search results in other folders for {tag}{filter}{endtag}" : "Žádné výsledky v dalších složkách pro {tag}{filter}{endtag}",
- "_{count} search result in another folder_::_{count} search results in other folders_" : ["{count} nález v dalším adresáři","{count} nálezy v dalších adresářích","{count} nálezů v dalších adresářích","{count} nálezů v dalších adresářích"],
+ "_{count} search result in another folder_::_{count} search results in other folders_" : ["{count} nález v další složce","{count} nálezy v dalších složkách","{count} nálezů v dalších složkách","{count} nálezy v dalších složkách"],
"Personal" : "Osobní",
"Users" : "Uživatelé",
"Apps" : "Aplikace",
- "Admin" : "Administrace",
+ "Admin" : "Správa",
"Help" : "Nápověda",
"Access forbidden" : "Přístup zakázán",
"File not found" : "Soubor nenalezen",
@@ -246,17 +269,17 @@ OC.L10N.register(
"Code: %s" : "Kód: %s",
"Message: %s" : "Zpráva: %s",
"File: %s" : "Soubor: %s",
- "Line: %s" : "Řádka: %s",
+ "Line: %s" : "Řádek: %s",
"Trace" : "Trasa",
- "Security warning" : "Bezpečnostní varování",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Váš adresář s daty a soubory jsou dostupné z internetu, protože soubor .htaccess nefunguje.",
- "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Pro informace, jak správně nastavit váš server, se podívejte do <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">dokumentace.",
+ "Security warning" : "Varování ohledně zabezpečení",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Váš adresář s daty a soubory jsou dostupné z Internetu, protože soubor .htaccess nefunguje.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Informace o tom, jak správně nastavit svůj server, naleznete v <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">dokumentaci</a>.",
"Create an <strong>admin account</strong>" : "Vytvořit <strong>účet správce</strong>",
"Username" : "Uživatelské jméno",
"Storage & database" : "Úložiště a databáze",
- "Data folder" : "Adresář s daty",
+ "Data folder" : "Složka s daty",
"Configure the database" : "Nastavit databázi",
- "Only %s is available." : "Pouze %s je dostupný.",
+ "Only %s is available." : "Je k dispozici pouze %s.",
"Install and activate additional PHP modules to choose other database types." : "Pro výběr jiných typů databáze je třeba nainstalovat a povolit dodatečné PHP moduly.",
"For more details check out the documentation." : "Více informací lze nalézt v dokumentaci.",
"Database user" : "Uživatel databáze",
@@ -264,7 +287,7 @@ OC.L10N.register(
"Database name" : "Název databáze",
"Database tablespace" : "Tabulkový prostor databáze",
"Database host" : "Hostitel databáze",
- "Please specify the port number along with the host name (e.g., localhost:5432)." : "Prosím, specifikujte port spolu se jménem hostitele (t. j., localhost:5432).",
+ "Please specify the port number along with the host name (e.g., localhost:5432)." : "Zadejte port spolu s názvem hostitele (t. j., localhost:5432).",
"Performance warning" : "Varování o výkonu",
"SQLite will be used as database." : "Bude použita SQLite databáze.",
"For larger installations we recommend to choose a different database backend." : "Pro větší instalace doporučujeme vybrat jiné databázové řešení.",
@@ -272,9 +295,9 @@ OC.L10N.register(
"Finish setup" : "Dokončit nastavení",
"Finishing …" : "Dokončování…",
"Need help?" : "Potřebujete pomoc?",
- "See the documentation" : "Shlédnout dokumentaci",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Tato aplikace potřebuje pro správnou funkčnost JavaScript. Prosím {linkstart}povolte JavaScript{linkend} a znovu načtěte stránku.",
- "Skip to main content" : "Přejít k hlavnímu obsahu",
+ "See the documentation" : "Viz dokumentace",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Tato aplikace potřebuje pro správnou funkčnost JavaScript. {linkstart}Povolte ho{linkend} a znovu načtěte stránku.",
+ "Skip to main content" : "Přeskočit a přejít k hlavnímu obsahu",
"Skip to navigation of app" : "Přejít na navigaci aplikace",
"More apps" : "Více aplikací",
"More apps menu" : "Nabídka dalších aplikací",
@@ -284,10 +307,10 @@ OC.L10N.register(
"Contacts menu" : "Nabídka kontaktů",
"Settings menu" : "Nabídka nastavení",
"Confirm your password" : "Potvrdit heslo",
- "Server side authentication failed!" : "Autentizace na serveru selhala!",
- "Please contact your administrator." : "Kontaktujte prosím svého správce systému.",
+ "Server side authentication failed!" : "Ověření na straně serveru se nezdařilo!",
+ "Please contact your administrator." : "Obraťte se na svého správce systému.",
"An internal error occurred." : "Nastala vnitřní chyba.",
- "Please try again or contact your administrator." : "Prosím zkuste to znovu nebo kontaktujte vašeho správce.",
+ "Please try again or contact your administrator." : "Zkuste to znovu nebo se obraťte na svého správce.",
"Username or email" : "Uživatelské jméno/email",
"Log in" : "Přihlásit",
"Wrong password." : "Chybné heslo.",
@@ -296,55 +319,59 @@ OC.L10N.register(
"Forgot password?" : "Zapomněli jste heslo?",
"Back to login" : "Zpět na přihlášení",
"Connect to your account" : "Připojit ke svému účtu",
+ "Please log in before granting %s access to your %s account." : "Přihlaste se před udělením %s přístupu k vašemu %s účtu.",
"App token" : "Token aplikace",
"Grant access" : "Povolit přístup",
+ "Alternative log in using app token" : "Alternativní přihlášení pomocí tokenu aplikace",
"Account access" : "Přístup k účtu",
"You are about to grant %s access to your %s account." : "Chystáte se povolit %s přístup k vašemu %s účtu.",
- "Redirecting …" : "Přesměrovávání …",
+ "Redirecting …" : "Přesměrovávání…",
"New password" : "Nové heslo",
"New Password" : "Nové heslo",
"This share is password-protected" : "Toto sdílení je chráněno heslem",
"The password is wrong. Try again." : "Chybné heslo. Zkuste to znovu.",
"Two-factor authentication" : "Dvoufaktorové přihlášení",
- "Enhanced security is enabled for your account. Please authenticate using a second factor." : "Bylo zapnuto vylepšené zabezpečení pro tento účet. Přihlašte se za použití druhého faktoru.",
+ "Enhanced security is enabled for your account. Please authenticate using a second factor." : "Bylo zapnuto vylepšené zabezpečení pro tento účet. Přihlaste se za použití druhého faktoru.",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Nedaří se načíst ani jednu ze zapnutých metod dvouúrovňového ověřování. Obraťte se na svého správce.",
"Cancel log in" : "Zrušit přihlášení",
"Use backup code" : "Použít záložní kód",
"Error while validating your second factor" : "Chyba při ověřování druhého faktoru",
- "Access through untrusted domain" : "Přístup skrz nedůvěryhodnou doménu",
- "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." : "Prosím kontaktujte vašeho administrátora. Pokud jste administrátor, upravte konfigurační hodnotu \"trusted_domains\" v config/config.php podle příkladu v config.sample.php.",
+ "Access through untrusted domain" : "Přístup prostřednictvím nedůvěryhodné domény",
+ "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." : "Obraťte se na svého správce. Pokud jste jím vy, upravte v souboru s nastaveními config/config.php parametr „trusted_domains“ podle příkladu v config.sample.php.",
"Further information how to configure this can be found in the %sdocumentation%s." : "Více informací o tom, jak toto nastavit, jsou k dispozici v%sdokumentaci%s.",
"App update required" : "Vyžadována aktualizace aplikace",
"%s will be updated to version %s" : "%s bude aktualizován na verzi %s",
"These apps will be updated:" : "Následující aplikace budou aktualizovány:",
"These incompatible apps will be disabled:" : "Následující nekompatibilní aplikace budou zakázány:",
"The theme %s has been disabled." : "Vzhled %s byl zakázán.",
- "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Před provedením dalšího kroku se prosím ujistěte, že databáze a konfigurační a datový adresář byly zazálohovány. ",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Před provedením dalšího kroku se ujistěte, že je zazálohována databáze a složky s nastaveními a daty.",
"Start update" : "Spustit aktualizaci",
- "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Abyste zabránili vypršení časového limitu u větších instalací, můžete namísto toho spustit následující příkaz v hlavním adresáři:",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "U větších instalací, abyste zabránili překračování časového limitu, můžete namísto toho spustit následující příkaz v hlavním adresáři:",
"Detailed logs" : "Podrobné logy",
- "Update needed" : "Potřeba aktualizace",
- "Please use the command line updater because you have a big instance with more than 50 users." : "Prosím použijte aktualizační příkazový řádek, protože máte velkou instanci s více než 50 uživateli.",
- "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Pro pomoc, shlédněte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci</a>.",
+ "Update needed" : "Je třeba provést aktualizaci",
+ "Please use the command line updater because you have a big instance with more than 50 users." : "Použijte aktualizační příkazový řádek, protože máte velkou instanci s více než 50 uživateli.",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Pro pomoc, nahlédněte do <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentace</a>.",
"I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "Beru na vědomí, že při aktualizaci skrze webové rozhraní hrozí nebezpečí vypršení požadavku, který může vyústit ve ztrátu dat. Mám pro takový případ zálohu a vím, jak ji v případě selhání obnovit.",
"Upgrade via web on my own risk" : "Na vlastní nebezpečí aktualizovat skrze web",
"This %s instance is currently in maintenance mode, which may take a while." : "Tato instalace %s je právě ve stavu údržby a to může chvíli trvat.",
"This page will refresh itself when the %s instance is available again." : "Tato stránka se automaticky načte poté, co bude opět dostupná instance %s.",
- "Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktujte prosím správce systému, pokud se tato zpráva objevuje opakovaně nebo nečekaně.",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Pokud se tato zpráva objevuje opakovaně nebo nečekaně, obraťte se správce systému.",
"Thank you for your patience." : "Děkujeme za vaši trpělivost.",
+ "%s (3rdparty)" : "%s (třetí strana)",
"There was an error loading your contacts" : "Při načítání vašich kontaktů došlo k chybě",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Váš webový server, ještě není správně nastaven pro umožnění synchronizace souborů, protože rozhraní WebDAV je pravděpodobně nefunkční.",
- "Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Tento webový server není správně nastaven pro rozpoznání \"{url}\". Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
+ "Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Tento webový server není správně nastaven pro rozpoznání „{url}“. Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Tento server nemá funkční připojení k Internetu: Nedaří se připojit k vícero koncovým bodům. Některé moduly jako např. externí úložiště, oznámení o dostupných aktualizacích nebo instalace aplikací třetích stran nebudou fungovat. Přístup k souborům z jiných míst a odesílání oznamovacích emailů také nemusí fungovat. Pokud chcete využívat všechny možnosti tohoto serveru, doporučujeme povolit připojení k Internetu.",
- "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nebyla nakonfigurována paměťová cache. Pokud je dostupná, nakonfigurujte ji prosím pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nebyla nastavena žádná paměťová cache. Pokud je dostupná, nastavte ji pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP nemá práva pro čtení v /dev/urandom, to je ale z bezpečnostních důvodů velmi doporučováno. Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Aktuálně používáte PHP {version}. Doporučujeme aktualizovat verzi PHP, abyste mohli využít <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">výkonnostních a bezpečnostních aktualizací poskytovaných autory PHP</a> tak rychle, jak to vaše distribuce umožňuje.",
"The reverse proxy headers configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If you are not accessing Nextcloud from a trusted proxy, this is a security issue and can allow an attacker to spoof their IP address as visible to Nextcloud. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Konfigurace hlaviček reverzní proxy není správná nebo přistupujete na Nextcloud z důvěryhodné proxy. Pokud nepřistupujete k Nextcloud z důvěryhodné proxy, potom je toto bezpečností chyba a může útočníkovi umožnit falšovat IP adresu, kterou Nextcloud vidí. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
- "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nakonfigurován memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul \"memcache\". \\OC\\Memcache\\Memcached podporuje pouze \"memcached\" a ne \"memcache\". Podívejte se na <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
+ "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nastaven memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul „memcache“. \\OC\\Memcache\\Memcached podporuje pouze „memcached“ a ne „memcache“. Podívejte se na <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Některé soubory neprošly kontrolou integrity. Více informací o tom jak tento problém vyřešit, lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Seznam neplatných souborů…</a> / <a href=\"{rescanEndpoint}\">Znovu ověřit…</a>)",
- "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcache není správně nakonfigurována.<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Pro lepší výkon doporučujeme</a> použít následující nastavení v <code>php.ini</code>:",
- "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP funkce \"set_time_limit\" není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcache není správně nastavena.<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Pro lepší výkon doporučujeme</a> použít následující nastavení v <code>php.ini</code>:",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP funkce „set_time_limit„ není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
"Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "Váš datový adresář a vaše soubory jsou pravděpodobně dostupné z internetu. Soubor .htaccess nefunguje. Je velmi doporučeno zajistit, aby tento adresář již nebyl dostupný z internetu, nebo byl přesunut mimo document root webového serveru.",
- "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "HTTP hlavička \"{header}\" není nakonfigurována ve shodě s \"{expected}\". To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "HTTP hlavička „{header}„ není nastavená ve shodě s „{expected}“. To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "HTTP hlavička \"Strict-Transport-Security\" není nakonfigurována na minimum \"{seconds}\" sekund. Pro vylepšení bezpečnosti doporučujeme povolit HSTS dle popisu v našich <a href=\"{docUrl}\" rel=\"noreferrer\">bezpečnostních tipech</a>.",
"You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "Přistupujete na tuto stránku přes protokol HTTP. Důrazně doporučujeme nakonfigurovat server tak, aby vyžadoval použití HTTPS jak je popsáno v našich <a href=\"{docUrl}\">bezpečnostních tipech</a>.",
"Shared with {recipients}" : "Sdíleno s {recipients}",
@@ -363,12 +390,13 @@ OC.L10N.register(
"You are about to grant \"%s\" access to your %s account." : "Chystáte se povolit %s přístup k vašemu %s účtu.",
"Alternative login using app token" : "Alternativní přihlášení pomocí tokenu aplikace",
"You are accessing the server from an untrusted domain." : "Přistupujete na server z nedůvěryhodné domény.",
- "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Kontaktujte prosím svého správce. Pokud spravujete tuto instalaci, nastavte \"trusted_domains\" v souboru config/config.php. Příklad konfigurace najdete v souboru config/config.sample.php.",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Kontaktujte prosím svého správce. Pokud spravujete tuto instalaci, nastavte „trusted_domains“ v souboru config/config.php. Příklad konfigurace najdete v souboru config/config.sample.php.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "V závislosti na vaší konfiguraci vám může být, jako správci, umožněno použití tlačítka níže k označení této domény jako důvěryhodné.",
- "Add \"%s\" as trusted domain" : "Přidat \"%s\" jako důvěryhodnou doménu",
+ "Add \"%s\" as trusted domain" : "Přidat „%s“ jako důvěryhodnou doménu",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Pro pomoc, nahlédněte do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentace</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom není pro PHP přístupné pro čtení, což je silně nedoporučeno z důvodu zabezpečení. Další informace jsou k nalezení v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Váš PHP nepodporuje freetype. Následek budou požkozené profilové obrázky a nastavení rozhraní",
- "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP hlavička \"Strict-Transport-Security\" není nakonfigurována na minimum \"{seconds}\" sekund. Pro vylepšení bezpečnosti doporučujeme povolit HSTS dle popisu v našich <a href=\"{docUrl}\" rel=\"noreferrer noopener\">bezpečnostních tipech</a>.",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP hlavička „Strict-Transport-Security“ není nakonfigurována na minimum \"{seconds}\" sekund. Pro vylepšení bezpečnosti doporučujeme povolit HSTS dle popisu v našich <a href=\"{docUrl}\" rel=\"noreferrer noopener\">bezpečnostních tipech</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Přistupujete na tuto stránku přes protokol HTTP. Důrazně doporučujeme nakonfigurovat server tak, aby vyžadoval použití HTTPS jak je popsáno v našich <a href=\"{docUrl}\">bezpečnostních tipech</a>.",
"Back to log in" : "Zpět na přihlášení",
"Depending on your configuration, this button could also work to trust the domain:" : "V závislosti na vaší konfiguraci by pro označení domény za důvěryhodnou mohlo fungovat i toto tlačítko:"
diff --git a/core/l10n/cs.json b/core/l10n/cs.json
index e3811481193..314aa90f0df 100644
--- a/core/l10n/cs.json
+++ b/core/l10n/cs.json
@@ -4,7 +4,7 @@
"The selected file is not an image." : "Vybraný soubor není obrázek.",
"The selected file cannot be read." : "Vybraný soubor nelze přečíst.",
"Invalid file provided" : "Zadán neplatný soubor",
- "No image or file provided" : "Soubor nebo obrázek nebyl zadán",
+ "No image or file provided" : "Nebyl poskytnut žádný obrázek nebo soubor",
"Unknown filetype" : "Neznámý typ souboru",
"Invalid image" : "Neplatný obrázek",
"An error occurred. Please contact your admin." : "Došlo k chybě. Kontaktujte svého správce.",
@@ -20,31 +20,31 @@
"%s password reset" : "reset hesla %s",
"Password reset" : "Reset hesla",
"Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na tlačítko níže. Pokud jste o resetování hesla nežádali, tento e-mail ignorujte.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat vaše heslo, klikněte na následující odkaz. Pokud jste o reset nežádali, tento e-mail ignorujte.",
+ "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Pokud chcete resetovat své heslo, klikněte na následující odkaz. Pokud jste o reset nežádali, tento e-mail ignorujte.",
"Reset your password" : "Resetovat vaše heslo",
- "Couldn't send reset email. Please contact your administrator." : "Nepodařilo se odeslat e-mail pro změnu hesla. Kontaktujte prosím administrátora.",
- "Couldn't send reset email. Please make sure your username is correct." : "Nelze odeslat e-mail pro změnu hesla. Ujistěte se prosím, že zadáváte správné uživatelské jméno.",
+ "Couldn't send reset email. Please contact your administrator." : "Nepodařilo se odeslat e-mail pro změnu hesla. Obraťte se na správce.",
+ "Couldn't send reset email. Please make sure your username is correct." : "Nedaří se odeslat e-mail pro změnu hesla. Ujistěte se, že zadáváte správné uživatelské jméno.",
"Preparing update" : "Příprava na aktualizaci",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair warning: " : "Upozornění opravy:",
"Repair error: " : "Chyba opravy:",
- "Please use the command line updater because automatic updating is disabled in the config.php." : "Prosím použijte aktualizační příkazový řádek, protože automatická aktualizace je zakázána v config.php",
+ "Please use the command line updater because automatic updating is disabled in the config.php." : "Použijte aktualizační příkazový řádek, protože automatická aktualizace je zakázána v config.php",
"[%d / %d]: Checking table %s" : "[%d / %d]: Kontrola tabulky %s",
"Turned on maintenance mode" : "Zapnut režim údržby",
"Turned off maintenance mode" : "Vypnut režim údržby",
- "Maintenance mode is kept active" : "Mód údržby je aktivní",
- "Waiting for cron to finish (checks again in 5 seconds) …" : "Čekání na dokončení cronu (zkontroluje znovu za 5 sekund) ...",
+ "Maintenance mode is kept active" : "Režim údržby je aktivní",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "Čekání na dokončení cronu (zkontroluje znovu za 5 sekund)…",
"Updating database schema" : "Aktualizace schéma databáze",
"Updated database" : "Zaktualizována databáze",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "Probíhá ověření, zda je možné aktualizovat schéma databáze (toto může trvat déle v závislosti na velikosti databáze)",
"Checked database schema update" : "Aktualizace schéma databáze byla ověřena",
"Checking updates of apps" : "Kontrola aktualizace aplikací",
- "Checking for update of app \"%s\" in appstore" : "Hledám aktualizaci aplikace \"%s\" v obchodu s aplikacemi",
- "Update app \"%s\" from appstore" : "Aktualizuji aplikaci \"%s\" z obchodu s aplikacemi",
- "Checked for update of app \"%s\" in appstore" : "Zkontrolována aktualizace aplikace \"%s\" v obchodu s aplikacemi",
+ "Checking for update of app \"%s\" in appstore" : "Hledám aktualizaci aplikace „%s“ v obchodu s aplikacemi",
+ "Update app \"%s\" from appstore" : "Aktualizuje se aplikace „%s“ z katalogu aplikací",
+ "Checked for update of app \"%s\" in appstore" : "Zkontrolována aktualizace aplikace „%s“ v katalogu aplikací",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Probíhá ověření, zda je možné aktualizovat schéma databáze %s (toto může trvat déle v závislosti na velikosti databáze)",
"Checked database schema update for apps" : "Aktualizace schéma databáze aplikací byla ověřena",
- "Updated \"%s\" to %s" : "Aktualizováno z \"%s\" na %s",
+ "Updated \"%s\" to %s" : "Aktualizováno z „%s“ na %s",
"Set log level to debug" : "Nastavit úroveň logování na debug",
"Reset log level" : "Resetovat úroveň logování",
"Starting code integrity check" : "Spouští se kontrola integrity kódu",
@@ -52,19 +52,19 @@
"%s (incompatible)" : "%s (nekompatibilní)",
"Following apps have been disabled: %s" : "Následující aplikace byly vypnuty: %s",
"Already up to date" : "Je již aktuální",
- "Search contacts …" : "Prohledat kontakty...",
- "No contacts found" : "Nebyly nalezeny žádné kontakty",
- "Show all contacts …" : "Zobrazit všechny kontakty …",
- "Could not load your contacts" : "Nelze načíst vaše kontakty",
- "Loading your contacts …" : "Načítání vašich kontaktů …",
- "Looking for {term} …" : "Hledání {term} …",
+ "Search contacts …" : "Prohledat kontakty…",
+ "No contacts found" : "Nenalezeny žádné kontakty",
+ "Show all contacts …" : "Zobrazit všechny kontakty…",
+ "Could not load your contacts" : "Nedaří se načíst vaše kontakty",
+ "Loading your contacts …" : "Načítání vašich kontaktů…",
+ "Looking for {term} …" : "Hledání {term}…",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">Došlo k problémům při kontrole integrity kódu. Více informací…</a>",
"No action available" : "Není dostupná žádná akce",
"Error fetching contact actions" : "Chyba při získávání akcí kontaktů",
"Settings" : "Nastavení",
"Connection to server lost" : "Připojení k serveru ztraceno",
"_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problém s načítáním stránky, obnovení za %n sekundu","Problém s načítáním stránky, obnovení za %n sekundy","Problém s načítáním stránky, obnovení za %n sekund","Problém s načítáním stránky, obnovení za %n sekund"],
- "Saving..." : "Ukládám...",
+ "Saving..." : "Ukládání…",
"Dismiss" : "Zamítnout",
"Authentication required" : "Vyžadováno ověření",
"This action requires you to confirm your password" : "Tato akce vyžaduje zadání vašeho hesla",
@@ -76,7 +76,7 @@
"The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "Odkaz na obnovení hesla byl odeslán na vaši e-mailovou adresu. Pokud jej v krátké době neobdržíte, zkontrolujte nevyžádanou poštu a koš.<br>Pokud jej nenaleznete, kontaktujte svého správce systému.",
"Your files are encrypted. There will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "Vaše soubory jsou šifrovány. Po vyresetování vašeho hesla nebudete moc získat data zpět.<br/>Pokud si nejste jisti tím co děláte, předtím než budete pokračovat, kontaktujte vašeho administrátora.<br/>Opravdu chcete pokračovat?",
"I know what I'm doing" : "Vím co dělám",
- "Password can not be changed. Please contact your administrator." : "Heslo nelze změnit. Kontaktujte prosím svého správce systému.",
+ "Password can not be changed. Please contact your administrator." : "Heslo nelze změnit. Obraťte se na svého správce systému.",
"Reset password" : "Obnovit heslo",
"Sending email …" : "Odesílání e-mailu…",
"No" : "Ne",
@@ -86,7 +86,7 @@
"Choose" : "Vybrat",
"Copy" : "Zkopírovat",
"Move" : "Přesunout",
- "Error loading file picker template: {error}" : "Chyba při nahrávání šablony výběru souborů: {error}",
+ "Error loading file picker template: {error}" : "Chyba při načítání šablony výběru souborů: {error}",
"OK" : "OK",
"Error loading message template: {error}" : "Chyba při nahrávání šablony zprávy: {error}",
"read-only" : "pouze ke čtení",
@@ -111,38 +111,56 @@
"So-so password" : "Středně silné heslo",
"Good password" : "Dobré heslo",
"Strong password" : "Silné heslo",
- "Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Váš webový server ještě není správně nastaven, pro umožnění synchronizace souborů, rozhraní WebDAV je pravděpodobně nefunkční.",
- "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Váš webový server není správně nastaven pro rozpoznání \"{url}\". Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Váš webový server ještě není správně nastaven, pro umožnění synchronizace souborů, rozhraní WebDAV pravděpodobně není funkční.",
+ "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Váš webový server není správně nastaven pro rozpoznání „{url}“. Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "Zdá se, že PHP není správně nastaveno pro dotazování proměnných prostředí systému. Test s příkazem getenv (\"PATH\") vrátí pouze prázdnou odpověď.",
- "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Vaše databáze neběží s úrovní izolace transakcí \"READ COMMITTED\". Toto může způsobit problémy při paralelním spouštění více akcí současně.",
- "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "Modul PHP 'fileinfo' chybí. Důrazně se doporučuje zapnout tento modul pro zajištění lepší detekce MIME typů.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "Nahlédněte do <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">instalační dokumentace ↗</a> kvůli poznámkám pro nastavování PHP a zkontrolujte nastavení PHP na svém serveru, zejména pokud používáte php-fpm.",
+ "The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Nastavení bylo přepnuto do režimu pouze pro čtení. To brání změnám prostřednictvím webového rozhraní. Dále při každé aktualizaci, je třeba soubor ručně zpřístupnit pro zápis.",
+ "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Vaše databáze není spuštěná s úrovní izolace transakcí „READ COMMITTED“. Toto může způsobit problémy při paralelním spouštění více akcí současně.",
+ "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "Modul PHP „fileinfo“ chybí. Důrazně se doporučuje zapnout tento modul pro zajištění lepšího zjišťování MIME typů.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "Je nainstalovaná {name} starší verze než {version}. Z důvodu stability a výkonu je doporučeno aktualizovat na novější verzi {name}.",
+ "Transactional file locking is disabled, this might lead to issues with race conditions. Enable \"filelocking.enabled\" in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a> for more information." : "Transakční zamykání souborů je vypnuto, což může vést k problémům při souběžném přístupu. Abyste se jim vyhli, zapněte v config.php volbu „filelocking.enabled“. Další informace naleznete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci ↗</a>.",
+ "If your installation is not installed at the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (suggestion: \"{suggestedOverwriteCliURL}\")" : "Pokud se vaše instalace nenachází v kořeni domény a používá plánovač systému, může být problém s vytvářením URL adres. Abyste se jim vyhnuli, nastavte volbu „overwrite.cli.url“ v souboru config.php na umístění kořene webu vaší instalace (doporučení: „{suggestedOverwriteCliURL}“)",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebylo možné vykonat naplánovanou úlohu z příkazového řádku. Objevily se následující technické chyby:",
"Last background job execution ran {relativeTime}. Something seems wrong." : "Běh posledního cronjobu: {relativeTime}. Vypadá to, že něco není v pořádku.",
- "Check the background job settings" : "Prověřte nastavení cronjobu",
+ "Check the background job settings" : "Prověřte nastavení cronjob na pozadí",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Tento server nemá funkční připojení k Internetu: Nedaří se připojit k vícero koncovým bodům. Některé moduly jako např. externí úložiště, oznámení o dostupných aktualizacích, nebo instalace aplikací třetích stran nebudou fungovat. Přístup k souborům z jiných míst a odesílání oznamovacích emailů také nemusí fungovat. Pokud chcete využívat všechny možnosti tohoto serveru, doporučujeme povolit připojení k Internetu.",
- "No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nebyla nakonfigurována paměťová cache. Pokud je dostupná, nakonfigurujte ji prosím pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nebyla nastavena mezipaměť v paměti. Pokud je dostupná, nastavte ji pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP nenalezlo žádný použitelný zdroj náhodnosti, což je silně nedoporučeno z důvodu zabezpečení. Bližší informace naleznete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Aktuálně používáte PHP {version}. Aktualizujte verzi PHP, abyste mohli využít <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">výkonnostní a bezpečnostní aktualizace poskytované autory PHP</a> tak rychle, jak to vaše distribuce umožňuje.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Aktuálně používáte PHP 5.6. Aktuální verze Nextcloud podporuje verzi PHP 5.6, ale je doporučený upgrade na PHP verzi 7.0 a vyšší pro upgrade na Nextcloud 14",
- "The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfigurace hlaviček reverzní proxy není správná nebo přistupujete na Nextcloud z důvěryhodné proxy. Pokud nepřistupujete k Nextcloud z důvěryhodné proxy, potom je toto bezpečností chyba a může útočníkovi umožnit falšovat IP adresu, kterou NextCloud vidí. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
- "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nakonfigurován memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul \"memcache\". \\OC\\Memcache\\Memcached podporuje pouze \"memcached\" a ne \"memcache\". Podívejte se na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
+ "The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nastavení hlaviček reverzní proxy není správné nebo přistupujete na Nextcloud z důvěryhodné proxy. Pokud nepřistupujete k Nextcloud z důvěryhodné proxy, potom je toto bezpečností chyba a může útočníkovi umožnit falšovat IP adresu, kterou NextCloud vidí. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
+ "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nastaven memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul „memcache“. \\OC\\Memcache\\Memcached podporuje pouze „memcached“ a ne „memcache“. Podívejte se na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Některé soubory neprošly kontrolou integrity. Více informací o tom jak tento problém vyřešit, lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Seznam neplatných souborů…</a> / <a href=\"{rescanEndpoint}\">Znovu ověřit…</a>)",
+ "The PHP OPcache module is not loaded. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to load it into your PHP installation." : "PHP modul OPcache není načten. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Pro lepší výkon je doporučeno</a> načíst ho do vaší PHP instalace.",
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcache není správně nakonfigurována.<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Pro lepší výkon doporučujeme</a> použít následující nastavení v <code>php.ini</code>:",
- "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP funkce \"set_time_limit\" není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP funkce „set_time_limit“ není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "Vaše PHP nepodporuje FreeType, to bude mít za následky poškození obrázků profilů a nastavení rozhraní",
+ "Missing index \"{indexName}\" in table \"{tableName}\"." : "Chybí index „{indexName}“ v tabulce „{tableName}“.",
+ "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "V databázi chybí některé indexy. Protože přidávání indexů na velkých tabulkách může zabrat nějaký čas, nebyly přidány automaticky. Spuštěním „occ db:add-missing-indices“ je možné tyto chybějící indexy ručně za provozu instance. Po přidání indexů dotazy do těchto tabulek jsou obvykle mnohem rychlejší.",
+ "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "Jako podpůrná databázová vrstva je nyní používáno SQLite. Pro větší instalace doporučujeme přejít na jinou databázi.",
+ "This is particularly recommended when using the desktop client for file synchronisation." : "Toto je doporučeno zejména když používáte pro synchronizaci souborů desktop klienta.",
+ "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a>." : "Pro migraci na jinou databázi použijte nástroj pro příkazový řádek: „occ db:convert-type“, nebo se podívejte do <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentace ↗</a>.",
+ "Use of the the built in php mailer is no longer supported. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Please update your email server settings ↗<a/>." : "Použití odesílání e-mailů, vestavěného v php už není podporováno. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Aktualizujte nastavení svého e-mailového serveru ↗<a/>.",
"The PHP memory limit is below the recommended value of 512MB." : "Limit paměti pro PHP je nastaven na níže než doporučenou hodnotu 512MB.",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Adresáře některých aplikací jsou vlastněny jiným uživatelem, než je ten webového serveru. To může být případ pokud aplikace byly nainstalované ručně. Zkontrolujte oprávnění následujících adresářů aplikací:",
"Error occurred while checking server setup" : "Při ověřování nastavení serveru došlo k chybě",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Váš datový adresář a vaše soubory jsou pravděpodobně dostupné z internetu. Soubor .htaccess nefunguje. Je velmi doporučeno zajistit, aby tento adresář již nebyl dostupný z internetu, nebo byl přesunut mimo document root webového serveru.",
- "The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP hlavička \"{header}\" není nakonfigurována ve shodě s \"{expected}\". To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
- "The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "HTTP hlavička \"{header}\" není nakonfigurována ve shodě s \"{expected}\". To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP hlavička „{header}“ není nastavena ve shodě s „{expected}“. To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "HTTP hlavička „{header}“ není nastavena ve shodě s „{expected}“. To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not set to \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". This can leak referer information. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C Recommendation ↗</a>." : "HTTP hlavička „{header}“ není nastavena na „{val1}“, „{val2}“, „{val3}“ nebo „{val4}“. To může odhalovat referer informaci. Viz <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">doporučení W3C ↗</a>.",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "HTTP hlavička „Strict-Transport-Security“ není nastavena na přinejmenším „{seconds}“ sekund. Pro lepší zabezpečení je doporučeno zapnout HSTS, jak je popsáno v <a href=\"{docUrl}\" rel=\"noreferrer noopener\">tipech pro zabezpečení ↗</a>.",
+ "Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips ↗</a>." : "Přistupujete přes nezabezpečené HTTP. Silně doporučujeme nastavit svůj server tak, aby vyžadoval namísto toho HTTPS, jak je popsáno v <a href=\"{docUrl}\">tipech pro zabezpečení ↗</a>.",
"Shared" : "Sdílené",
"Shared with" : "Sdíleno s",
"Shared by" : "Nasdílel",
"Choose a password for the public link" : "Zadej heslo pro tento veřejný odkaz",
- "Choose a password for the public link or press the \"Enter\" key" : "Zvolte heslo pro veřejný odkaz nebo stiskněte klávesu \"Enter\"",
+ "Choose a password for the public link or press the \"Enter\" key" : "Zvolte heslo pro veřejný odkaz nebo stiskněte klávesu „Enter“",
"Copied!" : "Zkopírováno!",
"Not supported!" : "Nepodporováno!",
"Press ⌘-C to copy." : "Zmáčknout ⌘-C pro kopírování.",
"Press Ctrl-C to copy." : "Zmáčknout Ctrl-C pro kopírování.",
- "Resharing is not allowed" : "Sdílení již sdílené položky není povoleno",
+ "Resharing is not allowed" : "Sdílení už sdílené položky není povoleno",
"Share to {name}" : "Sdílet {name}",
"Copy URL" : "Kopírovat URL",
"Link" : "Odkaz",
@@ -153,14 +171,16 @@
"Allow upload and editing" : "Povolit nahrávání a úpravy",
"Read only" : "Pouze pro čtení",
"File drop (upload only)" : "Přetažení souboru (pouze nahrání)",
- "Set expiration date" : "Nastavit datum vypršení platnosti",
+ "Set expiration date" : "Nastavit datum skončení platnosti",
"Expiration" : "Konec platnosti",
- "Expiration date" : "Datum vypršení platnosti",
+ "Expiration date" : "Datum skončení platnosti",
"Note to recipient" : "Poznámka pro příjemce",
"Share link" : "Sdílet odkaz",
"Enable" : "Povolit",
"Shared with you and the group {group} by {owner}" : "S Vámi a skupinou {group} sdílí {owner}",
"Shared with you and {circle} by {owner}" : "Sdíleno s vámi a {circle} od {owner}",
+ "Shared with you and the conversation {conversation} by {owner}" : "Sdíleno {owner} s vámi a konverzací {conversation}",
+ "Shared with you in a conversation by {owner}" : "Sdílí s vámi {owner} v konverzaci",
"Shared with you by {owner}" : "S Vámi sdílí {owner}",
"Choose a password for the mail share" : "Zvolte si heslo e-mailového sdílení",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} sdílí pomocí odkazu",
@@ -176,28 +196,31 @@
"Can create" : "Může vytvářet",
"Can change" : "Může měnit",
"Can delete" : "Může mazat",
+ "Password protect by Talk" : "Ochrana heslem pomocí Talk",
"Access control" : "Řízení přístupu",
"Could not unshare" : "Nelze zrušit sdílení",
"Error while sharing" : "Chyba při sdílení",
"Share details could not be loaded for this item." : "Detaily sdílení pro tuto položku nelze načíst.",
"_At least {count} character is needed for autocompletion_::_At least {count} characters are needed for autocompletion_" : ["Alespoň {count} znak je vyžadován pro automatické doplňování","Alespoň {count} znaky jsou vyžadovány pro automatické doplňování","Alespoň {count} znaků je vyžadováno pro automatické doplňování","Alespoň {count} znaků je vyžadováno pro automatické doplňování"],
- "This list is maybe truncated - please refine your search term to see more results." : "Tento seznam je možná zkrácený - prosím upřesněte vyhledávací výraz pro více výsledků.",
+ "This list is maybe truncated - please refine your search term to see more results." : "Tento seznam je možná zkrácený - upřesněte vyhledávací výraz pro více výsledků.",
"No users or groups found for {search}" : "Nebyli nalezeni žádní členové ani skupiny pro {search}",
"No users found for {search}" : "Nebyli nalezeni žádní uživatelé pro {search}",
"An error occurred (\"{message}\"). Please try again" : "Došlo k chybě („{message}“). Zkuste to znovu",
"An error occurred. Please try again" : "Došlo k chybě. Zkuste to znovu",
"{sharee} (group)" : "{sharee} (skupina)",
- "{sharee} (remote)" : "{sharee} (vzdálený)",
- "{sharee} (email)" : "{sharee} (email)",
+ "{sharee} (remote)" : "{sharee} (na protějšku)",
+ "{sharee} (remote group)" : "{sharee} (skupina na protějšku)",
+ "{sharee} (email)" : "{sharee} (e-mail)",
"{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (konverzace)",
"Share" : "Sdílet",
"Name or email address..." : "Jméno nebo e-mailová adresa…",
- "Name or federated cloud ID..." : "Jméno nebo sdružené cloud ID...",
- "Name, federated cloud ID or email address..." : "Jméno, sdružené cloud ID, nebo e-mailová adresa...",
+ "Name or federated cloud ID..." : "Jméno nebo identifikátor v rámci sdruženého cloudu…",
+ "Name, federated cloud ID or email address..." : "Jméno, identifikátor v rámci sdruženého cloudu, nebo e-mailová adresa…",
"Name..." : "Jméno…",
"Error" : "Chyba",
"Error removing share" : "Chyba při odstraňování sdílení",
- "Non-existing tag #{tag}" : "Neexistující tag #{tag}",
+ "Non-existing tag #{tag}" : "Neexistující štítek #{tag}",
"restricted" : "omezeno",
"invisible" : "neviditelný",
"({scope})" : "({scope})",
@@ -208,26 +231,26 @@
"unknown text" : "neznámý text",
"Hello world!" : "Zdravím, světe!",
"sunny" : "slunečno",
- "Hello {name}, the weather is {weather}" : "Ahoj {name}, je {weather}",
- "Hello {name}" : "Vítej, {name}",
- "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Toto jsou vaše výsledky hledání<script>alert(1)</script></strong>",
+ "Hello {name}, the weather is {weather}" : "Zdravím {name}, počasí je {weather}",
+ "Hello {name}" : "Vítejte, {name}",
+ "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Toto výsledky pro vaše hledání<script>alert(1)</script></strong>",
"new" : "nový",
"_download %n file_::_download %n files_" : ["stáhnout %n soubor","stáhnout %n soubory","stáhnout %n souborů","stáhnout %n souborů"],
"The update is in progress, leaving this page might interrupt the process in some environments." : "Probíhá aktualizace, opuštění této stránky může v některých prostředích přerušit proces.",
- "Update to {version}" : "Aktualizace na {version}",
+ "Update to {version}" : "Aktualizovat na {version}",
"An error occurred." : "Došlo k chybě.",
- "Please reload the page." : "Načtěte stránku znovu, prosím.",
+ "Please reload the page." : "Načtěte stránku znovu.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Aktualizace nebyla úspěšná. Pro více informací si <a href=\"{url}\">přečtěte komentáře ve fóru</a> pojednávající o tomto problému.",
- "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Aktualizace byla neúspěšná. Nahlaste prosím problém <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">komunitě Nextcloudu</a>",
+ "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Aktualizace nebyla úspěšná. Nahlaste problém <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">komunitě kolem Nextcloud</a>",
"Continue to Nextcloud" : "Pokračovat do Nextcloud",
- "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundu.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundy.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekund.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekund."],
+ "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundu.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundy.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekund.","Aktualizace byla úspěšná. Přesměrování do Nextcloud za %n sekundy."],
"Searching other places" : "Prohledávání ostatních umístění",
"No search results in other folders for {tag}{filter}{endtag}" : "Žádné výsledky v dalších složkách pro {tag}{filter}{endtag}",
- "_{count} search result in another folder_::_{count} search results in other folders_" : ["{count} nález v dalším adresáři","{count} nálezy v dalších adresářích","{count} nálezů v dalších adresářích","{count} nálezů v dalších adresářích"],
+ "_{count} search result in another folder_::_{count} search results in other folders_" : ["{count} nález v další složce","{count} nálezy v dalších složkách","{count} nálezů v dalších složkách","{count} nálezy v dalších složkách"],
"Personal" : "Osobní",
"Users" : "Uživatelé",
"Apps" : "Aplikace",
- "Admin" : "Administrace",
+ "Admin" : "Správa",
"Help" : "Nápověda",
"Access forbidden" : "Přístup zakázán",
"File not found" : "Soubor nenalezen",
@@ -244,17 +267,17 @@
"Code: %s" : "Kód: %s",
"Message: %s" : "Zpráva: %s",
"File: %s" : "Soubor: %s",
- "Line: %s" : "Řádka: %s",
+ "Line: %s" : "Řádek: %s",
"Trace" : "Trasa",
- "Security warning" : "Bezpečnostní varování",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Váš adresář s daty a soubory jsou dostupné z internetu, protože soubor .htaccess nefunguje.",
- "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Pro informace, jak správně nastavit váš server, se podívejte do <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">dokumentace.",
+ "Security warning" : "Varování ohledně zabezpečení",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Váš adresář s daty a soubory jsou dostupné z Internetu, protože soubor .htaccess nefunguje.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "Informace o tom, jak správně nastavit svůj server, naleznete v <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">dokumentaci</a>.",
"Create an <strong>admin account</strong>" : "Vytvořit <strong>účet správce</strong>",
"Username" : "Uživatelské jméno",
"Storage & database" : "Úložiště a databáze",
- "Data folder" : "Adresář s daty",
+ "Data folder" : "Složka s daty",
"Configure the database" : "Nastavit databázi",
- "Only %s is available." : "Pouze %s je dostupný.",
+ "Only %s is available." : "Je k dispozici pouze %s.",
"Install and activate additional PHP modules to choose other database types." : "Pro výběr jiných typů databáze je třeba nainstalovat a povolit dodatečné PHP moduly.",
"For more details check out the documentation." : "Více informací lze nalézt v dokumentaci.",
"Database user" : "Uživatel databáze",
@@ -262,7 +285,7 @@
"Database name" : "Název databáze",
"Database tablespace" : "Tabulkový prostor databáze",
"Database host" : "Hostitel databáze",
- "Please specify the port number along with the host name (e.g., localhost:5432)." : "Prosím, specifikujte port spolu se jménem hostitele (t. j., localhost:5432).",
+ "Please specify the port number along with the host name (e.g., localhost:5432)." : "Zadejte port spolu s názvem hostitele (t. j., localhost:5432).",
"Performance warning" : "Varování o výkonu",
"SQLite will be used as database." : "Bude použita SQLite databáze.",
"For larger installations we recommend to choose a different database backend." : "Pro větší instalace doporučujeme vybrat jiné databázové řešení.",
@@ -270,9 +293,9 @@
"Finish setup" : "Dokončit nastavení",
"Finishing …" : "Dokončování…",
"Need help?" : "Potřebujete pomoc?",
- "See the documentation" : "Shlédnout dokumentaci",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Tato aplikace potřebuje pro správnou funkčnost JavaScript. Prosím {linkstart}povolte JavaScript{linkend} a znovu načtěte stránku.",
- "Skip to main content" : "Přejít k hlavnímu obsahu",
+ "See the documentation" : "Viz dokumentace",
+ "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Tato aplikace potřebuje pro správnou funkčnost JavaScript. {linkstart}Povolte ho{linkend} a znovu načtěte stránku.",
+ "Skip to main content" : "Přeskočit a přejít k hlavnímu obsahu",
"Skip to navigation of app" : "Přejít na navigaci aplikace",
"More apps" : "Více aplikací",
"More apps menu" : "Nabídka dalších aplikací",
@@ -282,10 +305,10 @@
"Contacts menu" : "Nabídka kontaktů",
"Settings menu" : "Nabídka nastavení",
"Confirm your password" : "Potvrdit heslo",
- "Server side authentication failed!" : "Autentizace na serveru selhala!",
- "Please contact your administrator." : "Kontaktujte prosím svého správce systému.",
+ "Server side authentication failed!" : "Ověření na straně serveru se nezdařilo!",
+ "Please contact your administrator." : "Obraťte se na svého správce systému.",
"An internal error occurred." : "Nastala vnitřní chyba.",
- "Please try again or contact your administrator." : "Prosím zkuste to znovu nebo kontaktujte vašeho správce.",
+ "Please try again or contact your administrator." : "Zkuste to znovu nebo se obraťte na svého správce.",
"Username or email" : "Uživatelské jméno/email",
"Log in" : "Přihlásit",
"Wrong password." : "Chybné heslo.",
@@ -294,55 +317,59 @@
"Forgot password?" : "Zapomněli jste heslo?",
"Back to login" : "Zpět na přihlášení",
"Connect to your account" : "Připojit ke svému účtu",
+ "Please log in before granting %s access to your %s account." : "Přihlaste se před udělením %s přístupu k vašemu %s účtu.",
"App token" : "Token aplikace",
"Grant access" : "Povolit přístup",
+ "Alternative log in using app token" : "Alternativní přihlášení pomocí tokenu aplikace",
"Account access" : "Přístup k účtu",
"You are about to grant %s access to your %s account." : "Chystáte se povolit %s přístup k vašemu %s účtu.",
- "Redirecting …" : "Přesměrovávání …",
+ "Redirecting …" : "Přesměrovávání…",
"New password" : "Nové heslo",
"New Password" : "Nové heslo",
"This share is password-protected" : "Toto sdílení je chráněno heslem",
"The password is wrong. Try again." : "Chybné heslo. Zkuste to znovu.",
"Two-factor authentication" : "Dvoufaktorové přihlášení",
- "Enhanced security is enabled for your account. Please authenticate using a second factor." : "Bylo zapnuto vylepšené zabezpečení pro tento účet. Přihlašte se za použití druhého faktoru.",
+ "Enhanced security is enabled for your account. Please authenticate using a second factor." : "Bylo zapnuto vylepšené zabezpečení pro tento účet. Přihlaste se za použití druhého faktoru.",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Nedaří se načíst ani jednu ze zapnutých metod dvouúrovňového ověřování. Obraťte se na svého správce.",
"Cancel log in" : "Zrušit přihlášení",
"Use backup code" : "Použít záložní kód",
"Error while validating your second factor" : "Chyba při ověřování druhého faktoru",
- "Access through untrusted domain" : "Přístup skrz nedůvěryhodnou doménu",
- "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." : "Prosím kontaktujte vašeho administrátora. Pokud jste administrátor, upravte konfigurační hodnotu \"trusted_domains\" v config/config.php podle příkladu v config.sample.php.",
+ "Access through untrusted domain" : "Přístup prostřednictvím nedůvěryhodné domény",
+ "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." : "Obraťte se na svého správce. Pokud jste jím vy, upravte v souboru s nastaveními config/config.php parametr „trusted_domains“ podle příkladu v config.sample.php.",
"Further information how to configure this can be found in the %sdocumentation%s." : "Více informací o tom, jak toto nastavit, jsou k dispozici v%sdokumentaci%s.",
"App update required" : "Vyžadována aktualizace aplikace",
"%s will be updated to version %s" : "%s bude aktualizován na verzi %s",
"These apps will be updated:" : "Následující aplikace budou aktualizovány:",
"These incompatible apps will be disabled:" : "Následující nekompatibilní aplikace budou zakázány:",
"The theme %s has been disabled." : "Vzhled %s byl zakázán.",
- "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Před provedením dalšího kroku se prosím ujistěte, že databáze a konfigurační a datový adresář byly zazálohovány. ",
+ "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Před provedením dalšího kroku se ujistěte, že je zazálohována databáze a složky s nastaveními a daty.",
"Start update" : "Spustit aktualizaci",
- "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Abyste zabránili vypršení časového limitu u větších instalací, můžete namísto toho spustit následující příkaz v hlavním adresáři:",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "U větších instalací, abyste zabránili překračování časového limitu, můžete namísto toho spustit následující příkaz v hlavním adresáři:",
"Detailed logs" : "Podrobné logy",
- "Update needed" : "Potřeba aktualizace",
- "Please use the command line updater because you have a big instance with more than 50 users." : "Prosím použijte aktualizační příkazový řádek, protože máte velkou instanci s více než 50 uživateli.",
- "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Pro pomoc, shlédněte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci</a>.",
+ "Update needed" : "Je třeba provést aktualizaci",
+ "Please use the command line updater because you have a big instance with more than 50 users." : "Použijte aktualizační příkazový řádek, protože máte velkou instanci s více než 50 uživateli.",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation</a>." : "Pro pomoc, nahlédněte do <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentace</a>.",
"I know that if I continue doing the update via web UI has the risk, that the request runs into a timeout and could cause data loss, but I have a backup and know how to restore my instance in case of a failure." : "Beru na vědomí, že při aktualizaci skrze webové rozhraní hrozí nebezpečí vypršení požadavku, který může vyústit ve ztrátu dat. Mám pro takový případ zálohu a vím, jak ji v případě selhání obnovit.",
"Upgrade via web on my own risk" : "Na vlastní nebezpečí aktualizovat skrze web",
"This %s instance is currently in maintenance mode, which may take a while." : "Tato instalace %s je právě ve stavu údržby a to může chvíli trvat.",
"This page will refresh itself when the %s instance is available again." : "Tato stránka se automaticky načte poté, co bude opět dostupná instance %s.",
- "Contact your system administrator if this message persists or appeared unexpectedly." : "Kontaktujte prosím správce systému, pokud se tato zpráva objevuje opakovaně nebo nečekaně.",
+ "Contact your system administrator if this message persists or appeared unexpectedly." : "Pokud se tato zpráva objevuje opakovaně nebo nečekaně, obraťte se správce systému.",
"Thank you for your patience." : "Děkujeme za vaši trpělivost.",
+ "%s (3rdparty)" : "%s (třetí strana)",
"There was an error loading your contacts" : "Při načítání vašich kontaktů došlo k chybě",
"Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Váš webový server, ještě není správně nastaven pro umožnění synchronizace souborů, protože rozhraní WebDAV je pravděpodobně nefunkční.",
- "Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Tento webový server není správně nastaven pro rozpoznání \"{url}\". Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
+ "Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Tento webový server není správně nastaven pro rozpoznání „{url}“. Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Tento server nemá funkční připojení k Internetu: Nedaří se připojit k vícero koncovým bodům. Některé moduly jako např. externí úložiště, oznámení o dostupných aktualizacích nebo instalace aplikací třetích stran nebudou fungovat. Přístup k souborům z jiných míst a odesílání oznamovacích emailů také nemusí fungovat. Pokud chcete využívat všechny možnosti tohoto serveru, doporučujeme povolit připojení k Internetu.",
- "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nebyla nakonfigurována paměťová cache. Pokud je dostupná, nakonfigurujte ji prosím pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nebyla nastavena žádná paměťová cache. Pokud je dostupná, nastavte ji pro zlepšení výkonu. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
"/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP nemá práva pro čtení v /dev/urandom, to je ale z bezpečnostních důvodů velmi doporučováno. Více informací lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Aktuálně používáte PHP {version}. Doporučujeme aktualizovat verzi PHP, abyste mohli využít <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">výkonnostních a bezpečnostních aktualizací poskytovaných autory PHP</a> tak rychle, jak to vaše distribuce umožňuje.",
"The reverse proxy headers configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If you are not accessing Nextcloud from a trusted proxy, this is a security issue and can allow an attacker to spoof their IP address as visible to Nextcloud. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Konfigurace hlaviček reverzní proxy není správná nebo přistupujete na Nextcloud z důvěryhodné proxy. Pokud nepřistupujete k Nextcloud z důvěryhodné proxy, potom je toto bezpečností chyba a může útočníkovi umožnit falšovat IP adresu, kterou Nextcloud vidí. Další informace lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>.",
- "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nakonfigurován memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul \"memcache\". \\OC\\Memcache\\Memcached podporuje pouze \"memcached\" a ne \"memcache\". Podívejte se na <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
+ "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Je nastaven memcached jako distribuovaná cache, ale je nainstalovaný nesprávný PHP modul „memcache“. \\OC\\Memcache\\Memcached podporuje pouze „memcached“ a ne „memcache“. Podívejte se na <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki pro oba moduly</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Některé soubory neprošly kontrolou integrity. Více informací o tom jak tento problém vyřešit, lze nalézt v naší <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentaci</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Seznam neplatných souborů…</a> / <a href=\"{rescanEndpoint}\">Znovu ověřit…</a>)",
- "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcache není správně nakonfigurována.<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Pro lepší výkon doporučujeme</a> použít následující nastavení v <code>php.ini</code>:",
- "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP funkce \"set_time_limit\" není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcache není správně nastavena.<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Pro lepší výkon doporučujeme</a> použít následující nastavení v <code>php.ini</code>:",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP funkce „set_time_limit„ není dostupná. To může způsobit ukončení skriptů uprostřed provádění a další problémy s instalací. Doporučujeme tuto funkci povolit.",
"Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "Váš datový adresář a vaše soubory jsou pravděpodobně dostupné z internetu. Soubor .htaccess nefunguje. Je velmi doporučeno zajistit, aby tento adresář již nebyl dostupný z internetu, nebo byl přesunut mimo document root webového serveru.",
- "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "HTTP hlavička \"{header}\" není nakonfigurována ve shodě s \"{expected}\". To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "HTTP hlavička „{header}„ není nastavená ve shodě s „{expected}“. To značí možné ohrožení bezpečnosti a soukromí a je doporučeno toto nastavení upravit.",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "HTTP hlavička \"Strict-Transport-Security\" není nakonfigurována na minimum \"{seconds}\" sekund. Pro vylepšení bezpečnosti doporučujeme povolit HSTS dle popisu v našich <a href=\"{docUrl}\" rel=\"noreferrer\">bezpečnostních tipech</a>.",
"You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "Přistupujete na tuto stránku přes protokol HTTP. Důrazně doporučujeme nakonfigurovat server tak, aby vyžadoval použití HTTPS jak je popsáno v našich <a href=\"{docUrl}\">bezpečnostních tipech</a>.",
"Shared with {recipients}" : "Sdíleno s {recipients}",
@@ -361,12 +388,13 @@
"You are about to grant \"%s\" access to your %s account." : "Chystáte se povolit %s přístup k vašemu %s účtu.",
"Alternative login using app token" : "Alternativní přihlášení pomocí tokenu aplikace",
"You are accessing the server from an untrusted domain." : "Přistupujete na server z nedůvěryhodné domény.",
- "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Kontaktujte prosím svého správce. Pokud spravujete tuto instalaci, nastavte \"trusted_domains\" v souboru config/config.php. Příklad konfigurace najdete v souboru config/config.sample.php.",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Kontaktujte prosím svého správce. Pokud spravujete tuto instalaci, nastavte „trusted_domains“ v souboru config/config.php. Příklad konfigurace najdete v souboru config/config.sample.php.",
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "V závislosti na vaší konfiguraci vám může být, jako správci, umožněno použití tlačítka níže k označení této domény jako důvěryhodné.",
- "Add \"%s\" as trusted domain" : "Přidat \"%s\" jako důvěryhodnou doménu",
+ "Add \"%s\" as trusted domain" : "Přidat „%s“ jako důvěryhodnou doménu",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Pro pomoc, nahlédněte do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentace</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom není pro PHP přístupné pro čtení, což je silně nedoporučeno z důvodu zabezpečení. Další informace jsou k nalezení v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentaci</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Váš PHP nepodporuje freetype. Následek budou požkozené profilové obrázky a nastavení rozhraní",
- "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP hlavička \"Strict-Transport-Security\" není nakonfigurována na minimum \"{seconds}\" sekund. Pro vylepšení bezpečnosti doporučujeme povolit HSTS dle popisu v našich <a href=\"{docUrl}\" rel=\"noreferrer noopener\">bezpečnostních tipech</a>.",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP hlavička „Strict-Transport-Security“ není nakonfigurována na minimum \"{seconds}\" sekund. Pro vylepšení bezpečnosti doporučujeme povolit HSTS dle popisu v našich <a href=\"{docUrl}\" rel=\"noreferrer noopener\">bezpečnostních tipech</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Přistupujete na tuto stránku přes protokol HTTP. Důrazně doporučujeme nakonfigurovat server tak, aby vyžadoval použití HTTPS jak je popsáno v našich <a href=\"{docUrl}\">bezpečnostních tipech</a>.",
"Back to log in" : "Zpět na přihlášení",
"Depending on your configuration, this button could also work to trust the domain:" : "V závislosti na vaší konfiguraci by pro označení domény za důvěryhodnou mohlo fungovat i toto tlačítko:"
diff --git a/core/l10n/da.js b/core/l10n/da.js
index c63a92041f7..70704e35b4a 100644
--- a/core/l10n/da.js
+++ b/core/l10n/da.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Din webserver er ikke sat op til at benytte \"{url}\". Nærmere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Serveren har ikke nogen fungerende internetforbindelse: Nogle data kan ikke tilgås. Det betyder at funktioner som forbinde eksterne enheder, notifikationer om opdateringer og installation af 3.parts udvidelser ikke vil virke. Få forbindelse til filer og sende notifikations email virker måske heller ikke. \nVi anbefaler at du får etableret en internetforbindelse hvis du ønsker alle funktioner skal virke.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Der er ikke konfigureret noget hukommelsesmellemlager. For at forbedre din ydelse bør du om muligt konfigurere en mamcache. Yderligere information findes i <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentationen</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom kan ikke læses af PHP, hvilket stærkt frarådes af sikkerhedsgrunde. Yderligere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du kører i øjeblikket med PHP {version}. Vi anbefaler dig at opgradere din PHP version for at få glæde af <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">ydelses- og sikkerhedsopdateringer udgivet af the PHP Group</a> så snart din dintribution understøtter dem.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Du kører PHP 5.6. Den nuværende større version af Nextcloud er den sidste, der understøttes på PHP 5.6. Det anbefales at opgradere PHP-versionen til 7.0+ for at kunne opgradere til Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfigurationen af reverse proxy-headere er ikke korrekt eller du tilgår Nextcloud fra en betroet proxy. Hvis du ikke tilgår Nextcloud fra en betroet proxy, så er dette et sikkerhedsproblem og kan tillade en angriber af forfalske deres IP-adresse som synlig for Nextcloud. Yderligere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
@@ -344,6 +343,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Afhænger af din konfiguration, da du som administrator eventuelt også er i stand til at gøre brug af knappen nedenfor til at tildele tillid til dette domæne.",
"Add \"%s\" as trusted domain" : "Tilføj \"%s\" som et troværdigt domæne",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "For hjælp se <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentationen</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom kan ikke læses af PHP, hvilket stærkt frarådes af sikkerhedsgrunde. Yderligere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Din PHP version har ikke FreeType-support, hvilket resulterer i brud på profilbilleder og indstillingerne.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP headeren \"Strict-Transport-Security\" er ikke konfigureret til mindst \"{seconds}\" sekunder. For bedre sikkerhed anbefaler vi at aktivere HSTS som beskrevet i vores <a href=\"{docUrl}\" rel=\"noreferrer\">sikkerhedstips</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Du tilgår dette sted gennem HTTP. Vi anbefaler kraftigt at du konfigurerer din server, så der kræves brug af HTTPS i stedet for, som foreskrevet i vores <a href=\"{docUrl}\">sikkerhedstips</a>.",
diff --git a/core/l10n/da.json b/core/l10n/da.json
index c9c102592c7..c3ed98fd073 100644
--- a/core/l10n/da.json
+++ b/core/l10n/da.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Din webserver er ikke sat op til at benytte \"{url}\". Nærmere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Serveren har ikke nogen fungerende internetforbindelse: Nogle data kan ikke tilgås. Det betyder at funktioner som forbinde eksterne enheder, notifikationer om opdateringer og installation af 3.parts udvidelser ikke vil virke. Få forbindelse til filer og sende notifikations email virker måske heller ikke. \nVi anbefaler at du får etableret en internetforbindelse hvis du ønsker alle funktioner skal virke.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Der er ikke konfigureret noget hukommelsesmellemlager. For at forbedre din ydelse bør du om muligt konfigurere en mamcache. Yderligere information findes i <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentationen</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom kan ikke læses af PHP, hvilket stærkt frarådes af sikkerhedsgrunde. Yderligere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du kører i øjeblikket med PHP {version}. Vi anbefaler dig at opgradere din PHP version for at få glæde af <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">ydelses- og sikkerhedsopdateringer udgivet af the PHP Group</a> så snart din dintribution understøtter dem.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Du kører PHP 5.6. Den nuværende større version af Nextcloud er den sidste, der understøttes på PHP 5.6. Det anbefales at opgradere PHP-versionen til 7.0+ for at kunne opgradere til Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfigurationen af reverse proxy-headere er ikke korrekt eller du tilgår Nextcloud fra en betroet proxy. Hvis du ikke tilgår Nextcloud fra en betroet proxy, så er dette et sikkerhedsproblem og kan tillade en angriber af forfalske deres IP-adresse som synlig for Nextcloud. Yderligere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
@@ -342,6 +341,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Afhænger af din konfiguration, da du som administrator eventuelt også er i stand til at gøre brug af knappen nedenfor til at tildele tillid til dette domæne.",
"Add \"%s\" as trusted domain" : "Tilføj \"%s\" som et troværdigt domæne",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "For hjælp se <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentationen</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom kan ikke læses af PHP, hvilket stærkt frarådes af sikkerhedsgrunde. Yderligere information kan findes i vores <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Din PHP version har ikke FreeType-support, hvilket resulterer i brud på profilbilleder og indstillingerne.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP headeren \"Strict-Transport-Security\" er ikke konfigureret til mindst \"{seconds}\" sekunder. For bedre sikkerhed anbefaler vi at aktivere HSTS som beskrevet i vores <a href=\"{docUrl}\" rel=\"noreferrer\">sikkerhedstips</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Du tilgår dette sted gennem HTTP. Vi anbefaler kraftigt at du konfigurerer din server, så der kræves brug af HTTPS i stedet for, som foreskrevet i vores <a href=\"{docUrl}\">sikkerhedstips</a>.",
diff --git a/core/l10n/de.js b/core/l10n/de.js
index f34310e16af..5c93e83f65b 100644
--- a/core/l10n/de.js
+++ b/core/l10n/de.js
@@ -107,14 +107,14 @@ OC.L10N.register(
"Copy to {folder}" : "Kopieren nach {folder}",
"Move to {folder}" : "Verschieben nach {folder}",
"New in" : "Neu in",
- "View changelog" : "Liste der Veränderungen anschauen",
+ "View changelog" : "Liste der Veränderungen ansehen",
"Very weak password" : "Sehr schwaches Passwort",
"Weak password" : "Schwaches Passwort",
"So-so password" : "Passables Passwort",
"Good password" : "Gutes Passwort",
"Strong password" : "Starkes Passwort",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Dein Webserver ist noch nicht hinreichend für Datei-Synchronisation konfiguriert, da die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
- "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Dein Web-Server ist nicht richtig eingerichtet um \"{url}\" aufzulösen. Weitere Informationen findest du in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
+ "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Dein Web-Server ist nicht richtig eingerichtet um \"{url}\" aufzulösen. Weitere Informationen findest Du in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP scheint zur Abfrage von Systemumgebungsvariablen nicht richtig eingerichtet zu sein. Der Test mit getenv(\"PATH\") liefert nur eine leere Antwort zurück.",
"Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "Bitte die <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Installationsdokumentation ↗</a> auf Hinweise zur PHP-Konfiguration durchlesen, sowie die PHP-Konfiguration Deines Servers überprüfen, insbesondere dann, wenn PHP-FPM eingesetzt wird.",
"The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Die schreibgeschützte Konfiguration wurde aktiviert. Dies verhindert das Setzen einiger Einstellungen über die Web-Schnittstelle. Weiterhin muss bei jedem Update der Schreibzugriff auf die Datei händisch aktiviert werden.",
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Überprüfe Cron-Job Einstellungen",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. Der Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren. Um alle Funktionen nutzen zu können, stelle eine Internet-Verbindung für diesen Server her.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen finden Sie in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Von PHP wurde keine geeignete Quelle für Zufälligkeit gefunden, aus Sicht der Sicherheit ist dies bedenklich. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du verwendest derzeit PHP {version}. Upgrade deine PHP-Version, um die <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP-Gruppe bereitgestellt werden</a>, sobald diese Deine Distribution unterstützt.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Du verwendest PHP 5.6. Die aktuelle Version von Nextcloud ist die letzte Version, die PHP 5.6 unterstützt. Es empfiehlt sich die PHP-Version auf 7.0 oder höher zu aktualisieren, um in der Lage zu sein, auf Nextcloud 14 zu aktualisieren.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Die Reverse-Proxy-Header-Konfiguration ist fehlerhaft oder Sie greifen auf Nextcloud über einen vertrauenswürdigen Proxy zu. Ist dies nicht der Fall, dann besteht ein Sicherheitsproblem, das einem Angreifer erlaubt die IP-Adresse, die für Nextcloud sichtbar ist, auszuspähen. Weitere Informationen hierzu finde sich in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "{owner} hat dies mit Dir und der Gruppe {group} geteilt",
"Shared with you and {circle} by {owner}" : "Von {owner} mit Dir und {circle} geteilt",
"Shared with you and the conversation {conversation} by {owner}" : "Von {owner} mit Ihnen und der Unterhaltung {conversation} geteilt",
+ "Shared with you in a conversation by {owner}" : "Mit Dir in einer Unterhaltung geteilt von {owner}",
"Shared with you by {owner}" : "{owner} hat dies mit Dir geteilt",
"Choose a password for the mail share" : "Wähle ein Passwort für das Teilen via E-Mail",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} mittels Link geteilt",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Wenn es Deine Konfiguration zulässt, kannst Du als Administrator die folgende Schaltfläche benutzen, um diese Domain als vertrauenswürdig einzustufen.",
"Add \"%s\" as trusted domain" : "„%s“ als vertrauenswürdige Domain hinzufügen",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Für weitere Hilfen, schaue bitte in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Dein PHP unterstützt Freetype nicht. Dies wird defekte Profilbilder und eine defekte Anzeige der Einstellungen verursachen.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Der \"Strict-Transport-Security\" HTTP-Header ist nicht auf mindestens \"{seconds}\" Sekunden eingestellt. Für mehr Sicherheit wird das Aktivieren von HSTS empfohlen, wie es in den <a href=\"{docUrl}\" rel=\"noreferrer noopener\">Sicherheitshinweisen</a> erläutert ist.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Der Zugriff auf diese Site erfolgt über HTTP. Es wird dringend geraten, Ihren Server so zu konfigurieren, dass er stattdessen nur HTTPS akzeptiert, wie es in den <a href=\"{docUrl}\">Sicherheitshinweisen</a> beschrieben ist.",
diff --git a/core/l10n/de.json b/core/l10n/de.json
index 0352314c821..70819067888 100644
--- a/core/l10n/de.json
+++ b/core/l10n/de.json
@@ -105,14 +105,14 @@
"Copy to {folder}" : "Kopieren nach {folder}",
"Move to {folder}" : "Verschieben nach {folder}",
"New in" : "Neu in",
- "View changelog" : "Liste der Veränderungen anschauen",
+ "View changelog" : "Liste der Veränderungen ansehen",
"Very weak password" : "Sehr schwaches Passwort",
"Weak password" : "Schwaches Passwort",
"So-so password" : "Passables Passwort",
"Good password" : "Gutes Passwort",
"Strong password" : "Starkes Passwort",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Dein Webserver ist noch nicht hinreichend für Datei-Synchronisation konfiguriert, da die WebDAV-Schnittstelle vermutlich nicht funktioniert.",
- "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Dein Web-Server ist nicht richtig eingerichtet um \"{url}\" aufzulösen. Weitere Informationen findest du in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
+ "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Dein Web-Server ist nicht richtig eingerichtet um \"{url}\" aufzulösen. Weitere Informationen findest Du in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP scheint zur Abfrage von Systemumgebungsvariablen nicht richtig eingerichtet zu sein. Der Test mit getenv(\"PATH\") liefert nur eine leere Antwort zurück.",
"Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "Bitte die <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Installationsdokumentation ↗</a> auf Hinweise zur PHP-Konfiguration durchlesen, sowie die PHP-Konfiguration Deines Servers überprüfen, insbesondere dann, wenn PHP-FPM eingesetzt wird.",
"The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Die schreibgeschützte Konfiguration wurde aktiviert. Dies verhindert das Setzen einiger Einstellungen über die Web-Schnittstelle. Weiterhin muss bei jedem Update der Schreibzugriff auf die Datei händisch aktiviert werden.",
@@ -126,7 +126,7 @@
"Check the background job settings" : "Überprüfe Cron-Job Einstellungen",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. Der Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren. Um alle Funktionen nutzen zu können, stelle eine Internet-Verbindung für diesen Server her.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen finden Sie in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Von PHP wurde keine geeignete Quelle für Zufälligkeit gefunden, aus Sicht der Sicherheit ist dies bedenklich. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du verwendest derzeit PHP {version}. Upgrade deine PHP-Version, um die <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP-Gruppe bereitgestellt werden</a>, sobald diese Deine Distribution unterstützt.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Du verwendest PHP 5.6. Die aktuelle Version von Nextcloud ist die letzte Version, die PHP 5.6 unterstützt. Es empfiehlt sich die PHP-Version auf 7.0 oder höher zu aktualisieren, um in der Lage zu sein, auf Nextcloud 14 zu aktualisieren.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Die Reverse-Proxy-Header-Konfiguration ist fehlerhaft oder Sie greifen auf Nextcloud über einen vertrauenswürdigen Proxy zu. Ist dies nicht der Fall, dann besteht ein Sicherheitsproblem, das einem Angreifer erlaubt die IP-Adresse, die für Nextcloud sichtbar ist, auszuspähen. Weitere Informationen hierzu finde sich in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "{owner} hat dies mit Dir und der Gruppe {group} geteilt",
"Shared with you and {circle} by {owner}" : "Von {owner} mit Dir und {circle} geteilt",
"Shared with you and the conversation {conversation} by {owner}" : "Von {owner} mit Ihnen und der Unterhaltung {conversation} geteilt",
+ "Shared with you in a conversation by {owner}" : "Mit Dir in einer Unterhaltung geteilt von {owner}",
"Shared with you by {owner}" : "{owner} hat dies mit Dir geteilt",
"Choose a password for the mail share" : "Wähle ein Passwort für das Teilen via E-Mail",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} mittels Link geteilt",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Wenn es Deine Konfiguration zulässt, kannst Du als Administrator die folgende Schaltfläche benutzen, um diese Domain als vertrauenswürdig einzustufen.",
"Add \"%s\" as trusted domain" : "„%s“ als vertrauenswürdige Domain hinzufügen",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Für weitere Hilfen, schaue bitte in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Dein PHP unterstützt Freetype nicht. Dies wird defekte Profilbilder und eine defekte Anzeige der Einstellungen verursachen.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Der \"Strict-Transport-Security\" HTTP-Header ist nicht auf mindestens \"{seconds}\" Sekunden eingestellt. Für mehr Sicherheit wird das Aktivieren von HSTS empfohlen, wie es in den <a href=\"{docUrl}\" rel=\"noreferrer noopener\">Sicherheitshinweisen</a> erläutert ist.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Der Zugriff auf diese Site erfolgt über HTTP. Es wird dringend geraten, Ihren Server so zu konfigurieren, dass er stattdessen nur HTTPS akzeptiert, wie es in den <a href=\"{docUrl}\">Sicherheitshinweisen</a> beschrieben ist.",
diff --git a/core/l10n/de_DE.js b/core/l10n/de_DE.js
index fdb29b7c3c8..33f83453612 100644
--- a/core/l10n/de_DE.js
+++ b/core/l10n/de_DE.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Überprüfe Cron-Job Einstellungen",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. Der Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren. Um alle Funktionen nutzen zu können, stellen Sie bitte eine Internet-Verbindung für diesen Server her.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen finden Sie in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Von PHP wurde keine geeignete Quelle für Zufälligkeit gefunden, aus Sicht der Sicherheit ist dies bedenklich. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Sie verwenden im Moment PHP {version}. Upgraden Sie Ihre PHP-Version, um die <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP-Gruppe bereitgestellt werden</a>, sobald Ihre Distribution diese unterstützt.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Sie verwenden PHP 5.6. Die aktuelle Version von Nextcloud ist die letzte Version, die PHP 5.6 unterstützt. Es empfiehlt sich die PHP-Version auf 7.0 oder höher zu aktualisieren, um in der Lage zu sein, auf Nextcloud 14 zu aktualisieren.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Die Reverse-Proxy-Header-Konfiguration ist fehlerhaft oder Sie greifen auf Nextcloud über einen vertrauenswürdigen Proxy zu. Ist dies nicht der Fall, dann besteht ein Sicherheitsproblem, das einem Angreifer erlaubt die IP-Adresse, die für Nextcloud sichtbar ist, auszuspähen. Weitere Informationen hierzu finde sich in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "Von {owner} mit Ihnen und der Gruppe {group} geteilt.",
"Shared with you and {circle} by {owner}" : "Von {owner} mit Ihnen und {circle} geteilt",
"Shared with you and the conversation {conversation} by {owner}" : "Von {owner} mit Ihnen und der Unterhaltung {conversation} geteilt",
+ "Shared with you in a conversation by {owner}" : "Mit Ihnen in einer Unterhaltung geteilt von {owner}",
"Shared with you by {owner}" : "Von {owner} mit Ihnen geteilt.",
"Choose a password for the mail share" : "Wählen Sie ein Passwort für das Teilen via E-Mail",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} mittels Link geteilt",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Wenn es Ihre Konfiguration zulässt, können Sie als Administrator gegebenenfalls den Button unten benutzen, um diese Domain als vertrauenswürdig einzustufen.",
"Add \"%s\" as trusted domain" : "„%s“ als vertrauenswürdige Domain hinzufügen",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Für weitere Hilfen, schauen Sie bitte in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Ihr PHP unterstützt Freetype nicht. Dies wird defekte Profilbilder und eine defekte Anzeige der Einstellungen verursachen.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Der \"Strict-Transport-Security“-HTTP-Header ist nicht auf mindestens \"{seconds}“ Sekunden eingestellt. Für mehr Sicherheit wird das Aktivieren von HSTS empfohlen, wie es in den <a href=\"{docUrl}\" rel=\"noreferrer noopener\">Sicherheitshinweisen</a> erläutert ist.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Der Zugriff auf diese Site erfolgt über HTTP. Es wird dringend geraten, den Server so zu konfigurieren, dass er stattdessen nur HTTPS akzeptiert, wie es in den <a href=\"{docUrl}\">Sicherheitshinweisen</a> beschrieben ist.",
diff --git a/core/l10n/de_DE.json b/core/l10n/de_DE.json
index e09cfa4eddb..2433f7ac591 100644
--- a/core/l10n/de_DE.json
+++ b/core/l10n/de_DE.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Überprüfe Cron-Job Einstellungen",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Dieser Server hat keine funktionierende Internetverbindung: Mehrere Ziele konnten nicht erreicht werden. Dies bedeutet, dass einige Funktionen, wie das Einhängen exernen Speichers, Benachrichtigungen über Updates oder die Installation von Drittanbieter-Apps nicht funktionieren. Der Zugriff auf entfernte Dateien und das Senden von E-Mail-Benachrichtigungen wird wahrscheinlich ebenfalls nicht funktionieren. Um alle Funktionen nutzen zu können, stellen Sie bitte eine Internet-Verbindung für diesen Server her.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Es wurde kein PHP-Memory-Cache konfiguriert. Zur Erhöhung der Leistungsfähigkeit kann ein Memory-Cache konfiguriert werden. Weitere Informationen finden Sie in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Von PHP wurde keine geeignete Quelle für Zufälligkeit gefunden, aus Sicht der Sicherheit ist dies bedenklich. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Sie verwenden im Moment PHP {version}. Upgraden Sie Ihre PHP-Version, um die <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">Geschwindigkeits- und Sicherheitsupdates zu nutzen, welche von der PHP-Gruppe bereitgestellt werden</a>, sobald Ihre Distribution diese unterstützt.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Sie verwenden PHP 5.6. Die aktuelle Version von Nextcloud ist die letzte Version, die PHP 5.6 unterstützt. Es empfiehlt sich die PHP-Version auf 7.0 oder höher zu aktualisieren, um in der Lage zu sein, auf Nextcloud 14 zu aktualisieren.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Die Reverse-Proxy-Header-Konfiguration ist fehlerhaft oder Sie greifen auf Nextcloud über einen vertrauenswürdigen Proxy zu. Ist dies nicht der Fall, dann besteht ein Sicherheitsproblem, das einem Angreifer erlaubt die IP-Adresse, die für Nextcloud sichtbar ist, auszuspähen. Weitere Informationen hierzu finde sich in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "Von {owner} mit Ihnen und der Gruppe {group} geteilt.",
"Shared with you and {circle} by {owner}" : "Von {owner} mit Ihnen und {circle} geteilt",
"Shared with you and the conversation {conversation} by {owner}" : "Von {owner} mit Ihnen und der Unterhaltung {conversation} geteilt",
+ "Shared with you in a conversation by {owner}" : "Mit Ihnen in einer Unterhaltung geteilt von {owner}",
"Shared with you by {owner}" : "Von {owner} mit Ihnen geteilt.",
"Choose a password for the mail share" : "Wählen Sie ein Passwort für das Teilen via E-Mail",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} mittels Link geteilt",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Wenn es Ihre Konfiguration zulässt, können Sie als Administrator gegebenenfalls den Button unten benutzen, um diese Domain als vertrauenswürdig einzustufen.",
"Add \"%s\" as trusted domain" : "„%s“ als vertrauenswürdige Domain hinzufügen",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Für weitere Hilfen, schauen Sie bitte in die <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">Dokumentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP hat keine Leserechte auf /dev/urandom wovon aus Sicherheitsgründen höchst abzuraten ist. Weitere Informationen sind in der <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dokumentation</a> zu finden.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Ihr PHP unterstützt Freetype nicht. Dies wird defekte Profilbilder und eine defekte Anzeige der Einstellungen verursachen.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Der \"Strict-Transport-Security“-HTTP-Header ist nicht auf mindestens \"{seconds}“ Sekunden eingestellt. Für mehr Sicherheit wird das Aktivieren von HSTS empfohlen, wie es in den <a href=\"{docUrl}\" rel=\"noreferrer noopener\">Sicherheitshinweisen</a> erläutert ist.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Der Zugriff auf diese Site erfolgt über HTTP. Es wird dringend geraten, den Server so zu konfigurieren, dass er stattdessen nur HTTPS akzeptiert, wie es in den <a href=\"{docUrl}\">Sicherheitshinweisen</a> beschrieben ist.",
diff --git a/core/l10n/en_GB.js b/core/l10n/en_GB.js
index 106791699c8..503a863993e 100644
--- a/core/l10n/en_GB.js
+++ b/core/l10n/en_GB.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
@@ -352,6 +351,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain.",
"Add \"%s\" as trusted domain" : "Add \"%s\" as a trusted domain",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Your PHP does not have freetype support. This will result in broken profile pictures and settings interface.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accessing site insecurely via HTTP. You are strongly advised to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>.",
diff --git a/core/l10n/en_GB.json b/core/l10n/en_GB.json
index ee2bdf36f3b..b82be35c2e6 100644
--- a/core/l10n/en_GB.json
+++ b/core/l10n/en_GB.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
@@ -350,6 +349,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain.",
"Add \"%s\" as trusted domain" : "Add \"%s\" as a trusted domain",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Your PHP does not have freetype support. This will result in broken profile pictures and settings interface.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accessing site insecurely via HTTP. You are strongly advised to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>.",
diff --git a/core/l10n/es.js b/core/l10n/es.js
index 044267ce467..75d5fa6cbdf 100644
--- a/core/l10n/es.js
+++ b/core/l10n/es.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Comprueba la configuración del trabajo en segundo plano",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no tiene conexión a internet: no se ha podido alcanzar múltiples puntos finales. Esto significa que algunas de las características, como montar almacenamientos externos, notificaciones sobre actualizaciones o instalación de apps de terceras partes no funcionarán. Acceder remotamente a los archivos y enviar correos de notificación tampoco funcionará. Debes establecer una conexión del servidor a internet para disfrutar todas las características.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado ninguna memoria caché. Para mejorar el rendimiento, por favor, configura memcache, si está disponible. Para más información, ve la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom, lo que está fuertemente desaconsejado por razones de seguridad. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No hay ninguna fuente de aleatoriedad disponible, lo que está fuertemente desaconsejado por motivos de seguridad. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás usando PHP {version}. Actualiza la versión de PHP para aprovecharte de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">mejoras de rendimiento y seguridad provistas por el PHP Group</a> tan pronto como tu distribución lo soporte.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Estás funcionando con PHP 5.6. Esta versión mayor de Nextcloud es la última que está soportada en PHP 5.6. Se recomienda actualizar la versión de PHP a 7.0+ para poder actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de cabeceras del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy fiable. Si no, esto es un problema de seguridad que puede permitir que un atacante disfrazar su dirección IP como visible a Nextcloud. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "Compartido contigo y el grupo {group} por {owner}",
"Shared with you and {circle} by {owner}" : "Compartido contigo y {circle} por {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Compartido contigo y con la conversación {conversation} por {owner}",
+ "Shared with you in a conversation by {owner}" : "Compartido contigo por {owner} en una conversación",
"Shared with you by {owner}" : "Compartido contigo por {owner}",
"Choose a password for the mail share" : "Elija una contraseña para compartir por correo electrónico",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} compartido por medio de un link",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como administrador puedes tener la posibilidad de usar el botón a continuación para confiar en este dominio.",
"Add \"%s\" as trusted domain" : "Añadir \"%s\" como dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, ver la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom, lo que está fuertemente desaconsejado por razones de seguridad. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no tiene sooprte de freetype. Esto dará como resultado imágenes de perfil e interfaz de configuración rotas.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "La cabecera HTTP \"Strict-Transport-Security\" no está configurada en al menos \"{seconds}\". Para mejorar la seguridad, se recomienda activar HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accedes al sitio de forma insegura, vía HTTP. Se aconseja fuertemente configurar tu servidor para que requiera HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es.json b/core/l10n/es.json
index ee0b0867492..e31a67bafc5 100644
--- a/core/l10n/es.json
+++ b/core/l10n/es.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Comprueba la configuración del trabajo en segundo plano",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no tiene conexión a internet: no se ha podido alcanzar múltiples puntos finales. Esto significa que algunas de las características, como montar almacenamientos externos, notificaciones sobre actualizaciones o instalación de apps de terceras partes no funcionarán. Acceder remotamente a los archivos y enviar correos de notificación tampoco funcionará. Debes establecer una conexión del servidor a internet para disfrutar todas las características.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado ninguna memoria caché. Para mejorar el rendimiento, por favor, configura memcache, si está disponible. Para más información, ve la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom, lo que está fuertemente desaconsejado por razones de seguridad. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No hay ninguna fuente de aleatoriedad disponible, lo que está fuertemente desaconsejado por motivos de seguridad. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás usando PHP {version}. Actualiza la versión de PHP para aprovecharte de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">mejoras de rendimiento y seguridad provistas por el PHP Group</a> tan pronto como tu distribución lo soporte.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Estás funcionando con PHP 5.6. Esta versión mayor de Nextcloud es la última que está soportada en PHP 5.6. Se recomienda actualizar la versión de PHP a 7.0+ para poder actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de cabeceras del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy fiable. Si no, esto es un problema de seguridad que puede permitir que un atacante disfrazar su dirección IP como visible a Nextcloud. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "Compartido contigo y el grupo {group} por {owner}",
"Shared with you and {circle} by {owner}" : "Compartido contigo y {circle} por {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Compartido contigo y con la conversación {conversation} por {owner}",
+ "Shared with you in a conversation by {owner}" : "Compartido contigo por {owner} en una conversación",
"Shared with you by {owner}" : "Compartido contigo por {owner}",
"Choose a password for the mail share" : "Elija una contraseña para compartir por correo electrónico",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} compartido por medio de un link",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como administrador puedes tener la posibilidad de usar el botón a continuación para confiar en este dominio.",
"Add \"%s\" as trusted domain" : "Añadir \"%s\" como dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, ver la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom, lo que está fuertemente desaconsejado por razones de seguridad. Se puede encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no tiene sooprte de freetype. Esto dará como resultado imágenes de perfil e interfaz de configuración rotas.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "La cabecera HTTP \"Strict-Transport-Security\" no está configurada en al menos \"{seconds}\". Para mejorar la seguridad, se recomienda activar HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accedes al sitio de forma insegura, vía HTTP. Se aconseja fuertemente configurar tu servidor para que requiera HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_419.js b/core/l10n/es_419.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_419.js
+++ b/core/l10n/es_419.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_419.json b/core/l10n/es_419.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_419.json
+++ b/core/l10n/es_419.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_CL.js b/core/l10n/es_CL.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_CL.js
+++ b/core/l10n/es_CL.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_CL.json b/core/l10n/es_CL.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_CL.json
+++ b/core/l10n/es_CL.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_CO.js b/core/l10n/es_CO.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_CO.js
+++ b/core/l10n/es_CO.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_CO.json b/core/l10n/es_CO.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_CO.json
+++ b/core/l10n/es_CO.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_CR.js b/core/l10n/es_CR.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_CR.js
+++ b/core/l10n/es_CR.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_CR.json b/core/l10n/es_CR.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_CR.json
+++ b/core/l10n/es_CR.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_DO.js b/core/l10n/es_DO.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_DO.js
+++ b/core/l10n/es_DO.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_DO.json b/core/l10n/es_DO.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_DO.json
+++ b/core/l10n/es_DO.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_EC.js b/core/l10n/es_EC.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_EC.js
+++ b/core/l10n/es_EC.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_EC.json b/core/l10n/es_EC.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_EC.json
+++ b/core/l10n/es_EC.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_GT.js b/core/l10n/es_GT.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_GT.js
+++ b/core/l10n/es_GT.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_GT.json b/core/l10n/es_GT.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_GT.json
+++ b/core/l10n/es_GT.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_HN.js b/core/l10n/es_HN.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_HN.js
+++ b/core/l10n/es_HN.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_HN.json b/core/l10n/es_HN.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_HN.json
+++ b/core/l10n/es_HN.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_MX.js b/core/l10n/es_MX.js
index 91b56bfd180..12e57effbdf 100644
--- a/core/l10n/es_MX.js
+++ b/core/l10n/es_MX.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_MX.json b/core/l10n/es_MX.json
index 368513b3279..6bfab5d33ca 100644
--- a/core/l10n/es_MX.json
+++ b/core/l10n/es_MX.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_NI.js b/core/l10n/es_NI.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_NI.js
+++ b/core/l10n/es_NI.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_NI.json b/core/l10n/es_NI.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_NI.json
+++ b/core/l10n/es_NI.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PA.js b/core/l10n/es_PA.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_PA.js
+++ b/core/l10n/es_PA.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PA.json b/core/l10n/es_PA.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_PA.json
+++ b/core/l10n/es_PA.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PE.js b/core/l10n/es_PE.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_PE.js
+++ b/core/l10n/es_PE.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PE.json b/core/l10n/es_PE.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_PE.json
+++ b/core/l10n/es_PE.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PR.js b/core/l10n/es_PR.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_PR.js
+++ b/core/l10n/es_PR.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PR.json b/core/l10n/es_PR.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_PR.json
+++ b/core/l10n/es_PR.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PY.js b/core/l10n/es_PY.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_PY.js
+++ b/core/l10n/es_PY.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_PY.json b/core/l10n/es_PY.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_PY.json
+++ b/core/l10n/es_PY.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_SV.js b/core/l10n/es_SV.js
index 78d7d887e24..a92bb7fd8ea 100644
--- a/core/l10n/es_SV.js
+++ b/core/l10n/es_SV.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -350,6 +349,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_SV.json b/core/l10n/es_SV.json
index 802fbe9f1b3..c86143d4914 100644
--- a/core/l10n/es_SV.json
+++ b/core/l10n/es_SV.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -348,6 +347,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependiendo de tu configuración, como adminsitrador podrías llegar a usar el botón inferior para confiar en este dominio. ",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para más ayuda, consulta la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentación</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom lo cual no es recomendable en lo absoluto por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Tu PHP no cuenta con siporte de freetype. Esto producirá imagenes rotas en el perfil e interfaz de configuraciones. ",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
diff --git a/core/l10n/es_UY.js b/core/l10n/es_UY.js
index a91ea3ce33a..dd2758ca1da 100644
--- a/core/l10n/es_UY.js
+++ b/core/l10n/es_UY.js
@@ -112,7 +112,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -309,6 +308,7 @@ OC.L10N.register(
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/es_UY.json b/core/l10n/es_UY.json
index fef49f7e1b8..53f1bc133d9 100644
--- a/core/l10n/es_UY.json
+++ b/core/l10n/es_UY.json
@@ -110,7 +110,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Tu servidor web no está correctamente configurado para resolver \"{url}\". Puedes encontrar más información al respecto en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "El servidor no cuenta con una conexión a Internet: No se pudieron alcanzar múltiples endpoints. Esto significa que algunas características como montar almacenamiento externo, notificaciones de actualizaciones o instalación de aplicaciones de 3ros no funcionarán correctamente. Acceder archivos de forma remota y el envío de de notificaciones por correo electrónico puede que no funcionen tampoco. Establece una conexión desde este servidor a Internet para aprovechar todas las funcionalidades.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "No se ha configurado el caché de memoria. Para mejorar el desempeño, por favor configura un memcahce, si está disponible. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Estás ejecutando PHP {version}. Actualiza tu versión de PHP para aprovechar las <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">actualizaciones de desempeño y seguridad proporcionadas por el Grupo PHP</a> tan pronto como tu distribución lo soporte. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Actualmente estás corriendo PHP 5.6. La versión principal actual de Nextcloud es la última que será soportada en PHPH 5.6. Te recomendamos actualizar la versión de PHP a la 7.0+ para que puedas actualizar a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuración de los encabezados del proxy inverso es incorrecta, o estás accediendo a Nextcloud desde un proxy de confianza. Si no es el caso, se trata de un tema de seguridad y le puede permitir a un atacante hacer su dirección IP apócrifa visible para Nextcloud. Puedes encontar más infomración en nuestra <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
@@ -307,6 +306,7 @@
"Alternative Logins" : "Accesos Alternativos",
"Alternative login using app token" : "Inicio de sesión alternativo usando la ficha de la aplicación",
"Add \"%s\" as trusted domain" : "Agregar \"%s\" como un dominio de confianza",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP no puede leer /dev/urandom y no se recomienda por razones de seguridad. Puedes encontrar más información en la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentación</a>.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "El encabezado HTTP \"Strict-Transport-Security\" no está configurado a al menos \"{seconds}\" segundos. Para una seguridad mejorada, se recomienda configurar el HSTS como se describe en los <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consejos de seguridad</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Accediendo al sitio de forma insegura vía HTTP. Se recomienda configurar el servidor para, en su lugar, requerir HTTPS, como se describe en los <a href=\"{docUrl}\">consejos de seguridad</a>.",
"Back to log in" : "Regresar al inicio de sesión",
diff --git a/core/l10n/fi.js b/core/l10n/fi.js
index 8cfae3aa72f..0ae6d9052ad 100644
--- a/core/l10n/fi.js
+++ b/core/l10n/fi.js
@@ -82,6 +82,7 @@ OC.L10N.register(
"No" : "Ei",
"Yes" : "Kyllä",
"No files in here" : "Täällä ei ole tiedostoja",
+ "No more subfolders in here" : "Täällä ei ole enempää alikansioita",
"Choose" : "Valitse",
"Copy" : "Kopioi",
"Move" : "Siirrä",
@@ -112,8 +113,9 @@ OC.L10N.register(
"Strong password" : "Vahva salasana",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Palvelintasi ei ole määritetty oikein tiedostojen synkronointia varten, koska WebDAV-liitäntä vaikuttaa olevan rikki.",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Palvelinta ei ole määritelty oikein tunnistamaan osoitetta \"{url}\". Katso lisätiedot <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeista</a>.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "{name} versiota {version} on asennettu. Vakauteen ja suorituskykyyn liittyvistä syistä suosittelemme, että {name} päivitetään uudempaan versioon.",
+ "Check the background job settings" : "Tarkista taustatyön asetukset",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Välimuistia ei ole asennettu oikein. Suorituskykyä parantaaksesi, asenna memcache, jos käytettävissä. Katso lisätiedot <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeista</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom ei ole PHP:n luettavissa. Tämä ei ole suositeltavaa tietoturvasyistä. Lisätietoja <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeissa</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Käytössä on PHP {version}. Suosittelemme päivittämään PHP:n hyötyäksesi <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP Group:n suorituskyky- ja tietoturvapäivityksistä</a> niin pian kuin jakelusi sitä tukee.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Käytössä on PHP 5.6. Nykyinen Nextcloudversio on viimeinen, mikä sitä tukee. Suositeltavaa on päivittää versioon 7.0+, jotta päivitys onnistuisi Nextcloud 14:än sen ilmestyessä.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached on määritelty hajautetuksi välimuistiksi, mutta väärä PHP-moduli \"memcache\" on asennettu. \\OC\\Memcache\\Memcached tukee vain modulia \"memcached\", mutta ei modulia \"memcache\". Katso <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wikiä molemmista moduleista</a>.",
@@ -122,6 +124,8 @@ OC.L10N.register(
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP-funktio \"set_time_limit\" ei ole käytettävissä. Tämä saattaa johtaa siihen, että skriptien suoritus päättyy ennenaikaisesti ja Nextcloud-asennus rikkoutuu. Funktion käyttäminen on erittäin suositeltavaa.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "PHP-asennuksessasi ei ole FreeType-tukea, ja siitä aiheutuu profiilikuvien sekä asetuskäyttöliittymän rikkoutuminen.",
"Missing index \"{indexName}\" in table \"{tableName}\"." : "Puuttuva indeksi \"{indexName}\" taulussa \"{tableName}\".",
+ "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite on parhaillaan käytössä tietokantaratkaisuna. Suuria asennuksia varten suosittelemme vaihtamaan toiseen tietokantaratkaisuun.",
+ "The PHP memory limit is below the recommended value of 512MB." : "PHP:n muistiraja on asetettu alle suositellun 512 megatavun arvon.",
"Error occurred while checking server setup" : "Virhe palvelimen määrityksiä tarkistaessa",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Data-hakemisto ja tiedostot ovat luultavasti käytettävissä suoraan Internetistä. .htaccess-tiedosto ei toimi oikein. Suosittelemme määrittämään HTTP-palvelimen asetukset siten, ettei data-hakemisto ole suoraan käytettävissä Internetistä tai siirtämään data-hakemiston HTTP-palvelimen juurihakemiston ulkopuolelle.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP-header \"{header}\" ei ole määritetty vastaamaan arvoa \"{expected}\". Kyseessä on mahdollinen tietoturvaan tai -suojaan liittyvä riski, joten on suositeltavaa muuttaa asetuksen arvoa.",
@@ -150,6 +154,7 @@ OC.L10N.register(
"Expiration" : "Vanheneminen",
"Expiration date" : "Vanhenemispäivä",
"Share link" : "Jaa linkki",
+ "Enable" : "Ota käyttöön",
"Shared with you and the group {group} by {owner}" : "Jaettu sinun ja ryhmän {group} kanssa käyttäjältä {owner}",
"Shared with you by {owner}" : "Jaettu kanssasi käyttäjältä {owner}",
"Choose a password for the mail share" : "Valitse salasana sähköpostijaolle",
@@ -276,6 +281,7 @@ OC.L10N.register(
"Username or email" : "Käyttäjätunnus tai sähköpostiosoite",
"Log in" : "Kirjaudu sisään",
"Wrong password." : "Väärä salasana.",
+ "User disabled" : "Käyttäjä poistettu käytöstä",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Useita virheellisiä kirjautumisyrityksiä havaittiin IP-osoitteestasi. Siksi seuraava yritys sallitaan vasta 30:n sekunnin päästä.",
"Forgot password?" : "Unohditko salasanasi?",
"Back to login" : "Palaa kirjautumiseen",
@@ -347,6 +353,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Asetuksista riippuen, ylläpitäjänä saatat pystyä alla olevalla painikkeella lisäämään tämän verkkotunnuksen luotetuksi.",
"Add \"%s\" as trusted domain" : "Lisää \"%s\" luotetuksi verkkotunnukseksi",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Jos tarvitset apua, katso <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">ohjeista</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom ei ole PHP:n luettavissa. Tämä ei ole suositeltavaa tietoturvasyistä. Lisätietoja <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeissa</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP:ssäsi ei ole freetype-tukea. Tämä johtaa rikkinäisiin profiilikuviin ja rikkinäiseen asetuskäyttöliittymään.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP-header \"Strict-Transport-Security\" ei ole määritelty vähintään \"{seconds}\" sekuntiin. Paremman tietoturvan vuoksi on suositeltavaa määritellä HSTS:n, kuten <a href=\"{docUrl}\" rel=\"noreferrer noopener\">tietoturvavinkeissä</a> neuvotaan.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Käytät sivustoa HTTP-yhteydellä. On suositeltavaa, että palvelin vaatiii HTTPS-yhteyden, kuten <a href=\"{docUrl}\">tietoturvavinkeissä</a> neuvotaan.",
diff --git a/core/l10n/fi.json b/core/l10n/fi.json
index 5b55c36c572..23755b7349b 100644
--- a/core/l10n/fi.json
+++ b/core/l10n/fi.json
@@ -80,6 +80,7 @@
"No" : "Ei",
"Yes" : "Kyllä",
"No files in here" : "Täällä ei ole tiedostoja",
+ "No more subfolders in here" : "Täällä ei ole enempää alikansioita",
"Choose" : "Valitse",
"Copy" : "Kopioi",
"Move" : "Siirrä",
@@ -110,8 +111,9 @@
"Strong password" : "Vahva salasana",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Palvelintasi ei ole määritetty oikein tiedostojen synkronointia varten, koska WebDAV-liitäntä vaikuttaa olevan rikki.",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Palvelinta ei ole määritelty oikein tunnistamaan osoitetta \"{url}\". Katso lisätiedot <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeista</a>.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "{name} versiota {version} on asennettu. Vakauteen ja suorituskykyyn liittyvistä syistä suosittelemme, että {name} päivitetään uudempaan versioon.",
+ "Check the background job settings" : "Tarkista taustatyön asetukset",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Välimuistia ei ole asennettu oikein. Suorituskykyä parantaaksesi, asenna memcache, jos käytettävissä. Katso lisätiedot <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeista</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom ei ole PHP:n luettavissa. Tämä ei ole suositeltavaa tietoturvasyistä. Lisätietoja <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeissa</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Käytössä on PHP {version}. Suosittelemme päivittämään PHP:n hyötyäksesi <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP Group:n suorituskyky- ja tietoturvapäivityksistä</a> niin pian kuin jakelusi sitä tukee.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Käytössä on PHP 5.6. Nykyinen Nextcloudversio on viimeinen, mikä sitä tukee. Suositeltavaa on päivittää versioon 7.0+, jotta päivitys onnistuisi Nextcloud 14:än sen ilmestyessä.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached on määritelty hajautetuksi välimuistiksi, mutta väärä PHP-moduli \"memcache\" on asennettu. \\OC\\Memcache\\Memcached tukee vain modulia \"memcached\", mutta ei modulia \"memcache\". Katso <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wikiä molemmista moduleista</a>.",
@@ -120,6 +122,8 @@
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP-funktio \"set_time_limit\" ei ole käytettävissä. Tämä saattaa johtaa siihen, että skriptien suoritus päättyy ennenaikaisesti ja Nextcloud-asennus rikkoutuu. Funktion käyttäminen on erittäin suositeltavaa.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "PHP-asennuksessasi ei ole FreeType-tukea, ja siitä aiheutuu profiilikuvien sekä asetuskäyttöliittymän rikkoutuminen.",
"Missing index \"{indexName}\" in table \"{tableName}\"." : "Puuttuva indeksi \"{indexName}\" taulussa \"{tableName}\".",
+ "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite on parhaillaan käytössä tietokantaratkaisuna. Suuria asennuksia varten suosittelemme vaihtamaan toiseen tietokantaratkaisuun.",
+ "The PHP memory limit is below the recommended value of 512MB." : "PHP:n muistiraja on asetettu alle suositellun 512 megatavun arvon.",
"Error occurred while checking server setup" : "Virhe palvelimen määrityksiä tarkistaessa",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Data-hakemisto ja tiedostot ovat luultavasti käytettävissä suoraan Internetistä. .htaccess-tiedosto ei toimi oikein. Suosittelemme määrittämään HTTP-palvelimen asetukset siten, ettei data-hakemisto ole suoraan käytettävissä Internetistä tai siirtämään data-hakemiston HTTP-palvelimen juurihakemiston ulkopuolelle.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP-header \"{header}\" ei ole määritetty vastaamaan arvoa \"{expected}\". Kyseessä on mahdollinen tietoturvaan tai -suojaan liittyvä riski, joten on suositeltavaa muuttaa asetuksen arvoa.",
@@ -148,6 +152,7 @@
"Expiration" : "Vanheneminen",
"Expiration date" : "Vanhenemispäivä",
"Share link" : "Jaa linkki",
+ "Enable" : "Ota käyttöön",
"Shared with you and the group {group} by {owner}" : "Jaettu sinun ja ryhmän {group} kanssa käyttäjältä {owner}",
"Shared with you by {owner}" : "Jaettu kanssasi käyttäjältä {owner}",
"Choose a password for the mail share" : "Valitse salasana sähköpostijaolle",
@@ -274,6 +279,7 @@
"Username or email" : "Käyttäjätunnus tai sähköpostiosoite",
"Log in" : "Kirjaudu sisään",
"Wrong password." : "Väärä salasana.",
+ "User disabled" : "Käyttäjä poistettu käytöstä",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Useita virheellisiä kirjautumisyrityksiä havaittiin IP-osoitteestasi. Siksi seuraava yritys sallitaan vasta 30:n sekunnin päästä.",
"Forgot password?" : "Unohditko salasanasi?",
"Back to login" : "Palaa kirjautumiseen",
@@ -345,6 +351,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Asetuksista riippuen, ylläpitäjänä saatat pystyä alla olevalla painikkeella lisäämään tämän verkkotunnuksen luotetuksi.",
"Add \"%s\" as trusted domain" : "Lisää \"%s\" luotetuksi verkkotunnukseksi",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Jos tarvitset apua, katso <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">ohjeista</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom ei ole PHP:n luettavissa. Tämä ei ole suositeltavaa tietoturvasyistä. Lisätietoja <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ohjeissa</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP:ssäsi ei ole freetype-tukea. Tämä johtaa rikkinäisiin profiilikuviin ja rikkinäiseen asetuskäyttöliittymään.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP-header \"Strict-Transport-Security\" ei ole määritelty vähintään \"{seconds}\" sekuntiin. Paremman tietoturvan vuoksi on suositeltavaa määritellä HSTS:n, kuten <a href=\"{docUrl}\" rel=\"noreferrer noopener\">tietoturvavinkeissä</a> neuvotaan.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Käytät sivustoa HTTP-yhteydellä. On suositeltavaa, että palvelin vaatiii HTTPS-yhteyden, kuten <a href=\"{docUrl}\">tietoturvavinkeissä</a> neuvotaan.",
diff --git a/core/l10n/fr.js b/core/l10n/fr.js
index c67592a2424..d2a991eda8d 100644
--- a/core/l10n/fr.js
+++ b/core/l10n/fr.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Vérifier les paramètres des tâches de fond",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Ce serveur ne peut se connecter à Internet : plusieurs point finaux ne peuvent être atteints. Cela signifie que certaines fonctionnalités, telles que le montage de supports de stockage distants, les notifications de mises à jour ou l'installation d'applications tierces ne fonctionneront pas. L'accès aux fichiers à distance, ainsi que l'envoi de notifications par mail peuvent aussi être indisponibles. Il est recommandé d'activer la connexion internet pour ce serveur si vous souhaitez disposer de l'ensemble des fonctionnalités offertes.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Aucun cache mémoire n'est configuré. Si possible, configurez un \"memcache\" pour améliorer les performances. Pour plus d'informations consultez la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom n'est pas lisible par PHP, ce qui est fortement déconseillé pour des raisons de sécurité. Vous trouverez plus d'informations dans la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Aucune source appropriée pour les aléas trouvée par PHP, ce qui est fortement déconseillé pour des raisons de sécurité. Vous trouverez plus d'informations dans la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Vous utilisez actuellement PHP {version}. Mettez à jour votre version de PHP afin de tirer avantage des améliorations liées à <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">la performance et la sécurité fournies par le PHP Group</a> dès que votre distribution le supportera.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Vous utiliser actuellement PHP 5.6. La version majeure actuelle de Nextcloud est la dernière qui est supportée sous PHP 5.6. Il est recommandé de mettre à niveau PHP vers la version 7.0+ pour pouvoir passer à Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuration des entêtes du proxy inverse est incorrecte, ou vous accédez à Nextcloud depuis un proxy de confiance. Si vous n'êtes pas en train d’accéder à Nextcloud depuis un proxy de confiance, il y a un problème de sécurité qui peut permettre à un attaquant d'usurper l'adresse IP affichée à Nextcloud. Vous trouverez plus d'informations dans notre <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "Partagé avec vous et le groupe {group} par {owner}",
"Shared with you and {circle} by {owner}" : "Partagé avec vous et {circle} par {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Partagé avec vous et la conversation {conversation} par {owner}",
+ "Shared with you in a conversation by {owner}" : "Partagé avec vous dans une conversation par {owner}",
"Shared with you by {owner}" : "Partagé avec vous par {owner}",
"Choose a password for the mail share" : "Choisissez un mot de passe pour le partage par email",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} a partagé via un lien",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "En fonction de votre configuration, en tant qu'administrateur vous pouvez également utiliser le bouton ci-dessous pour approuver ce domaine.",
"Add \"%s\" as trusted domain" : "Ajouter \"%s\" à la liste des domaines approuvés",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Pour obtenir de l'aide, lisez la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom n'est pas lisible par PHP, ce qui est fortement déconseillé pour des raisons de sécurité. Vous trouverez plus d'informations dans la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Votre version de PHP n'est pas prise en charge par freetype. Cela se traduira par des images de profil et une interface des paramètres cassées.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "L'en-tête HTTP \"Strict-Transport-Security\" n'est pas configurée à au moins \"{seconds}\" secondes. Pour renforcer la sécurité, nous recommandons d'activer HSTS comme décrit dans nos <a href=\"{docUrl}\" rel=\"noreferrer noopener\">conseils de sécurisation</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Vous accédez à ce site via HTTP. Nous vous recommandons fortement de configurer votre serveur pour forcer l'utilisation de HTTPS, comme expliqué dans nos <a href=\"{docUrl}\">conseils de sécurisation</a>.",
diff --git a/core/l10n/fr.json b/core/l10n/fr.json
index de0ddab02ae..1413ad127c8 100644
--- a/core/l10n/fr.json
+++ b/core/l10n/fr.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Vérifier les paramètres des tâches de fond",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Ce serveur ne peut se connecter à Internet : plusieurs point finaux ne peuvent être atteints. Cela signifie que certaines fonctionnalités, telles que le montage de supports de stockage distants, les notifications de mises à jour ou l'installation d'applications tierces ne fonctionneront pas. L'accès aux fichiers à distance, ainsi que l'envoi de notifications par mail peuvent aussi être indisponibles. Il est recommandé d'activer la connexion internet pour ce serveur si vous souhaitez disposer de l'ensemble des fonctionnalités offertes.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Aucun cache mémoire n'est configuré. Si possible, configurez un \"memcache\" pour améliorer les performances. Pour plus d'informations consultez la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom n'est pas lisible par PHP, ce qui est fortement déconseillé pour des raisons de sécurité. Vous trouverez plus d'informations dans la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Aucune source appropriée pour les aléas trouvée par PHP, ce qui est fortement déconseillé pour des raisons de sécurité. Vous trouverez plus d'informations dans la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Vous utilisez actuellement PHP {version}. Mettez à jour votre version de PHP afin de tirer avantage des améliorations liées à <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">la performance et la sécurité fournies par le PHP Group</a> dès que votre distribution le supportera.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Vous utiliser actuellement PHP 5.6. La version majeure actuelle de Nextcloud est la dernière qui est supportée sous PHP 5.6. Il est recommandé de mettre à niveau PHP vers la version 7.0+ pour pouvoir passer à Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configuration des entêtes du proxy inverse est incorrecte, ou vous accédez à Nextcloud depuis un proxy de confiance. Si vous n'êtes pas en train d’accéder à Nextcloud depuis un proxy de confiance, il y a un problème de sécurité qui peut permettre à un attaquant d'usurper l'adresse IP affichée à Nextcloud. Vous trouverez plus d'informations dans notre <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "Partagé avec vous et le groupe {group} par {owner}",
"Shared with you and {circle} by {owner}" : "Partagé avec vous et {circle} par {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Partagé avec vous et la conversation {conversation} par {owner}",
+ "Shared with you in a conversation by {owner}" : "Partagé avec vous dans une conversation par {owner}",
"Shared with you by {owner}" : "Partagé avec vous par {owner}",
"Choose a password for the mail share" : "Choisissez un mot de passe pour le partage par email",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} a partagé via un lien",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "En fonction de votre configuration, en tant qu'administrateur vous pouvez également utiliser le bouton ci-dessous pour approuver ce domaine.",
"Add \"%s\" as trusted domain" : "Ajouter \"%s\" à la liste des domaines approuvés",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Pour obtenir de l'aide, lisez la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom n'est pas lisible par PHP, ce qui est fortement déconseillé pour des raisons de sécurité. Vous trouverez plus d'informations dans la <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Votre version de PHP n'est pas prise en charge par freetype. Cela se traduira par des images de profil et une interface des paramètres cassées.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "L'en-tête HTTP \"Strict-Transport-Security\" n'est pas configurée à au moins \"{seconds}\" secondes. Pour renforcer la sécurité, nous recommandons d'activer HSTS comme décrit dans nos <a href=\"{docUrl}\" rel=\"noreferrer noopener\">conseils de sécurisation</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Vous accédez à ce site via HTTP. Nous vous recommandons fortement de configurer votre serveur pour forcer l'utilisation de HTTPS, comme expliqué dans nos <a href=\"{docUrl}\">conseils de sécurisation</a>.",
diff --git a/core/l10n/he.js b/core/l10n/he.js
index a0ee664be96..697d4c9f5ff 100644
--- a/core/l10n/he.js
+++ b/core/l10n/he.js
@@ -128,7 +128,6 @@ OC.L10N.register(
"Check the background job settings" : "בדיקת הגדרות משימות רקע",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "לשרת זה אין חיבור לאינטרנט: מגוון נקודות קצה אינן נגישות. משמעות הדבר היא שחלק מהתכונות כגון עיגון אחסון חיצוני, הודעות על עדכונים או התקנות של יישומי צד שלישי לא יעבדו. גישה לקבצים מרחוק ושליחת הודעות בדוא״ל לא יעבדו גם כן. אנו ממליצים להפעיל את החיבור של השרת הזה לאינטרנט כדי שתהיה אפשרות ליהנות מכל התכונות.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "לא הוגדר מטמון זיכרון. כדי לשפר את הביצועים, נא להגדיר מטמון זיכרון (memcache), אם ניתן. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "ל־PHP אין אפשרות לקרוא את /dev/urandom שזה מצב די מומלץ יחסית מטעמי אבטחה. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "גרסת ה־PHP שמותקנת אצלך היא {version}. נא לשדרג את גרסת ה־PHP שלך כדי לנצל את <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">עדכוני הביצועים והאבטחה שמסופקים על ידי קבוצת PHP</a> ברגע שההפצה שלך משחררת אותן.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "גרסת ה־PHP הנוכחית שלך היא 5.6. הגרסה העיקרית הנוכחית של Nextcloud היא הגרסה האחרונה שעוד תומכת ב־PHP 5.6. מומלץ לשדרג את גרסה ה־PHP ל־7.0 ומעלה כדי לאפשר את השדרוג ל־Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "תצורת הכותרת של המתווך ההפוך שגויה או שהגישה שלך אל Nextcloud מתבצעת ממתווך מהימן. אם לא כך המצב, מדובר בפרצת אבטחה שיכולה לאפשר לתוקף לזייף כתובת IP כפי שהיא מיוצגת מול ה־Nextcloud. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
@@ -388,6 +387,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "בהתאם לתצורה שלך, כמנהל יתאפשר לך להשתמש בכפתור שלהלן כדי להתייחס לאתר זה כמהימן.",
"Add \"%s\" as trusted domain" : "הוספת \"%s\" כשם מתחם / דומיין מהימן",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "לקבלת עזרה, יש לעיין ב<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">תיעוד</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "ל־PHP אין אפשרות לקרוא את /dev/urandom שזה מצב די מומלץ יחסית מטעמי אבטחה. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "ל־PHP שלך אין תמיכה ב־freetype. מצב כזה יגרום לתמונות פרופיל משובשות לצד מנשק הגדרות משובש.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "כותרת ה־HTTP בשם „Strict-Transport-Security” אינה מוגדרת עד לפחות „{seconds}” שניות. לטובת אבטחה מוגברת אנו ממליצים להפעיל HSTS כפי שמתואר ב<a href=\"{docUrl}\" rel=\"noreferrer noopener\">עצות האבטחה</a> שלנו.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "גישה לאתר באופן בלתי מאובטח דרך HTTP. המלצתנו היא להגדיר את השרת שלך כדי לדרוש חיבור HTTPS במקום, כפי שמתואר ב<a href=\"{docUrl}\">עצות האבטחה</a>.",
diff --git a/core/l10n/he.json b/core/l10n/he.json
index a19d38e1dd3..68370a3f92a 100644
--- a/core/l10n/he.json
+++ b/core/l10n/he.json
@@ -126,7 +126,6 @@
"Check the background job settings" : "בדיקת הגדרות משימות רקע",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "לשרת זה אין חיבור לאינטרנט: מגוון נקודות קצה אינן נגישות. משמעות הדבר היא שחלק מהתכונות כגון עיגון אחסון חיצוני, הודעות על עדכונים או התקנות של יישומי צד שלישי לא יעבדו. גישה לקבצים מרחוק ושליחת הודעות בדוא״ל לא יעבדו גם כן. אנו ממליצים להפעיל את החיבור של השרת הזה לאינטרנט כדי שתהיה אפשרות ליהנות מכל התכונות.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "לא הוגדר מטמון זיכרון. כדי לשפר את הביצועים, נא להגדיר מטמון זיכרון (memcache), אם ניתן. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "ל־PHP אין אפשרות לקרוא את /dev/urandom שזה מצב די מומלץ יחסית מטעמי אבטחה. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "גרסת ה־PHP שמותקנת אצלך היא {version}. נא לשדרג את גרסת ה־PHP שלך כדי לנצל את <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">עדכוני הביצועים והאבטחה שמסופקים על ידי קבוצת PHP</a> ברגע שההפצה שלך משחררת אותן.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "גרסת ה־PHP הנוכחית שלך היא 5.6. הגרסה העיקרית הנוכחית של Nextcloud היא הגרסה האחרונה שעוד תומכת ב־PHP 5.6. מומלץ לשדרג את גרסה ה־PHP ל־7.0 ומעלה כדי לאפשר את השדרוג ל־Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "תצורת הכותרת של המתווך ההפוך שגויה או שהגישה שלך אל Nextcloud מתבצעת ממתווך מהימן. אם לא כך המצב, מדובר בפרצת אבטחה שיכולה לאפשר לתוקף לזייף כתובת IP כפי שהיא מיוצגת מול ה־Nextcloud. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
@@ -386,6 +385,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "בהתאם לתצורה שלך, כמנהל יתאפשר לך להשתמש בכפתור שלהלן כדי להתייחס לאתר זה כמהימן.",
"Add \"%s\" as trusted domain" : "הוספת \"%s\" כשם מתחם / דומיין מהימן",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "לקבלת עזרה, יש לעיין ב<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">תיעוד</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "ל־PHP אין אפשרות לקרוא את /dev/urandom שזה מצב די מומלץ יחסית מטעמי אבטחה. ניתן למצוא מידע נוסף ב<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">תיעוד</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "ל־PHP שלך אין תמיכה ב־freetype. מצב כזה יגרום לתמונות פרופיל משובשות לצד מנשק הגדרות משובש.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "כותרת ה־HTTP בשם „Strict-Transport-Security” אינה מוגדרת עד לפחות „{seconds}” שניות. לטובת אבטחה מוגברת אנו ממליצים להפעיל HSTS כפי שמתואר ב<a href=\"{docUrl}\" rel=\"noreferrer noopener\">עצות האבטחה</a> שלנו.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "גישה לאתר באופן בלתי מאובטח דרך HTTP. המלצתנו היא להגדיר את השרת שלך כדי לדרוש חיבור HTTPS במקום, כפי שמתואר ב<a href=\"{docUrl}\">עצות האבטחה</a>.",
diff --git a/core/l10n/hu.js b/core/l10n/hu.js
index 12e6d5f6c47..4c46e498bed 100644
--- a/core/l10n/hu.js
+++ b/core/l10n/hu.js
@@ -125,7 +125,6 @@ OC.L10N.register(
"Check the background job settings" : "Ellenőrizze a háttérművelet beállításait.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Ennek a szervernek nincs működő internet kapcsolata: több végpont nem érhető el. Ez azt jelenti, hogy néhány funkció, mint pl. külső tárolók csatolása, frissítési értesítések, vagy a harmadik féltől származó alkalmazások telepítése nem fog működni. A fájlok távoli elérése és az e-mail értesítések is lehet, hogy nem működnek. Ajánlott az internet kapcsolat engedélyezése a szerveren, ha minden funkciót használni szeretnél.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nincs memória cache beállítva. A teljesítmény javítása érdekében kapcsold be ha lehetséges. További információk a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentációban</a> találhatók.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "a /dev/urandom nem olvasható a PHP által, ami erősen ellenjavallott biztonsági okokból. További információt a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentációban</a> találsz.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Jelenleg {version} verziójú PHP-t futtatsz. Javasoljuk frissítsd, hogy élvezhesd a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">teljesítmény és biztonságbeli frissítéseket a PHP Csoporttól</a> amint a disztribúciód támogatja.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Jelenleg a PHP 5.6-os verzióját használod. A Nextcloud jelenlegi főverziója az utolsó amelyik támogatja a PHP 5.6-ot. A Nextcloud 14-re való frissítéshez javasolt frissíteni a PHP verziót 7.0+-ra.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "A reverse proxy fejlécek beállítása helytelen, vagy egy megbízható proxyval kapcsolódsz a Nextcloud-ra. Ha nem egy megbízható proxyval csatlakozol, ez egy biztonsági rés lehet, mely segítségével egy támadó meghamisíthatja az IP-jét a Nextcloud felé. További információk a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokmetációban</a> találhatók.",
@@ -372,6 +371,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "A beállításoktól függően, rendszergazdaként lehetséges, hogy az alábbi gombot is használhatja a domain név megbízhatóvá tételéhez.",
"Add \"%s\" as trusted domain" : "Adjuk hozzá „%s”-t a megbízható domain nevekhez!",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Segítségért keresse fel a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentációt</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "a /dev/urandom nem olvasható a PHP által, ami erősen ellenjavallott biztonsági okokból. További információt a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentációban</a> találsz.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "A PHP-ból hiányzik a freetype támogatás. Ez a beállítási felület és a profilképek hibás megjelenítését okozhatja.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "A \"Strict-Transport-Security\" HTTP fejléc nincs legalább \"{seconds}\" másodpercre állítva. A fejlettebb védelem érdekében javasoljuk a HSTS engedélyezését a <a href=\"{docUrl}\" rel=\"noreferrer noopener\">biztonsági tippekben</a> leírtak szerint.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Jelenleg HTTP-vel éri el a weboldalt. Erősen ajánlott a HTTPS konfiguráció használata ehelyett, ahogyan ezt részleteztük a <a href=\"{docUrl}\">biztonsági tippek</a>ben",
diff --git a/core/l10n/hu.json b/core/l10n/hu.json
index 06e001f7f96..7f8ab89f893 100644
--- a/core/l10n/hu.json
+++ b/core/l10n/hu.json
@@ -123,7 +123,6 @@
"Check the background job settings" : "Ellenőrizze a háttérművelet beállításait.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Ennek a szervernek nincs működő internet kapcsolata: több végpont nem érhető el. Ez azt jelenti, hogy néhány funkció, mint pl. külső tárolók csatolása, frissítési értesítések, vagy a harmadik féltől származó alkalmazások telepítése nem fog működni. A fájlok távoli elérése és az e-mail értesítések is lehet, hogy nem működnek. Ajánlott az internet kapcsolat engedélyezése a szerveren, ha minden funkciót használni szeretnél.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nincs memória cache beállítva. A teljesítmény javítása érdekében kapcsold be ha lehetséges. További információk a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentációban</a> találhatók.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "a /dev/urandom nem olvasható a PHP által, ami erősen ellenjavallott biztonsági okokból. További információt a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentációban</a> találsz.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Jelenleg {version} verziójú PHP-t futtatsz. Javasoljuk frissítsd, hogy élvezhesd a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">teljesítmény és biztonságbeli frissítéseket a PHP Csoporttól</a> amint a disztribúciód támogatja.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Jelenleg a PHP 5.6-os verzióját használod. A Nextcloud jelenlegi főverziója az utolsó amelyik támogatja a PHP 5.6-ot. A Nextcloud 14-re való frissítéshez javasolt frissíteni a PHP verziót 7.0+-ra.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "A reverse proxy fejlécek beállítása helytelen, vagy egy megbízható proxyval kapcsolódsz a Nextcloud-ra. Ha nem egy megbízható proxyval csatlakozol, ez egy biztonsági rés lehet, mely segítségével egy támadó meghamisíthatja az IP-jét a Nextcloud felé. További információk a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokmetációban</a> találhatók.",
@@ -370,6 +369,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "A beállításoktól függően, rendszergazdaként lehetséges, hogy az alábbi gombot is használhatja a domain név megbízhatóvá tételéhez.",
"Add \"%s\" as trusted domain" : "Adjuk hozzá „%s”-t a megbízható domain nevekhez!",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Segítségért keresse fel a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentációt</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "a /dev/urandom nem olvasható a PHP által, ami erősen ellenjavallott biztonsági okokból. További információt a <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentációban</a> találsz.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "A PHP-ból hiányzik a freetype támogatás. Ez a beállítási felület és a profilképek hibás megjelenítését okozhatja.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "A \"Strict-Transport-Security\" HTTP fejléc nincs legalább \"{seconds}\" másodpercre állítva. A fejlettebb védelem érdekében javasoljuk a HSTS engedélyezését a <a href=\"{docUrl}\" rel=\"noreferrer noopener\">biztonsági tippekben</a> leírtak szerint.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Jelenleg HTTP-vel éri el a weboldalt. Erősen ajánlott a HTTPS konfiguráció használata ehelyett, ahogyan ezt részleteztük a <a href=\"{docUrl}\">biztonsági tippek</a>ben",
diff --git a/core/l10n/is.js b/core/l10n/is.js
index e0ad33f1167..668dd704cea 100644
--- a/core/l10n/is.js
+++ b/core/l10n/is.js
@@ -127,7 +127,6 @@ OC.L10N.register(
"Check the background job settings" : "Athugaðu stillingar bakgrunnsvinnslunnar",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Þessi þjónn er ekki með virka nettengingu: ekki náðis tenging við fjölmarga endapunkta. Þetta þýðir að sumir eiginleikar eins og að virkja ytri gagnageymslu, tilkynningar um uppfærslur eða uppsetningu á forritum þriðja aðila, mun ekki virka. Fjartengdur aðgangur að skrám og sending tilkynninga í tölvupósti virka líklega ekki heldur. Við leggjum til að internettenging sé virkjuð fyrir þennan vefþjón ef þú vilt hafa alla eiginleika tiltæka.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Ekkert skyndiminni (cache) hefur verið stillt. Til að auka afköst ættirðu að setja upp skyndiminni (með memcache) ef það er tiltækt. Hægt er að finna nánari upplýsingar um þetta í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ekki lesanlegt af PHP sem er mjög óráðlegt af öryggisástæðum. Hægt er að finna nánari upplýsingar um þetta í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Þú ert að keyra PHP {version}. Við hvetjum þig til að uppfæra PHP útgáfuna til að njóta <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">afkastaaukningar og öryggisuppfærslna frá PHP Group</a> um leið og dreifingin þín styður það.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Þú ert núna að keyra PHP 5.6. Núverandi aðalútgáfa Nextcloud er sú síðasta sem mun virka á PHP 5.6. Mælt er með því að uppfæra PHP í útgáfu 7.0+ til að eiga möguleika á að uppfæra í Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Uppsetning gagnstæðs milliþjónshauss (reverse proxy header) er röng, eða að þú ert að tengjast Nextcloud frá treystum milliþjóni Ef þú ert ekki að tengjast Nextcloud frá treystum milliþjóni, þá er þetta er öryggisvandamál og getur leyft árásaraðilum að dulbúa IP-vistfang þeirra sem sýnilegt Nextcloud. Nánari upplýsingar má finna í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
@@ -378,6 +377,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Það fer eftir stillingum þínum, sem stjórnandi þá gætir þú einnig notað hnappinn hér fyrir neðan til að treysta þessu léni.",
"Add \"%s\" as trusted domain" : "Bæta við \"%s\" sem treystu léni",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Til að fá hjálp er best að skoða fyrst <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">hjálparskjölin</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ekki lesanlegt af PHP sem er mjög óráðlegt af öryggisástæðum. Hægt er að finna nánari upplýsingar um þetta í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP-uppsetningin er ekki með stuðning við 'freetype'. Þetta mun valda því að notendamyndir og stillingaviðmót virki ekki.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP-hausinn er ekki stilltur á að minnsa kosti \"{seconds}\" sekúndur. Fyrir aukið öryggi mælum við með því að virkja HSTS eins og lýst er í <a href=\"{docUrl}\" rel=\"noreferrer noopener\">öryggisleiðbeiningum</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : " Þú ert að tengjast þessu vefsvæði með HTTP. Við mælum eindregið með að þú stillir þjóninn á að krefjast HTTPS í staðinn eins og lýst er í <a href=\"{docUrl}\">öryggisleiðbeiningunum</a> okkar.",
diff --git a/core/l10n/is.json b/core/l10n/is.json
index 0f6556389c2..4cb67ed0e2b 100644
--- a/core/l10n/is.json
+++ b/core/l10n/is.json
@@ -125,7 +125,6 @@
"Check the background job settings" : "Athugaðu stillingar bakgrunnsvinnslunnar",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Þessi þjónn er ekki með virka nettengingu: ekki náðis tenging við fjölmarga endapunkta. Þetta þýðir að sumir eiginleikar eins og að virkja ytri gagnageymslu, tilkynningar um uppfærslur eða uppsetningu á forritum þriðja aðila, mun ekki virka. Fjartengdur aðgangur að skrám og sending tilkynninga í tölvupósti virka líklega ekki heldur. Við leggjum til að internettenging sé virkjuð fyrir þennan vefþjón ef þú vilt hafa alla eiginleika tiltæka.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Ekkert skyndiminni (cache) hefur verið stillt. Til að auka afköst ættirðu að setja upp skyndiminni (með memcache) ef það er tiltækt. Hægt er að finna nánari upplýsingar um þetta í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ekki lesanlegt af PHP sem er mjög óráðlegt af öryggisástæðum. Hægt er að finna nánari upplýsingar um þetta í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Þú ert að keyra PHP {version}. Við hvetjum þig til að uppfæra PHP útgáfuna til að njóta <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">afkastaaukningar og öryggisuppfærslna frá PHP Group</a> um leið og dreifingin þín styður það.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Þú ert núna að keyra PHP 5.6. Núverandi aðalútgáfa Nextcloud er sú síðasta sem mun virka á PHP 5.6. Mælt er með því að uppfæra PHP í útgáfu 7.0+ til að eiga möguleika á að uppfæra í Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Uppsetning gagnstæðs milliþjónshauss (reverse proxy header) er röng, eða að þú ert að tengjast Nextcloud frá treystum milliþjóni Ef þú ert ekki að tengjast Nextcloud frá treystum milliþjóni, þá er þetta er öryggisvandamál og getur leyft árásaraðilum að dulbúa IP-vistfang þeirra sem sýnilegt Nextcloud. Nánari upplýsingar má finna í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
@@ -376,6 +375,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Það fer eftir stillingum þínum, sem stjórnandi þá gætir þú einnig notað hnappinn hér fyrir neðan til að treysta þessu léni.",
"Add \"%s\" as trusted domain" : "Bæta við \"%s\" sem treystu léni",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Til að fá hjálp er best að skoða fyrst <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">hjálparskjölin</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ekki lesanlegt af PHP sem er mjög óráðlegt af öryggisástæðum. Hægt er að finna nánari upplýsingar um þetta í <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">hjálparskjölum</a> okkar.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP-uppsetningin er ekki með stuðning við 'freetype'. Þetta mun valda því að notendamyndir og stillingaviðmót virki ekki.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP-hausinn er ekki stilltur á að minnsa kosti \"{seconds}\" sekúndur. Fyrir aukið öryggi mælum við með því að virkja HSTS eins og lýst er í <a href=\"{docUrl}\" rel=\"noreferrer noopener\">öryggisleiðbeiningum</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : " Þú ert að tengjast þessu vefsvæði með HTTP. Við mælum eindregið með að þú stillir þjóninn á að krefjast HTTPS í staðinn eins og lýst er í <a href=\"{docUrl}\">öryggisleiðbeiningunum</a> okkar.",
diff --git a/core/l10n/it.js b/core/l10n/it.js
index 56dcc075b45..6cc5eb12980 100644
--- a/core/l10n/it.js
+++ b/core/l10n/it.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Controlla le impostazioni dell'operazione in background",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Questo server non ha una connessione a Internet funzionante: diversi dispositivi finali non sono raggiungibili. Ciò significa che alcune delle funzionalità come il montaggio di archivi esterni, le notifiche degli aggiornamenti o l'installazione di applicazioni di terze parti non funzioneranno. L'accesso remoto ai file e l'invio di email di notifica potrebbero non funzionare. Abilita la connessione a Internet del server se desideri disporre di tutte le funzionalità.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Non è stata configurata alcuna cache di memoria. Per migliorare le prestazioni configura una memcache, se disponibile. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom non è leggibile da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nessuna fonte di casualità trovata da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Stai eseguendo attualmente PHP {version}. Aggiorna la tua versione di PHP per trarre vantaggio dagli <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">aggiornamenti in termini di prestazioni e sicurezza forniti dal PHP Group</a> non appena la tua distribuzione la supporta.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Stai eseguendo la versione 5.6 di PHP. La versione principale attuale di Nextcloud è l'ultima supportata da PHP 5.6. Consigliamo di aggiornare la versione di PHP alla 7.0+ per poter aggiornare a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configurazione delle intestazioni del proxy inverso non è corretta, o stai effettuando l'accesso a Nextcloud da un proxy affidabile. In caso diverso, questo è un problema di sicurezza e può consentire a un attaccante di falsificare il suo indirizzo IP, rendendolo visibile a Nextcloud. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "Condiviso con te e con il gruppo {group} da {owner}",
"Shared with you and {circle} by {owner}" : "Condiviso con te e {circle} da {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Condiviso con te e con la conversazione {conversation} da {owner}",
+ "Shared with you in a conversation by {owner}" : "Condiviso con te in una conversazione da {owner}",
"Shared with you by {owner}" : "Condiviso con te da {owner}",
"Choose a password for the mail share" : "Scegli una password per la condivisione tramite posta",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} ha condiviso tramite collegamento",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "In base alla tua configurazione, come amministratore potrai utilizzare anche il pulsante in basso per rendere attendibile questo dominio.",
"Add \"%s\" as trusted domain" : "Aggiungi \"%s\" come dominio attendibile",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Per la guida, vedi la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentazione</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom non è leggibile da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "La tua versione di PHP non ha il supporto freetype. Ciò causera problemi con le immagini dei profili e con l'interfaccia delle impostazioni.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "L'intestazione HTTP \"Strict-Transport-Security\" non è configurata con un valore di almeno \"{seconds}\" secondi. Per migliorare la sicurezza, consigliamo di abilitare HSTS come descritto nei <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consigli sulla sicurezza</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Sei connesso a questo sito tramite HTTP. Ti suggeriamo vivamente di configurare il tuo server per richiedere invece HTTPS, come descritto nei <a href=\"{docUrl}\">consigli sulla sicurezza</a>.",
diff --git a/core/l10n/it.json b/core/l10n/it.json
index 08a60d1ac63..c4a02468f91 100644
--- a/core/l10n/it.json
+++ b/core/l10n/it.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Controlla le impostazioni dell'operazione in background",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Questo server non ha una connessione a Internet funzionante: diversi dispositivi finali non sono raggiungibili. Ciò significa che alcune delle funzionalità come il montaggio di archivi esterni, le notifiche degli aggiornamenti o l'installazione di applicazioni di terze parti non funzioneranno. L'accesso remoto ai file e l'invio di email di notifica potrebbero non funzionare. Abilita la connessione a Internet del server se desideri disporre di tutte le funzionalità.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Non è stata configurata alcuna cache di memoria. Per migliorare le prestazioni configura una memcache, se disponibile. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom non è leggibile da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nessuna fonte di casualità trovata da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Stai eseguendo attualmente PHP {version}. Aggiorna la tua versione di PHP per trarre vantaggio dagli <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">aggiornamenti in termini di prestazioni e sicurezza forniti dal PHP Group</a> non appena la tua distribuzione la supporta.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Stai eseguendo la versione 5.6 di PHP. La versione principale attuale di Nextcloud è l'ultima supportata da PHP 5.6. Consigliamo di aggiornare la versione di PHP alla 7.0+ per poter aggiornare a Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "La configurazione delle intestazioni del proxy inverso non è corretta, o stai effettuando l'accesso a Nextcloud da un proxy affidabile. In caso diverso, questo è un problema di sicurezza e può consentire a un attaccante di falsificare il suo indirizzo IP, rendendolo visibile a Nextcloud. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "Condiviso con te e con il gruppo {group} da {owner}",
"Shared with you and {circle} by {owner}" : "Condiviso con te e {circle} da {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Condiviso con te e con la conversazione {conversation} da {owner}",
+ "Shared with you in a conversation by {owner}" : "Condiviso con te in una conversazione da {owner}",
"Shared with you by {owner}" : "Condiviso con te da {owner}",
"Choose a password for the mail share" : "Scegli una password per la condivisione tramite posta",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} ha condiviso tramite collegamento",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "In base alla tua configurazione, come amministratore potrai utilizzare anche il pulsante in basso per rendere attendibile questo dominio.",
"Add \"%s\" as trusted domain" : "Aggiungi \"%s\" come dominio attendibile",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Per la guida, vedi la <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentazione</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom non è leggibile da PHP e ciò è vivamente sconsigliato per motivi di sicurezza. Ulteriori informazioni sono disponibili nella <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentazione</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "La tua versione di PHP non ha il supporto freetype. Ciò causera problemi con le immagini dei profili e con l'interfaccia delle impostazioni.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "L'intestazione HTTP \"Strict-Transport-Security\" non è configurata con un valore di almeno \"{seconds}\" secondi. Per migliorare la sicurezza, consigliamo di abilitare HSTS come descritto nei <a href=\"{docUrl}\" rel=\"noreferrer noopener\">consigli sulla sicurezza</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Sei connesso a questo sito tramite HTTP. Ti suggeriamo vivamente di configurare il tuo server per richiedere invece HTTPS, come descritto nei <a href=\"{docUrl}\">consigli sulla sicurezza</a>.",
diff --git a/core/l10n/ja.js b/core/l10n/ja.js
index 5e144091ab7..34c5d049476 100644
--- a/core/l10n/ja.js
+++ b/core/l10n/ja.js
@@ -40,9 +40,9 @@ OC.L10N.register(
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "データベーススキーマーがアップデートできるかどうかチェックしています。(この操作の時間はデータベースの容量によります)",
"Checked database schema update" : "指定データベースのスキーマを更新",
"Checking updates of apps" : "アプリの更新をチェックしています。",
- "Checking for update of app \"%s\" in appstore" : "アップストアで \"%s\" アプリの更新を確認しています",
- "Update app \"%s\" from appstore" : "アップストアで \"%s\" アプリを更新",
- "Checked for update of app \"%s\" in appstore" : "アップストアの \"%s\" アプリ更新確認済",
+ "Checking for update of app \"%s\" in appstore" : "アプリストアで \"%s\" アプリのアップデートを確認しています",
+ "Update app \"%s\" from appstore" : "アプリストアから \"%s\" アプリをアップデートする",
+ "Checked for update of app \"%s\" in appstore" : "アプリストアで \"%s\" アプリのアップデートを確認済",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "データベーススキーマー %s がアップデートできるかどうかチェックしています。(この操作の時間はデータベースの容量によります)",
"Checked database schema update for apps" : "アプリの指定データベースのスキーマを更新",
"Updated \"%s\" to %s" : "\"%s\" を %s にアップデートしました。",
@@ -51,7 +51,7 @@ OC.L10N.register(
"Starting code integrity check" : "コード整合性の確認を開始",
"Finished code integrity check" : "コード整合性の確認が終了",
"%s (incompatible)" : "%s (非互換)",
- "Following apps have been disabled: %s" : "以下のアプリが無効にされています: %s",
+ "Following apps have been disabled: %s" : "次のアプリが無効にされています: %s",
"Already up to date" : "すべて更新済",
"Search contacts …" : "連絡先を検索...",
"No contacts found" : "連絡先が見つかりません",
@@ -110,7 +110,7 @@ OC.L10N.register(
"Good password" : "良好なパスワード",
"Strong password" : "強いパスワード",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "メモリキャッシュが設定されていません。可能であれば、パフォーマンスを向上するため、memcacheを設定してください。より詳しい情報は<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ドキュメント</a>で参照できます。",
- "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で以下の設定を推奨します:",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で次の設定を推奨します:",
"Error occurred while checking server setup" : "サーバー設定のチェック中にエラーが発生しました",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "\"Strict-Transport-Security\" HTTPヘッダが最低でも \"{seconds}\" 秒に設定されていません。セキュリティを強化するには、<a href=\"{docUrl}\" rel=\"noreferrer noopener\">セキュリティTips ↗</a>で解説しているHSTSを有効にすることを推奨します。",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips ↗</a>." : "セキュアではないHTTP経由でアクセスしています。<a href=\"{docUrl}\">セキュリティTips ↗</a>で述べているように、代わりにHTTPSを必要とするようサーバーを設定することを強くおすすめします。",
@@ -191,7 +191,7 @@ OC.L10N.register(
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "アップデートできませんでした。この問題に対する詳細な情報については、<a href=\"{url}\">フォーラムの投稿を確認してください</a> ",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "アップデートできませんでした。<a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud コミュニティ</a> に問題を報告してください。",
"Continue to Nextcloud" : "Nextcloud に進む",
- "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["更新が成功しました。 %n 秒後に Nextcloud にリダイレクトします。"],
+ "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["アップデートに成功しました。 %n 秒後に Nextcloud にリダイレクトします。"],
"Searching other places" : "他の場所の検索",
"No search results in other folders for {tag}{filter}{endtag}" : "他のフォルダーに {tag}{filter}{endtag} の検索結果はありません",
"_{count} search result in another folder_::_{count} search results in other folders_" : ["他のフォルダーの検索件数 {count}"],
@@ -253,6 +253,7 @@ OC.L10N.register(
"Wrong password." : "パスワードが間違っています。",
"Forgot password?" : "パスワードをお忘れですか?",
"App token" : "アプリのトークン",
+ "Grant access" : "アクセスを許可",
"Account access" : "アカウントによるアクセス許可",
"You are about to grant %s access to your %s account." : "%s アカウントに あなたのアカウント %s へのアクセスを許可",
"Redirecting …" : "転送中...",
@@ -270,7 +271,7 @@ OC.L10N.register(
"The theme %s has been disabled." : "テーマ %s が無効になっています。",
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "データベースを確認してください。実行前にconfigフォルダーとdataフォルダーをバックアップします。",
"Start update" : "アップデートを開始",
- "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "大規模なサイトの場合、ブラウザーがタイムアウトする可能性があるため、インストールディレクトリで以下のコマンドを実行することもできます。",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "大規模なサイトの場合、ブラウザーがタイムアウトする可能性があるため、インストールディレクトリで次のコマンドを実行することもできます。",
"Detailed logs" : "詳細ログ",
"Update needed" : "更新が必要です",
"Please use the command line updater because you have a big instance with more than 50 users." : "50人以上が使う大規模システムの場合は、コマンドラインでアップグレードを行ってください。",
@@ -282,7 +283,7 @@ OC.L10N.register(
"Thank you for your patience." : "しばらくお待ちください。",
"There was an error loading your contacts" : "連絡先の読み込みに失敗しました。",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "メモリキャッシュが設定されていません。可能であれば、パフォーマンスを向上するため、memcacheを設定してください。より詳しい情報は<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">ドキュメント</a>で参照できます。",
- "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で以下の設定を推奨します:",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で次の設定を推奨します:",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "\"Strict-Transport-Security\" HTTPヘッダが、最低でも \"{seconds}\" 秒に設定されていません。セキュリティを強化するには、<a href=\"{docUrl}\" rel=\"noreferrer\">セキュリティTips</a>で解説しているHSTSを有効にすることを推奨します。",
"You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "セキュアではないHTTP経由でアクセスしています。<a href=\"{docUrl}\">セキュリティTips</a>で述べているように、代わりにHTTPSを必要とするようサーバーを設定することを強くおすすめします。",
"Error setting expiration date" : "有効期限の設定でエラー発生",
@@ -292,6 +293,7 @@ OC.L10N.register(
"Share with other people by entering a user or group or an email address." : "ユーザー名やグループ名、メールアドレスで共有",
"Stay logged in" : "ログインしたままにする",
"Alternative Logins" : "代替ログイン",
+ "You are about to grant \"%s\" access to your %s account." : "%s アカウントで \"%s\" での接続を許可",
"Alternative login using app token" : "アプリトークンを使って代替ログイン",
"Add \"%s\" as trusted domain" : "\"%s\" を信頼するドメイン名に追加",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTPヘッダが、最低でも \"{seconds}\" 秒に設定されていません。セキュリティを強化するには、<a href=\"{docUrl}\" rel=\"noreferrer noopener\">セキュリティTips</a>で解説しているHSTSを有効にすることを推奨します。",
diff --git a/core/l10n/ja.json b/core/l10n/ja.json
index 1e36185b6e4..ac3ec193c69 100644
--- a/core/l10n/ja.json
+++ b/core/l10n/ja.json
@@ -38,9 +38,9 @@
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "データベーススキーマーがアップデートできるかどうかチェックしています。(この操作の時間はデータベースの容量によります)",
"Checked database schema update" : "指定データベースのスキーマを更新",
"Checking updates of apps" : "アプリの更新をチェックしています。",
- "Checking for update of app \"%s\" in appstore" : "アップストアで \"%s\" アプリの更新を確認しています",
- "Update app \"%s\" from appstore" : "アップストアで \"%s\" アプリを更新",
- "Checked for update of app \"%s\" in appstore" : "アップストアの \"%s\" アプリ更新確認済",
+ "Checking for update of app \"%s\" in appstore" : "アプリストアで \"%s\" アプリのアップデートを確認しています",
+ "Update app \"%s\" from appstore" : "アプリストアから \"%s\" アプリをアップデートする",
+ "Checked for update of app \"%s\" in appstore" : "アプリストアで \"%s\" アプリのアップデートを確認済",
"Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "データベーススキーマー %s がアップデートできるかどうかチェックしています。(この操作の時間はデータベースの容量によります)",
"Checked database schema update for apps" : "アプリの指定データベースのスキーマを更新",
"Updated \"%s\" to %s" : "\"%s\" を %s にアップデートしました。",
@@ -49,7 +49,7 @@
"Starting code integrity check" : "コード整合性の確認を開始",
"Finished code integrity check" : "コード整合性の確認が終了",
"%s (incompatible)" : "%s (非互換)",
- "Following apps have been disabled: %s" : "以下のアプリが無効にされています: %s",
+ "Following apps have been disabled: %s" : "次のアプリが無効にされています: %s",
"Already up to date" : "すべて更新済",
"Search contacts …" : "連絡先を検索...",
"No contacts found" : "連絡先が見つかりません",
@@ -108,7 +108,7 @@
"Good password" : "良好なパスワード",
"Strong password" : "強いパスワード",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "メモリキャッシュが設定されていません。可能であれば、パフォーマンスを向上するため、memcacheを設定してください。より詳しい情報は<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">ドキュメント</a>で参照できます。",
- "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で以下の設定を推奨します:",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で次の設定を推奨します:",
"Error occurred while checking server setup" : "サーバー設定のチェック中にエラーが発生しました",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "\"Strict-Transport-Security\" HTTPヘッダが最低でも \"{seconds}\" 秒に設定されていません。セキュリティを強化するには、<a href=\"{docUrl}\" rel=\"noreferrer noopener\">セキュリティTips ↗</a>で解説しているHSTSを有効にすることを推奨します。",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips ↗</a>." : "セキュアではないHTTP経由でアクセスしています。<a href=\"{docUrl}\">セキュリティTips ↗</a>で述べているように、代わりにHTTPSを必要とするようサーバーを設定することを強くおすすめします。",
@@ -189,7 +189,7 @@
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "アップデートできませんでした。この問題に対する詳細な情報については、<a href=\"{url}\">フォーラムの投稿を確認してください</a> ",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "アップデートできませんでした。<a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud コミュニティ</a> に問題を報告してください。",
"Continue to Nextcloud" : "Nextcloud に進む",
- "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["更新が成功しました。 %n 秒後に Nextcloud にリダイレクトします。"],
+ "_The update was successful. Redirecting you to Nextcloud in %n second._::_The update was successful. Redirecting you to Nextcloud in %n seconds._" : ["アップデートに成功しました。 %n 秒後に Nextcloud にリダイレクトします。"],
"Searching other places" : "他の場所の検索",
"No search results in other folders for {tag}{filter}{endtag}" : "他のフォルダーに {tag}{filter}{endtag} の検索結果はありません",
"_{count} search result in another folder_::_{count} search results in other folders_" : ["他のフォルダーの検索件数 {count}"],
@@ -251,6 +251,7 @@
"Wrong password." : "パスワードが間違っています。",
"Forgot password?" : "パスワードをお忘れですか?",
"App token" : "アプリのトークン",
+ "Grant access" : "アクセスを許可",
"Account access" : "アカウントによるアクセス許可",
"You are about to grant %s access to your %s account." : "%s アカウントに あなたのアカウント %s へのアクセスを許可",
"Redirecting …" : "転送中...",
@@ -268,7 +269,7 @@
"The theme %s has been disabled." : "テーマ %s が無効になっています。",
"Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "データベースを確認してください。実行前にconfigフォルダーとdataフォルダーをバックアップします。",
"Start update" : "アップデートを開始",
- "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "大規模なサイトの場合、ブラウザーがタイムアウトする可能性があるため、インストールディレクトリで以下のコマンドを実行することもできます。",
+ "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "大規模なサイトの場合、ブラウザーがタイムアウトする可能性があるため、インストールディレクトリで次のコマンドを実行することもできます。",
"Detailed logs" : "詳細ログ",
"Update needed" : "更新が必要です",
"Please use the command line updater because you have a big instance with more than 50 users." : "50人以上が使う大規模システムの場合は、コマンドラインでアップグレードを行ってください。",
@@ -280,7 +281,7 @@
"Thank you for your patience." : "しばらくお待ちください。",
"There was an error loading your contacts" : "連絡先の読み込みに失敗しました。",
"No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "メモリキャッシュが設定されていません。可能であれば、パフォーマンスを向上するため、memcacheを設定してください。より詳しい情報は<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">ドキュメント</a>で参照できます。",
- "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で以下の設定を推奨します:",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcacheが適切に設定されていません。<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">よりパフォーマンスを向上させる</a>には、<code>php.ini</code>で次の設定を推奨します:",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "\"Strict-Transport-Security\" HTTPヘッダが、最低でも \"{seconds}\" 秒に設定されていません。セキュリティを強化するには、<a href=\"{docUrl}\" rel=\"noreferrer\">セキュリティTips</a>で解説しているHSTSを有効にすることを推奨します。",
"You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "セキュアではないHTTP経由でアクセスしています。<a href=\"{docUrl}\">セキュリティTips</a>で述べているように、代わりにHTTPSを必要とするようサーバーを設定することを強くおすすめします。",
"Error setting expiration date" : "有効期限の設定でエラー発生",
@@ -290,6 +291,7 @@
"Share with other people by entering a user or group or an email address." : "ユーザー名やグループ名、メールアドレスで共有",
"Stay logged in" : "ログインしたままにする",
"Alternative Logins" : "代替ログイン",
+ "You are about to grant \"%s\" access to your %s account." : "%s アカウントで \"%s\" での接続を許可",
"Alternative login using app token" : "アプリトークンを使って代替ログイン",
"Add \"%s\" as trusted domain" : "\"%s\" を信頼するドメイン名に追加",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTPヘッダが、最低でも \"{seconds}\" 秒に設定されていません。セキュリティを強化するには、<a href=\"{docUrl}\" rel=\"noreferrer noopener\">セキュリティTips</a>で解説しているHSTSを有効にすることを推奨します。",
diff --git a/core/l10n/ka_GE.js b/core/l10n/ka_GE.js
index 5edd360f33e..baf60e0fca1 100644
--- a/core/l10n/ka_GE.js
+++ b/core/l10n/ka_GE.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "\"{url}\"-ის გასახსნელად თქვენი ვებ-სერვერი არაა სწორად კონფიგურირებული. შეგიძლიათ იხილოთ მეტი ინფორმაცია <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციაში</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "ამ სერვერს არ გააჩნია მოქმედი ინტერნეტ კავშირი: მიუწვდომელია მრავალი წერტილი. ეს ნიშნავს, რომ ფუნქციები როგორებიცაა ექსტერნალური საცავის დაყენება, შეტყობინებები განახლებებზე ან მესამე მხარის აპლიკაციების ინსტალაცია არ იმუშავებს. შესაძლოა ფაილებთან დისტანციური წვდომა და საფოსტო შეტყობინებების გაგზავნაც არ მუშაობდეს. ყველა ფუნქციის მუშაობისთვის, ამ სერვერზე ჩართეთ ინტერნეტ კავშირი.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "მეხსიერების კეში არაა კონფიგურირებული. მოქმედების მახასიათებლების გაუმჯობესებისთვის გთოხვთ გაუწიოთ კონფიგურაცია memcache-ს. შეგიძლიათ იხილოთ მეტი ინფორმაცია <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციაში</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom PHP-ს მიერ ვერ იკითხება, რაც უსაფრთოხების მიზნებიდან გამომდინარე უკიდურესად არა-რეკომენდირებულია. შეგიძლიათ მეტი ინფორმაცია მიიღოთ <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციიდან</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "ამჟამად თქვენთან მოქმედია PHP {version}. განაახლეთ თქვენი PHP ვერსია, რათა ისარგებლოთ <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP Group-ის მიერ უზრუნველყოფილი გაუმჯობესებული ქმედებითა და უსაფრთხოებებისის განახლებებით</a>.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "თქვენთან ამ მომენტისთვის მოქმედია PHP 5.6. ამჟამინდელი Nextcloud-ის ძირითადი ვერსია ბოლოა, რომელიც მხარს უჭერს PHP 5.6-ს. Nextcloud 14-ზე განახლებისთვის, რეკომენდირებულია PHP განაახლოთ 7.0+ ვერსიამდე.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nextcloud-ს უკავშირდებით სანდო პქოქსით ან საწინააღმეგო პროქსის დასათაურებებების კონფიგურაცია არასწორია. თუ არა, ეს უსაფრთხოების პრობლემაა და თავდამსხმელმა შეიძლება მოიტყუოს IP მისამართით. იხილეთ მეტი ინფორმაცია ჩვენს <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციაში</a>.",
@@ -340,6 +339,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "თქვენი კონფიგურაციიდან გამომდინარე, როგორც ადმინისტრატორმა დომენის ნდობისთვის ასევე შეგიძლიათ ისარგებლოთ ქვემოთ არსებული ღილაკითაც.",
"Add \"%s\" as trusted domain" : "დაამატეთ \"%s\" როგორც სანდო დომენი",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "დახმარებისთვის იხილეთ <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">დოკუმენტაცია</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom PHP-ს მიერ ვერ იკითხება, რაც უსაფრთოხების მიზნებიდან გამომდინარე უკიდურესად არა-რეკომენდირებულია. შეგიძლიათ მეტი ინფორმაცია მიიღოთ <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციიდან</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "თქვენს PHP-ს არ აქვს freetype-ის მხარდაჭერა. ეს გამოწვევს დარღვეულ პროფილის სურათებს და მომხმარებლის ინტერფეისს.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP დასათაურება არაა კონფიგურირებული \"{seconds}\" წამამდე მაინც. გაუმჯობესებული თავდაცვის მიზნებისთვის რეკომენდირებულია ჩართოთ HSTS როგორც აღწერილია <a href=\"{docUrl}\" rel=\"noreferrer noopener\">თავდაცვის რეკომენდაციებში</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "საიტს უკავშირდებით HTTP-თი. მტკიცედ გირჩევთ გაუწიოთ სერვერს კონფიგურაცია, ისე რომ გამოიყენოთ HTTPS, როგორც აღწერილია<a href=\"{docUrl}\">თავდაცვის რეკომენდაციებში</a>.",
diff --git a/core/l10n/ka_GE.json b/core/l10n/ka_GE.json
index 45bdb4f2d27..ec1b4079c81 100644
--- a/core/l10n/ka_GE.json
+++ b/core/l10n/ka_GE.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "\"{url}\"-ის გასახსნელად თქვენი ვებ-სერვერი არაა სწორად კონფიგურირებული. შეგიძლიათ იხილოთ მეტი ინფორმაცია <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციაში</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "ამ სერვერს არ გააჩნია მოქმედი ინტერნეტ კავშირი: მიუწვდომელია მრავალი წერტილი. ეს ნიშნავს, რომ ფუნქციები როგორებიცაა ექსტერნალური საცავის დაყენება, შეტყობინებები განახლებებზე ან მესამე მხარის აპლიკაციების ინსტალაცია არ იმუშავებს. შესაძლოა ფაილებთან დისტანციური წვდომა და საფოსტო შეტყობინებების გაგზავნაც არ მუშაობდეს. ყველა ფუნქციის მუშაობისთვის, ამ სერვერზე ჩართეთ ინტერნეტ კავშირი.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "მეხსიერების კეში არაა კონფიგურირებული. მოქმედების მახასიათებლების გაუმჯობესებისთვის გთოხვთ გაუწიოთ კონფიგურაცია memcache-ს. შეგიძლიათ იხილოთ მეტი ინფორმაცია <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციაში</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom PHP-ს მიერ ვერ იკითხება, რაც უსაფრთოხების მიზნებიდან გამომდინარე უკიდურესად არა-რეკომენდირებულია. შეგიძლიათ მეტი ინფორმაცია მიიღოთ <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციიდან</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "ამჟამად თქვენთან მოქმედია PHP {version}. განაახლეთ თქვენი PHP ვერსია, რათა ისარგებლოთ <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP Group-ის მიერ უზრუნველყოფილი გაუმჯობესებული ქმედებითა და უსაფრთხოებებისის განახლებებით</a>.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "თქვენთან ამ მომენტისთვის მოქმედია PHP 5.6. ამჟამინდელი Nextcloud-ის ძირითადი ვერსია ბოლოა, რომელიც მხარს უჭერს PHP 5.6-ს. Nextcloud 14-ზე განახლებისთვის, რეკომენდირებულია PHP განაახლოთ 7.0+ ვერსიამდე.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nextcloud-ს უკავშირდებით სანდო პქოქსით ან საწინააღმეგო პროქსის დასათაურებებების კონფიგურაცია არასწორია. თუ არა, ეს უსაფრთხოების პრობლემაა და თავდამსხმელმა შეიძლება მოიტყუოს IP მისამართით. იხილეთ მეტი ინფორმაცია ჩვენს <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციაში</a>.",
@@ -338,6 +337,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "თქვენი კონფიგურაციიდან გამომდინარე, როგორც ადმინისტრატორმა დომენის ნდობისთვის ასევე შეგიძლიათ ისარგებლოთ ქვემოთ არსებული ღილაკითაც.",
"Add \"%s\" as trusted domain" : "დაამატეთ \"%s\" როგორც სანდო დომენი",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "დახმარებისთვის იხილეთ <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">დოკუმენტაცია</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom PHP-ს მიერ ვერ იკითხება, რაც უსაფრთოხების მიზნებიდან გამომდინარე უკიდურესად არა-რეკომენდირებულია. შეგიძლიათ მეტი ინფორმაცია მიიღოთ <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">დოკუმენტაციიდან</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "თქვენს PHP-ს არ აქვს freetype-ის მხარდაჭერა. ეს გამოწვევს დარღვეულ პროფილის სურათებს და მომხმარებლის ინტერფეისს.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP დასათაურება არაა კონფიგურირებული \"{seconds}\" წამამდე მაინც. გაუმჯობესებული თავდაცვის მიზნებისთვის რეკომენდირებულია ჩართოთ HSTS როგორც აღწერილია <a href=\"{docUrl}\" rel=\"noreferrer noopener\">თავდაცვის რეკომენდაციებში</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "საიტს უკავშირდებით HTTP-თი. მტკიცედ გირჩევთ გაუწიოთ სერვერს კონფიგურაცია, ისე რომ გამოიყენოთ HTTPS, როგორც აღწერილია<a href=\"{docUrl}\">თავდაცვის რეკომენდაციებში</a>.",
diff --git a/core/l10n/ko.js b/core/l10n/ko.js
index 9cea0061922..bbd2f67b651 100644
--- a/core/l10n/ko.js
+++ b/core/l10n/ko.js
@@ -35,6 +35,7 @@ OC.L10N.register(
"Turned on maintenance mode" : "유지 보수 모드 켜짐",
"Turned off maintenance mode" : "유지 보수 모드 꺼짐",
"Maintenance mode is kept active" : "유지 보수 모드가 켜져 있음",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "Cron이 끝날때까지 기다리는중(5초후에 다시 확인)...",
"Updating database schema" : "데이터베이스 스키마 업데이트 중",
"Updated database" : "데이터베이스 업데이트 됨",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "데이터베이스 스키마 업데이트 가능 여부 확인 중(데이터베이스 크기에 따라서 오래 걸릴 수도 있습니다)",
@@ -83,6 +84,7 @@ OC.L10N.register(
"No" : "아니요",
"Yes" : "예",
"No files in here" : "여기에 파일이 없음",
+ "No more subfolders in here" : "더 이상의 하위폴더 없음",
"Choose" : "선택",
"Copy" : "복사",
"Move" : "이동",
@@ -104,6 +106,8 @@ OC.L10N.register(
"Pending" : "보류 중",
"Copy to {folder}" : "[folder] 에 복사하기",
"Move to {folder}" : "[folder] 에 이동하기",
+ "New in" : "새로운 것",
+ "View changelog" : "변경 기록 확인",
"Very weak password" : "매우 약한 암호",
"Weak password" : "약한 암호",
"So-so password" : "그저 그런 암호",
@@ -111,9 +115,19 @@ OC.L10N.register(
"Strong password" : "강력한 암호",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "WebDAV 인터페이스를 사용할 수 없어서 웹 서버에서 파일 동기화를 사용할 수 있도록 설정할 수 없습니다.",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "웹 서버에서 \"{url}\"을(를) 올바르게 처리할 수 없습니다. 더 많은 정보를 보려면 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
+ "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP에서 시스템 환경 변수를 올바르게 조회할 수 없는 것 같습니다. getenv(\"PATH\") 시험 결과 빈 값이 반환되었습니다.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "서버 PHP 설정(특히 php-fpm 사용시)에 관한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">설치 문서↗</a>를 참조하십시오.",
+ "The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "읽기 전용 설정이 활성화되었습니다. 이 상태에서는 웹 인터페이스를 통하여 일부 설정을 변경할 수 없습니다. 또한 매 업데이트마다 파일을 쓸 수 있는 상태로 변경해야 합니다.",
+ "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "데이터베이스가 \"READ COMMITTED\" 트랜잭션 격리 수준에서 실행되고 있지 않습니다. 여러 작업이 동시에 실행될 때 문제가 발생할 수 있습니다.",
+ "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "PHP의 \"fileinfo\" 모듈이 없습니다. 올바른 MIME 형식 감지를 위해서 이 모듈을 활성화하는 것을 추천합니다.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "{name}의 버전 {version} 미만이 설치되어 있습니다. 안정성과 성능을 위해 {name}의 새로운 버전으로 업데이트하는 것을 권장합니다.",
+ "Transactional file locking is disabled, this might lead to issues with race conditions. Enable \"filelocking.enabled\" in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a> for more information." : "트랜잭션 파일 잠금이 비활성화되어있어 동시 접근 시 문제가 발생할 수 있습니다. config.php에서 \"filelocking.enabled\"를 활성화하여 이 문제를 해결할 수 있습니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">사용 설명서 ↗</a>를 참고하십시오.",
+ "If your installation is not installed at the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (suggestion: \"{suggestedOverwriteCliURL}\")" : "도메인의 루트 경로에 설치되어 있지 않고 시스템 Cron을 사용한다면 URL 생성에 문제가 발생할 수도 있습니다. 이 문제를 예방하려면 config.php의 \"overwrite.cli.url\" 옵션을 설치본의 웹 루트 경로로 설정하십시오(제안: \"{suggestedOverwriteCliURL}\")",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "CLI로 cron 작업을 실행시킬 수 없었습니다. 다음 오류가 발생했습니다:",
+ "Last background job execution ran {relativeTime}. Something seems wrong." : "마지막 백그라운드 작업이 {relativeTime}에 실행되었습니다. 문제가 발생한 것 같습니다.",
+ "Check the background job settings" : "백그라운드 작업 설정 확인",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "웹 서버에서 인터넷에 연결할 수 없습니다. 여러 종단점에 접근할 수 없습니다. 외부 저장소 마운트, 업데이트 알림, 추가 앱 설치 등 기능이 작동하지 않을 것입니다. 원격으로 파일에 접근하거나 알림 이메일을 보내지 못할 수도 있습니다. 모든 기능을 사용하려면 이 서버를 인터넷에 연결하십시오.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "메모리 캐시가 구성되지 않았습니다. 가능한 경우 memcache를 설정하여 성능을 향상시킬 수 있습니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP에서 안전한 난수 발생기(/dev/urandom)를 사용할 수 없어 보안에 취약합니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "현재 PHP {version}을(를) 사용하고 있습니다. 배포판에서 지원하는 대로 PHP 버전을 업그레이드하여 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP 그룹에서 제공하는 성능 및 보안 업데이트</a>를 받는 것을 추천합니다.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "PHP 5.6을 실행하고 있습니다. 현재 사용하고 있는 Nextcloud의 주 버전은 PHP 5.6을 지원하는 마지막 버전입니다. Nextcloud 14로 업그레이드하려면 PHP 7.0 이상으로 업그레이드하십시오.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "역방향 프록시 헤더 설정이 올바르지 않거나 신뢰하는 프록시를 통해 Nextcloud에 접근하고 있을 수 있습니다. 만약 Nextcloud를 신뢰하는 프록시를 통해 접근하고 있지 않다면 이는 보안 문제이며 공격자가 Nextcloud에 보이는 IP 주소를 속이고 있을 수 있습니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
@@ -122,6 +136,7 @@ OC.L10N.register(
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP Opcache가 제대로 설정되어 있지 않습니다. 더 나은 성능을 위해서 <code>php.ini</code> 파일에 다음 설정을 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">추가하는 것을 권장합니다</a>:",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP 함수 \"set_time_limit\"을 사용할 수 없습니다. 스크립트가 실행 중간에 중지되어 설치를 깨트릴 수도 있습니다. 이 함수를 활성화하는 것을 추천합니다.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "PHP에 Freetype 지원이 없습니다. 프로필 사진과 설정 인터페이스가 올바르게 표시되지 않을 수도 있습니다.",
+ "The PHP memory limit is below the recommended value of 512MB." : "PHP 메모리 제한이 추천값인 512MB보다 작습니다.",
"Error occurred while checking server setup" : "서버 설정을 확인하는 중 오류 발생",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "데이터 디렉터리와 파일을 인터넷에서 접근할 수 있는 것 같습니다. .htaccess 파일을 사용할 수 없습니다. 웹 서버 설정을 변경하여 데이터 디렉터리에 접근할 수 없도록 하거나, 데이터 디렉터리를 웹 서버 문서 디렉터리 밖으로 옮기는 것을 추천합니다.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "\"{header}\" HTTP 헤더가 \"{expected}\"(으)로 설정되어 있지 않습니다. 잠재적인 정보 유출 및 보안 위협이 될 수 있으므로 설정을 변경하는 것을 추천합니다.",
@@ -340,6 +355,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "설정에 따라서 관리자 권한으로 아래 단추를 눌러서 이 도메인을 신뢰하도록 설정할 수 있습니다.",
"Add \"%s\" as trusted domain" : "\"%s\"을(를) 신뢰할 수 있는 도메인으로 추가",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "도움이 필요한 경우 <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">문서</a>를 참조하십시오.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP에서 안전한 난수 발생기(/dev/urandom)를 사용할 수 없어 보안에 취약합니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP에 freetype 지원이 없습니다. 프로필 사진과 설정 인터페이스가 올바르게 표시되지 않을 수도 있습니다.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP 헤더가 \"{seconds}\"초 이상로 설정되어 있지 않습니다. <a href=\"{docUrl}\" rel=\"noreferrer noopener\">보안 팁</a>에서 제안하는 것처럼 HSTS를 활성화하는 것을 추천합니다.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "사이트에 HTTP를 통해서 보안 없이 접근하고 있습니다. <a href=\"{docUrl}\">보안 팁</a>에서 제안하는 것처럼 HTTPS를 설정하는 것을 추천합니다.",
diff --git a/core/l10n/ko.json b/core/l10n/ko.json
index a44a26e405d..3134504c7c3 100644
--- a/core/l10n/ko.json
+++ b/core/l10n/ko.json
@@ -33,6 +33,7 @@
"Turned on maintenance mode" : "유지 보수 모드 켜짐",
"Turned off maintenance mode" : "유지 보수 모드 꺼짐",
"Maintenance mode is kept active" : "유지 보수 모드가 켜져 있음",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "Cron이 끝날때까지 기다리는중(5초후에 다시 확인)...",
"Updating database schema" : "데이터베이스 스키마 업데이트 중",
"Updated database" : "데이터베이스 업데이트 됨",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "데이터베이스 스키마 업데이트 가능 여부 확인 중(데이터베이스 크기에 따라서 오래 걸릴 수도 있습니다)",
@@ -81,6 +82,7 @@
"No" : "아니요",
"Yes" : "예",
"No files in here" : "여기에 파일이 없음",
+ "No more subfolders in here" : "더 이상의 하위폴더 없음",
"Choose" : "선택",
"Copy" : "복사",
"Move" : "이동",
@@ -102,6 +104,8 @@
"Pending" : "보류 중",
"Copy to {folder}" : "[folder] 에 복사하기",
"Move to {folder}" : "[folder] 에 이동하기",
+ "New in" : "새로운 것",
+ "View changelog" : "변경 기록 확인",
"Very weak password" : "매우 약한 암호",
"Weak password" : "약한 암호",
"So-so password" : "그저 그런 암호",
@@ -109,9 +113,19 @@
"Strong password" : "강력한 암호",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "WebDAV 인터페이스를 사용할 수 없어서 웹 서버에서 파일 동기화를 사용할 수 있도록 설정할 수 없습니다.",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "웹 서버에서 \"{url}\"을(를) 올바르게 처리할 수 없습니다. 더 많은 정보를 보려면 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
+ "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP에서 시스템 환경 변수를 올바르게 조회할 수 없는 것 같습니다. getenv(\"PATH\") 시험 결과 빈 값이 반환되었습니다.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "서버 PHP 설정(특히 php-fpm 사용시)에 관한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">설치 문서↗</a>를 참조하십시오.",
+ "The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "읽기 전용 설정이 활성화되었습니다. 이 상태에서는 웹 인터페이스를 통하여 일부 설정을 변경할 수 없습니다. 또한 매 업데이트마다 파일을 쓸 수 있는 상태로 변경해야 합니다.",
+ "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "데이터베이스가 \"READ COMMITTED\" 트랜잭션 격리 수준에서 실행되고 있지 않습니다. 여러 작업이 동시에 실행될 때 문제가 발생할 수 있습니다.",
+ "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "PHP의 \"fileinfo\" 모듈이 없습니다. 올바른 MIME 형식 감지를 위해서 이 모듈을 활성화하는 것을 추천합니다.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "{name}의 버전 {version} 미만이 설치되어 있습니다. 안정성과 성능을 위해 {name}의 새로운 버전으로 업데이트하는 것을 권장합니다.",
+ "Transactional file locking is disabled, this might lead to issues with race conditions. Enable \"filelocking.enabled\" in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a> for more information." : "트랜잭션 파일 잠금이 비활성화되어있어 동시 접근 시 문제가 발생할 수 있습니다. config.php에서 \"filelocking.enabled\"를 활성화하여 이 문제를 해결할 수 있습니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">사용 설명서 ↗</a>를 참고하십시오.",
+ "If your installation is not installed at the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (suggestion: \"{suggestedOverwriteCliURL}\")" : "도메인의 루트 경로에 설치되어 있지 않고 시스템 Cron을 사용한다면 URL 생성에 문제가 발생할 수도 있습니다. 이 문제를 예방하려면 config.php의 \"overwrite.cli.url\" 옵션을 설치본의 웹 루트 경로로 설정하십시오(제안: \"{suggestedOverwriteCliURL}\")",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "CLI로 cron 작업을 실행시킬 수 없었습니다. 다음 오류가 발생했습니다:",
+ "Last background job execution ran {relativeTime}. Something seems wrong." : "마지막 백그라운드 작업이 {relativeTime}에 실행되었습니다. 문제가 발생한 것 같습니다.",
+ "Check the background job settings" : "백그라운드 작업 설정 확인",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "웹 서버에서 인터넷에 연결할 수 없습니다. 여러 종단점에 접근할 수 없습니다. 외부 저장소 마운트, 업데이트 알림, 추가 앱 설치 등 기능이 작동하지 않을 것입니다. 원격으로 파일에 접근하거나 알림 이메일을 보내지 못할 수도 있습니다. 모든 기능을 사용하려면 이 서버를 인터넷에 연결하십시오.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "메모리 캐시가 구성되지 않았습니다. 가능한 경우 memcache를 설정하여 성능을 향상시킬 수 있습니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP에서 안전한 난수 발생기(/dev/urandom)를 사용할 수 없어 보안에 취약합니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "현재 PHP {version}을(를) 사용하고 있습니다. 배포판에서 지원하는 대로 PHP 버전을 업그레이드하여 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP 그룹에서 제공하는 성능 및 보안 업데이트</a>를 받는 것을 추천합니다.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "PHP 5.6을 실행하고 있습니다. 현재 사용하고 있는 Nextcloud의 주 버전은 PHP 5.6을 지원하는 마지막 버전입니다. Nextcloud 14로 업그레이드하려면 PHP 7.0 이상으로 업그레이드하십시오.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "역방향 프록시 헤더 설정이 올바르지 않거나 신뢰하는 프록시를 통해 Nextcloud에 접근하고 있을 수 있습니다. 만약 Nextcloud를 신뢰하는 프록시를 통해 접근하고 있지 않다면 이는 보안 문제이며 공격자가 Nextcloud에 보이는 IP 주소를 속이고 있을 수 있습니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
@@ -120,6 +134,7 @@
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP Opcache가 제대로 설정되어 있지 않습니다. 더 나은 성능을 위해서 <code>php.ini</code> 파일에 다음 설정을 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">추가하는 것을 권장합니다</a>:",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP 함수 \"set_time_limit\"을 사용할 수 없습니다. 스크립트가 실행 중간에 중지되어 설치를 깨트릴 수도 있습니다. 이 함수를 활성화하는 것을 추천합니다.",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "PHP에 Freetype 지원이 없습니다. 프로필 사진과 설정 인터페이스가 올바르게 표시되지 않을 수도 있습니다.",
+ "The PHP memory limit is below the recommended value of 512MB." : "PHP 메모리 제한이 추천값인 512MB보다 작습니다.",
"Error occurred while checking server setup" : "서버 설정을 확인하는 중 오류 발생",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "데이터 디렉터리와 파일을 인터넷에서 접근할 수 있는 것 같습니다. .htaccess 파일을 사용할 수 없습니다. 웹 서버 설정을 변경하여 데이터 디렉터리에 접근할 수 없도록 하거나, 데이터 디렉터리를 웹 서버 문서 디렉터리 밖으로 옮기는 것을 추천합니다.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "\"{header}\" HTTP 헤더가 \"{expected}\"(으)로 설정되어 있지 않습니다. 잠재적인 정보 유출 및 보안 위협이 될 수 있으므로 설정을 변경하는 것을 추천합니다.",
@@ -338,6 +353,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "설정에 따라서 관리자 권한으로 아래 단추를 눌러서 이 도메인을 신뢰하도록 설정할 수 있습니다.",
"Add \"%s\" as trusted domain" : "\"%s\"을(를) 신뢰할 수 있는 도메인으로 추가",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "도움이 필요한 경우 <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">문서</a>를 참조하십시오.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP에서 안전한 난수 발생기(/dev/urandom)를 사용할 수 없어 보안에 취약합니다. 자세한 내용은 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">문서</a>를 참고하십시오.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP에 freetype 지원이 없습니다. 프로필 사진과 설정 인터페이스가 올바르게 표시되지 않을 수도 있습니다.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP 헤더가 \"{seconds}\"초 이상로 설정되어 있지 않습니다. <a href=\"{docUrl}\" rel=\"noreferrer noopener\">보안 팁</a>에서 제안하는 것처럼 HSTS를 활성화하는 것을 추천합니다.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "사이트에 HTTP를 통해서 보안 없이 접근하고 있습니다. <a href=\"{docUrl}\">보안 팁</a>에서 제안하는 것처럼 HTTPS를 설정하는 것을 추천합니다.",
diff --git a/core/l10n/nb.js b/core/l10n/nb.js
index 9fd491dd498..0d901723b01 100644
--- a/core/l10n/nb.js
+++ b/core/l10n/nb.js
@@ -128,7 +128,6 @@ OC.L10N.register(
"Check the background job settings" : "Kontroller instillinger for bakgrunnsjobb",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Denne tjeneren har ingen fungerende internett-forbindelse. Dette betyr at noen funksjoner, som tilknytning av eksterne lagre, varslinger om oppdateringer eller installering av tredjepartsprogrammer ikke vil virke. Fjerntilgang til filer og utsending av varsler på e-post vil kanskje ikke virke heller. Det anbefales å aktivere en internett-forbindelse for denne tjeneren hvis du vil ha full funksjonalitet.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Hurtigminne er ikke satt opp. For bedre ytelse bør du sette opp hurtigminne hvis det er tilgjengelig. Mer informasjon finnes i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ikke lesbar for PHP, noe som frarådes av sikkerhetsgrunner. Mer informasjon finnes i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du bruker PHP-{version}. Oppgrader PHP-versjonen for å utnytte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">ytelsen og sikkerhetsoppdateringene som tilbys av PHP Group</a, så fort din distribusjon støtter det.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Du kjører nå PHP 5.6. Den nåværende hovedversjonen er den siste som støtter PHP 5.6. Det anbefales å oppgradere PHP-versjonen til 7.0+, for å kunne oppgradere til Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Det omvendte mellomtjener-hodet er ikke satt opp rett, eller du kobler til Nextcloud fra en betrodd mellomtjener. Hvis ikke, er dette et sikkerhetsproblem, og kan tillate en angriper å forfalske deres IP-adresse slik den er synlig for Nextcloud. Ytterligere informasjon er å finne i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
@@ -393,6 +392,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Avhengig av oppsettet kan du, som administrator, kanskje også bruke kanppen nedenfor til å stole på dette domenet.",
"Add \"%s\" as trusted domain" : "Legg til \"%s\" som et klarert domene",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "For hjelp, se i <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentasjonen</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ikke lesbar for PHP, noe som frarådes av sikkerhetsgrunner. Mer informasjon finnes i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Din PHP-installasjon har ikke FreeType-støtte. Dette fører til knekte profilbilder og skadelidende innstillingsgrensesnitt.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP innledning \"Strict-Transport-Security\" angir styrke på transportsikkerhet og er ikke satt opp med minst \"{seconds}\" sekunder. For bedre sikkerhet anbefales det å skru på HSTS som beskrevet i <a href=\"{docUrl}\" rel=\"noreferrer noopener\">sikkerhetstipsene</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Du besøker denne nettsiden via HTTP. Det anbefales sterkt at du setter opp tjeneren til å kreve HTTPS i stedet, som beskrevet i <a href=\"{docUrl}\">sikkerhetstipsene</a>.",
diff --git a/core/l10n/nb.json b/core/l10n/nb.json
index 291a9dbb009..3c0b7bc03ff 100644
--- a/core/l10n/nb.json
+++ b/core/l10n/nb.json
@@ -126,7 +126,6 @@
"Check the background job settings" : "Kontroller instillinger for bakgrunnsjobb",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Denne tjeneren har ingen fungerende internett-forbindelse. Dette betyr at noen funksjoner, som tilknytning av eksterne lagre, varslinger om oppdateringer eller installering av tredjepartsprogrammer ikke vil virke. Fjerntilgang til filer og utsending av varsler på e-post vil kanskje ikke virke heller. Det anbefales å aktivere en internett-forbindelse for denne tjeneren hvis du vil ha full funksjonalitet.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Hurtigminne er ikke satt opp. For bedre ytelse bør du sette opp hurtigminne hvis det er tilgjengelig. Mer informasjon finnes i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ikke lesbar for PHP, noe som frarådes av sikkerhetsgrunner. Mer informasjon finnes i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Du bruker PHP-{version}. Oppgrader PHP-versjonen for å utnytte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">ytelsen og sikkerhetsoppdateringene som tilbys av PHP Group</a, så fort din distribusjon støtter det.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Du kjører nå PHP 5.6. Den nåværende hovedversjonen er den siste som støtter PHP 5.6. Det anbefales å oppgradere PHP-versjonen til 7.0+, for å kunne oppgradere til Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Det omvendte mellomtjener-hodet er ikke satt opp rett, eller du kobler til Nextcloud fra en betrodd mellomtjener. Hvis ikke, er dette et sikkerhetsproblem, og kan tillate en angriper å forfalske deres IP-adresse slik den er synlig for Nextcloud. Ytterligere informasjon er å finne i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
@@ -391,6 +390,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Avhengig av oppsettet kan du, som administrator, kanskje også bruke kanppen nedenfor til å stole på dette domenet.",
"Add \"%s\" as trusted domain" : "Legg til \"%s\" som et klarert domene",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "For hjelp, se i <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentasjonen</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom er ikke lesbar for PHP, noe som frarådes av sikkerhetsgrunner. Mer informasjon finnes i <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentasjonen</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Din PHP-installasjon har ikke FreeType-støtte. Dette fører til knekte profilbilder og skadelidende innstillingsgrensesnitt.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP innledning \"Strict-Transport-Security\" angir styrke på transportsikkerhet og er ikke satt opp med minst \"{seconds}\" sekunder. For bedre sikkerhet anbefales det å skru på HSTS som beskrevet i <a href=\"{docUrl}\" rel=\"noreferrer noopener\">sikkerhetstipsene</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Du besøker denne nettsiden via HTTP. Det anbefales sterkt at du setter opp tjeneren til å kreve HTTPS i stedet, som beskrevet i <a href=\"{docUrl}\">sikkerhetstipsene</a>.",
diff --git a/core/l10n/nl.js b/core/l10n/nl.js
index 5e2de96d025..43c30815059 100644
--- a/core/l10n/nl.js
+++ b/core/l10n/nl.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Controleer de achtergrondtaak instellingen",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Deze server heeft geen werkende internetverbinding: meerdere endpoints kunnen niet worden bereikt. Dat betekent dat sommige functies, zoals het gebruik van externe opslag, notificaties over updates of installatie van apps van derde partijen niet werken. Ook het benaderen van bestanden vanaf een remote locatie en het versturen van notificatie emails kan mislukken. We adviseren om de internetverbinding voor deze server in te schakelen als je alle functies wilt gebruiken.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Er is geen geheugencache geconfigureerd. Om de prestaties te verhogen kun je een geheugencache configureren als die beschikbaar is. Meer informatie vind je in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is niet leesbaar voor PHP, het geen sterk wordt afgeraden om veiligheidsredenen. Meer informatie in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Geen bruikbare bron voor randomnes gevonden door PHP, hetgeen sterk wordt aanbevolen om beveiligingsredenen. Meer informatie in de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Je draait momenteel PHP {version}. We adviseren je om, zo gauw je distributie dat biedt, je PHP versie bij te werken voor <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">betere prestaties en beveiliging geleverd door de PHP Group</a>.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Je gebruikt momenteel PHP 5.6. Dit is de laatste versie van Nextcloud die PHP 5.6 ondersteund. Wij raden aan om je PHP te upgraden naar versie 7.0 of later zodat je kunt upgraden naar Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "De reverse proxy headerconfiguratie is onjuist, of je hebt toegang tot Nextcloud via een vertrouwde proxy. Als je Nextcloud niet via een vertrouwde proxy benadert, dan levert dat een beveiligingsrisico op, waardoor een aanvaller het IP-adres dat Nextcloud ziet kan vervalsen. Meer informatie is te vinden in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
@@ -144,6 +144,8 @@ OC.L10N.register(
"This is particularly recommended when using the desktop client for file synchronisation." : "Dit wordt vooral aanbevolen als de desktop client wordt gebruikt voor bestandssynchronisatie.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a>." : "Om te migreren naar een andere database moet je de commandoregel tool gebruiken: 'occ db:convert-type'; <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">zie de documentatie ↗</a>.",
"Use of the the built in php mailer is no longer supported. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Please update your email server settings ↗<a/>." : "D ingebouwde php mailer wordt niet langer ondersteund. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Werk je mailserverinstellingen bij ↗<a/>.",
+ "The PHP memory limit is below the recommended value of 512MB." : "De PHP geheugenlimiet is onder de aanbevolen waarde van 512MB.",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Sommige app directories zijn eigendom van een andere gebruiker dan de webserver . Dat kan het geval zijn als apps handmatig zijn geïnstalleerd. Controleer de permissies van de volgende app directories:",
"Error occurred while checking server setup" : "Een fout trad op bij checken serverconfiguratie",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Je datamap en je bestanden zijn waarschijnlijk vanaf het internet bereikbaar. Het .htaccess-bestand werkt niet. We raden ten zeerste aan aan om je webserver zodanig te configureren, dat de datadirectory niet bereikbaar is vanaf het internet of om je datadirectory te verplaatsen naar een locatie buiten de document-root van de webserver.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "De \"{header}\" HTTP header is niet ingesteld als \"{expected}\". Dit is een potentieel security of privacy risico en we adviseren om deze instelling te wijzigen.",
@@ -180,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "Met jou en de groep {group} gedeeld door {owner}",
"Shared with you and {circle} by {owner}" : "Gedeeld met jou en {circle} door {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Gedeeld met jou en gesprek {conversation} door {owner}",
+ "Shared with you in a conversation by {owner}" : "Met jou in een gesprek gedeeld door {owner}",
"Shared with you by {owner}" : "Met je gedeeld door {owner}",
"Choose a password for the mail share" : "Kies een wachtwoord om gedeelde te mailen",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} delen via link",
@@ -211,6 +214,7 @@ OC.L10N.register(
"{sharee} (remote group)" : "{sharee} (remote group)",
"{sharee} (email)" : "{sharee} (email)",
"{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (gesprek)",
"Share" : "Delen",
"Name or email address..." : "Naam of emailadres...",
"Name or federated cloud ID..." : "Naam of gefedereerd Cloud ID:",
@@ -390,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Afhankelijk van je instellingen kun je mogelijk als admin ook de onderstaande knop gebruiken om dit domein te vertrouwen.",
"Add \"%s\" as trusted domain" : "\"%s\" toevoegen als vertrouwd domein",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Voor hulp, zie de <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentatie</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is niet leesbaar voor PHP, hetgeen sterk wordt afgeraden om veiligheidsredenen. Meer informatie in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Je PHP ondersteunt geen freetype. Daardoor kunnen profielfoto's en de instellingen niet goed weergegeven worden.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "De \"Strict-Transport-Security\" HTTP header is niet ingesteld als minimaal \"{seconds}\" seconden. Voor verbeterde beveiliging adviseren we HSTS in te schakelen zoals beschreven in onze <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "De site is onveilig verbonden over HTTP. We adviseren je dringend om je server zo te configureren dat HTTPS wordt vereist, zoals beschreven in onze <a href=\"{docUrl}\">security tips</a>.",
diff --git a/core/l10n/nl.json b/core/l10n/nl.json
index 5dae1bf1568..a626b963f07 100644
--- a/core/l10n/nl.json
+++ b/core/l10n/nl.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Controleer de achtergrondtaak instellingen",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Deze server heeft geen werkende internetverbinding: meerdere endpoints kunnen niet worden bereikt. Dat betekent dat sommige functies, zoals het gebruik van externe opslag, notificaties over updates of installatie van apps van derde partijen niet werken. Ook het benaderen van bestanden vanaf een remote locatie en het versturen van notificatie emails kan mislukken. We adviseren om de internetverbinding voor deze server in te schakelen als je alle functies wilt gebruiken.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Er is geen geheugencache geconfigureerd. Om de prestaties te verhogen kun je een geheugencache configureren als die beschikbaar is. Meer informatie vind je in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is niet leesbaar voor PHP, het geen sterk wordt afgeraden om veiligheidsredenen. Meer informatie in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Geen bruikbare bron voor randomnes gevonden door PHP, hetgeen sterk wordt aanbevolen om beveiligingsredenen. Meer informatie in de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Je draait momenteel PHP {version}. We adviseren je om, zo gauw je distributie dat biedt, je PHP versie bij te werken voor <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">betere prestaties en beveiliging geleverd door de PHP Group</a>.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Je gebruikt momenteel PHP 5.6. Dit is de laatste versie van Nextcloud die PHP 5.6 ondersteund. Wij raden aan om je PHP te upgraden naar versie 7.0 of later zodat je kunt upgraden naar Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "De reverse proxy headerconfiguratie is onjuist, of je hebt toegang tot Nextcloud via een vertrouwde proxy. Als je Nextcloud niet via een vertrouwde proxy benadert, dan levert dat een beveiligingsrisico op, waardoor een aanvaller het IP-adres dat Nextcloud ziet kan vervalsen. Meer informatie is te vinden in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
@@ -142,6 +142,8 @@
"This is particularly recommended when using the desktop client for file synchronisation." : "Dit wordt vooral aanbevolen als de desktop client wordt gebruikt voor bestandssynchronisatie.",
"To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a>." : "Om te migreren naar een andere database moet je de commandoregel tool gebruiken: 'occ db:convert-type'; <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">zie de documentatie ↗</a>.",
"Use of the the built in php mailer is no longer supported. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Please update your email server settings ↗<a/>." : "D ingebouwde php mailer wordt niet langer ondersteund. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Werk je mailserverinstellingen bij ↗<a/>.",
+ "The PHP memory limit is below the recommended value of 512MB." : "De PHP geheugenlimiet is onder de aanbevolen waarde van 512MB.",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Sommige app directories zijn eigendom van een andere gebruiker dan de webserver . Dat kan het geval zijn als apps handmatig zijn geïnstalleerd. Controleer de permissies van de volgende app directories:",
"Error occurred while checking server setup" : "Een fout trad op bij checken serverconfiguratie",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Je datamap en je bestanden zijn waarschijnlijk vanaf het internet bereikbaar. Het .htaccess-bestand werkt niet. We raden ten zeerste aan aan om je webserver zodanig te configureren, dat de datadirectory niet bereikbaar is vanaf het internet of om je datadirectory te verplaatsen naar een locatie buiten de document-root van de webserver.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "De \"{header}\" HTTP header is niet ingesteld als \"{expected}\". Dit is een potentieel security of privacy risico en we adviseren om deze instelling te wijzigen.",
@@ -178,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "Met jou en de groep {group} gedeeld door {owner}",
"Shared with you and {circle} by {owner}" : "Gedeeld met jou en {circle} door {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Gedeeld met jou en gesprek {conversation} door {owner}",
+ "Shared with you in a conversation by {owner}" : "Met jou in een gesprek gedeeld door {owner}",
"Shared with you by {owner}" : "Met je gedeeld door {owner}",
"Choose a password for the mail share" : "Kies een wachtwoord om gedeelde te mailen",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} delen via link",
@@ -209,6 +212,7 @@
"{sharee} (remote group)" : "{sharee} (remote group)",
"{sharee} (email)" : "{sharee} (email)",
"{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (gesprek)",
"Share" : "Delen",
"Name or email address..." : "Naam of emailadres...",
"Name or federated cloud ID..." : "Naam of gefedereerd Cloud ID:",
@@ -388,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Afhankelijk van je instellingen kun je mogelijk als admin ook de onderstaande knop gebruiken om dit domein te vertrouwen.",
"Add \"%s\" as trusted domain" : "\"%s\" toevoegen als vertrouwd domein",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Voor hulp, zie de <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentatie</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom is niet leesbaar voor PHP, hetgeen sterk wordt afgeraden om veiligheidsredenen. Meer informatie in onze <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentatie</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Je PHP ondersteunt geen freetype. Daardoor kunnen profielfoto's en de instellingen niet goed weergegeven worden.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "De \"Strict-Transport-Security\" HTTP header is niet ingesteld als minimaal \"{seconds}\" seconden. Voor verbeterde beveiliging adviseren we HSTS in te schakelen zoals beschreven in onze <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "De site is onveilig verbonden over HTTP. We adviseren je dringend om je server zo te configureren dat HTTPS wordt vereist, zoals beschreven in onze <a href=\"{docUrl}\">security tips</a>.",
diff --git a/core/l10n/pl.js b/core/l10n/pl.js
index bf893a518d1..097e11cca58 100644
--- a/core/l10n/pl.js
+++ b/core/l10n/pl.js
@@ -35,6 +35,7 @@ OC.L10N.register(
"Turned on maintenance mode" : "Włączony tryb konserwacji",
"Turned off maintenance mode" : "Wyłączony tryb konserwacji",
"Maintenance mode is kept active" : "Tryb konserwacji pozostaje aktywny",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "Oczekiwanie na zakończenie zadania cron (ponowne sprawdzenie w ciągu 5 sekund) ...",
"Updating database schema" : "Aktualizacja struktury bazy danych",
"Updated database" : "Zaktualizuj bazę",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "Sprawdzam czy struktura bazy danych może zostać zaktualizowana (to może zająć sporo czasu i zależy od rozmiaru bazy danych)",
@@ -83,6 +84,7 @@ OC.L10N.register(
"No" : "Nie",
"Yes" : "Tak",
"No files in here" : "Nie ma tu żadnych plików",
+ "No more subfolders in here" : "Brak tutaj podkatalogów",
"Choose" : "Wybierz",
"Copy" : "Skopiuj",
"Move" : "Przenieś",
@@ -104,6 +106,7 @@ OC.L10N.register(
"Pending" : "W oczekiwaniu",
"Copy to {folder}" : "Skopiuj do (folder)",
"Move to {folder}" : "Przenieś do (folder)",
+ "New in" : "Nowość w",
"View changelog" : "Zobacz listę zmian",
"Very weak password" : "Bardzo słabe hasło",
"Weak password" : "Słabe hasło",
@@ -112,20 +115,44 @@ OC.L10N.register(
"Strong password" : "Silne hasło",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Serwer WWW nie jest jeszcze na tyle poprawnie skonfigurowany, aby umożliwić synchronizację plików, ponieważ interfejs WebDAV wydaje się być uszkodzony.",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Twój serwer WWW nie jest poprawnie skonfigurowany aby poprawnie wyświetlić \"{url}\". Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
+ "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP wydaje się być błędnie skonfigurowane odnośnie zapytania o zmienne środowiskowe systemu. Test gentenv(\"PATH\") zwraca pustą wartość.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "Sprawdź proszę <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentację instalacji ↗</a> dla konfiguracji PHP Twojego serwera względem informacji konfiguracyjnych dokumentacji, zwłaszcza kiedy używasz php-fpm.",
+ "The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Została włączona konfiguracja Read-Only. Zapobiegnie to ustawieniu niektórych konfiguracji poprzez interfejs web. Ponadto plikowi muszą zostać nadane prawa zapisu ręcznie dla każdej aktualizacji.",
+ "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Twoja baza danych nie działa z poziomem izolacji transakcji \"READ COMMITTED\". Może to powodować problemy kiedy wiele akcji będzie wykonywanych równolegle.",
+ "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "Brak modułu PHP 'fileinfo'. Zalecamy włączenie tego modułu, aby uzyskać najlepsze wyniki przy rozpoznawaniu typów MIME.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "Zainstalowana wersja {name} jest starsza niż {version}. Ze względów stabilności i wydajności zalecamy aktualizację do nowszej wersji {name}.",
+ "Transactional file locking is disabled, this might lead to issues with race conditions. Enable \"filelocking.enabled\" in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a> for more information." : "Transakcyjne blokowanie plików jest wyłączone. Może to powodować problemy w działaniu. Włącz 'filelocking.enabled' w config.php, aby rozwiązać te problemy. Sprawdź <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentację ↗</a>, aby uzyskać więcej informacji.",
+ "If your installation is not installed at the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (suggestion: \"{suggestedOverwriteCliURL}\")" : "Twoja instancja nie jest zainstalowana w katalogu głównym dla domeny, a używasz systemowego Cron'a, zatem mogą wystąpić kłopoty w poprawnym generowaniu URL'a. Aby zapobiec problemów ustaw proszę opcję \"overwrite.cli.url\" w Twoim pliku config.php do katalogu głównego Twojej instalacji (sugerowany: \"{suggestedOverwriteCliURL}\")",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nie było możliwe uruchomienie zadania cron przy pomocy CLI. Pojawił się następujący błąd techniczny: ",
+ "Last background job execution ran {relativeTime}. Something seems wrong." : "Ostatnie zadanie w tle trwało {relativeTime}. Coś jest nie tak.",
+ "Check the background job settings" : "Sprawdź ustawienia zadań w tle",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Serwer nie ma aktywnego połączenia z Internetem. Wiele połączeń nie może być osiągniętych. Oznacza to, że część funkcji takich jak zewnętrzny magazyn, powiadomienia o aktualizacjach lub instalacja aplikacji firm trzecich nie będzie działała. Dostęp zdalny do plików oraz wysyłanie powiadomień mailowych również może nie działać. Sugerujemy udostępnienie połączenia z Internetem temu serwerowi jeśli chcesz mieć pełną funkcjonalność.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nie skonfigurowano pamięci cache. Jeśli to możliwe skonfiguruj pamięć cache, aby zwiększyć wydajność. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP nie może czytać z /dev/urandom co jest wymagane ze względów bezpieczeństwa. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nie znaleziono stosownego źródła losowości. Jest to bardzo niezalecane w związku z bezpieczeństwem. Więcej informacji znajdziesz w <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Posiadasz aktualnie PHP w wersji {version}. Aby skorzystać z <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">aktualizacji dotyczących wydajności i bezpieczeństwa otrzymanych z PHP Group</a> zachęcamy do podniesienia wersji PHP, kiedy tylko Twoja dystrybucja będzie je wspierała.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Używasz aktualnie PHP w wersji 5.6. Aktualna, główna wersja Nextcloud jest ostatnią wspierającą PHP 5.6. Zalecamy upgrade PHP do wersji 7.0+ aby można było w przyszłości korzystać z Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfiguracja nagłówków reverse proxy jest niepoprawna albo łączysz się do Nextclouda przez zaufane proxy. Jeśli nie łączysz się z zaufanego proxy, to jest to problem bezpieczeństwa i atakujący może podszyć się pod adres IP jako widoczny dla Nextclouda. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Jako cache jest skonfigurowane \"memcached\", ale błędny moduł PHP \"memcache\" jest zainstalowany. \\OC\\Memcache\\Memcached wspiera tylko \"memcached\", a nie \"memcache\". Sprawdź <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki o obu tych modułach</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Niektóre pliki nie przeszły sprawdzania spójności. Dalsze informacje jak to naprawić mogą być znalezione w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Lista niepoprawnych plików…</a> / <a href=\"{rescanEndpoint}\">Skanowanie ponowne…</a>)",
+ "The PHP OPcache module is not loaded. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to load it into your PHP installation." : "Moduł PHP OPcache nie jest załadowany. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dla lepszej wydajności zalecamy</a> załadowanie go w swojej instalacji PHP.",
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcache nie jest prawidłowo skonfigurowany <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dla lepszej wydajności zalecamy</a> użycie następujących ustawień w <code>php.ini</code>: ",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "Funkcja PHP \"set_time_limit\" nie jest dostępna. Może to powodować zatrzymanie skryptów w podczas działania i w efekcie przerwanie instalacji. Silnie rekomendujemy włączenie tej funkcji.",
+ "Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "Twoje PHP nie posiada wsparcia czcionek FreeType, co powoduje problemy z zdjęciami profilowymi oraz interfejsem ustawień.",
+ "Missing index \"{indexName}\" in table \"{tableName}\"." : "Brak indeksu \"{indexName}\" w tabeli \"{tableName}\".",
+ "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "W bazie brakuje indeksów. Ponieważ dodawanie indeksów na dużych tabelach może zająć dużo czasu, nie zostało to wykonane automatycznie. Ręczne wykonanie \"occ db:add-missing-indices\" spowoduje dodanie indeksów w trakcie pracy instancji. Po dodaniu indeksów zapytania na tych tabelach bywają znacznie szybsze.",
+ "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite jest aktualnie używany jako baza danych. Dla większych instalacji zalecamy przełączenie na inną bazę danych.",
+ "This is particularly recommended when using the desktop client for file synchronisation." : "Jest to szczególnie zalecane w przypadku korzystania z desktopowego klienta do synchronizacji plików.",
+ "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a>." : "Aby zmigrować do innej bazy danych użyj narzędzia z terminala: \"occ db:convert-type\" albo sprawdź <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentację ↗</a>.",
+ "Use of the the built in php mailer is no longer supported. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Please update your email server settings ↗<a/>." : "Mailer wbudowany w PHP nie jest już wspierany. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Uaktualnij ustawienia swojego serwera maili ↗<a/>.",
+ "The PHP memory limit is below the recommended value of 512MB." : "Limit pamięci PHP jest niższy niż zalecane 512MB.",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Niektóre katalogi aplikacji są własnością innego użytkownika niż serwer WWW. Może to wystąpić gdy aplikacje zostały zainstalowane ręcznie. Sprawdź uprawnienia poniższych katalogów:",
"Error occurred while checking server setup" : "Pojawił się błąd podczas sprawdzania ustawień serwera",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Twój katalog z danymi i twoje pliki prawdopodobnie są dostępne przez Internet. Plik .htaccess nie działa. Usilnie zalecamy, żebyś tak skonfigurował swój serwer, żeby katalog z danymi nie był dalej dostępny lub przenieś swój katalog z danymi poza katalog root serwera webowego.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "Nagłówek HTTP {header} nie jest skonfigurowany, aby pasował do {expected}. Jest to poterncjalne zagrożenie prywatności oraz bezpieczeństwa i zalecamy poprawienie tego ustawienia.",
"The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "Nagłówek HTTP {header} nie jest skonfigurowany, aby pasował do {expected}. Jest to poterncjalne zagrożenie prywatności oraz bezpieczeństwa i zalecamy poprawienie tego ustawienia.",
+ "The \"{header}\" HTTP header is not set to \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". This can leak referer information. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C Recommendation ↗</a>." : "Nagłówek HTTP \"{header}\" nie jest ustawiony na \"{val1}\", \"{val2}\", \"{val3}\", ani \"{val4}\". Może to powodować wycieki adresu strony. Zobacz<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">rekomendacje W3C ↗</a>.",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "Nagłówek HTTP \"Strict-Transport-Security\" nie jest ustawiony na przynajmniej \"{seconds}\" sekund. Dla zwiększenia bezpieczeństwa zalecamy ustawienie HSTS tak jak opisaliśmy to w naszych <a href=\"{docUrl}\" rel=\"noreferrer noopener\">wskazówkach dotyczących bezpieczeństwa ↗</a>.",
+ "Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips ↗</a>." : "Dostęp do tej strony jest za pośrednictwem protokołu HTTP. Zalecamy skonfigurowanie dostępu do serwera za pomocą protokołu HTTPS zamiast HTTP, jak to opisano w naszych <a href=\"{docUrl}\">wskazówkach bezpieczeństwa ↗</a>.",
"Shared" : "Udostępniono",
"Shared with" : "Współdzielone z",
"Shared by" : "Współdzielone przez",
@@ -149,15 +176,21 @@ OC.L10N.register(
"Set expiration date" : "Ustaw datę wygaśnięcia",
"Expiration" : "Wygaśnięcie",
"Expiration date" : "Data wygaśnięcia",
+ "Note to recipient" : "Notatka dla odbiorcy",
"Share link" : "Udostępnij link",
"Enable" : "Włącz",
"Shared with you and the group {group} by {owner}" : "Udostępnione tobie i grupie {group} przez {owner}",
+ "Shared with you and {circle} by {owner}" : "Współdzielone z Tobą i {circle} przez {owner}",
+ "Shared with you and the conversation {conversation} by {owner}" : "Współdzielone z Tobą i konwersacją {conversation} przez {owner}",
+ "Shared with you in a conversation by {owner}" : "Współdzielone Tobie w konwersacji z {owner}",
"Shared with you by {owner}" : "Udostępnione tobie przez {owner}",
"Choose a password for the mail share" : "Wybierz hasło do współdzielenia e-mailem",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} udostępniane za pośrednictwem łącza",
"group" : "grupa",
"remote" : "zdalny",
+ "remote group" : "zdalna grupa",
"email" : "email",
+ "conversation" : "konwersacja",
"shared by {sharer}" : "współdzielone przez {sharer}",
"Unshare" : "Zatrzymaj współdzielenie",
"Can reshare" : "Może współdzielić z innymi",
@@ -173,11 +206,14 @@ OC.L10N.register(
"This list is maybe truncated - please refine your search term to see more results." : "Ta lista może być obcięta - proszę bardziej określić fraze wyszukiwania, aby zobaczyć więcej wyników.",
"No users or groups found for {search}" : "Nie znaleziono użytkowników lub grup dla {search}",
"No users found for {search}" : "Nie znaleziono użytkowników dla {search}",
+ "An error occurred (\"{message}\"). Please try again" : "Wystąpił błąd (\"{message}\"). Spróbuj ponownie",
"An error occurred. Please try again" : "Wystąpił błąd. Proszę spróbować ponownie.",
"{sharee} (group)" : "{sharee} (grupa)",
"{sharee} (remote)" : "{sharee} (zdalny)",
+ "{sharee} (remote group)" : "{sharee} (zdalna grupa)",
"{sharee} (email)" : "{sharee} (e-mail)",
"{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (konwersacja)",
"Share" : "Udostępnij",
"Name or email address..." : "Nazwa lub adres e-mail…",
"Name or federated cloud ID..." : "Nazwa lub ID chmury stowarzyszonej…",
@@ -260,10 +296,15 @@ OC.L10N.register(
"Need help?" : "Potrzebujesz pomocy?",
"See the documentation" : "Zapoznaj się z dokumentacją",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Ta aplikacja wymaga JavaScript do poprawnego działania. Proszę {linkstart}włączyć JavaScript{linkend} i przeładować stronę.",
+ "Skip to main content" : "Przeskocz do treści",
+ "Skip to navigation of app" : "Przeskocz do nawigacji",
"More apps" : "Więcej aplikacji",
+ "More apps menu" : "Więcej aplikacji",
"Search" : "Wyszukaj",
"Reset search" : "Zresetuj wyszukiwanie",
"Contacts" : "Kontakty",
+ "Contacts menu" : "Menu kontaktów",
+ "Settings menu" : "Menu ustawień",
"Confirm your password" : "Potwierdź hasło",
"Server side authentication failed!" : "Uwierzytelnianie po stronie serwera nie powiodło się!",
"Please contact your administrator." : "Skontaktuj się z administratorem",
@@ -272,21 +313,30 @@ OC.L10N.register(
"Username or email" : "Nazwa użytkownika lub adres e-mail",
"Log in" : "Zaloguj",
"Wrong password." : "Złe hasło",
+ "User disabled" : "Użytkownik zablokowany",
"Forgot password?" : "Zapomniano hasła?",
+ "Back to login" : "Powrót do logowania",
+ "Connect to your account" : "Połącz się z kontem",
+ "Please log in before granting %s access to your %s account." : "Zaloguj się aby udzielić %s dostępu do Twojego konta %s.",
"App token" : "Token aplikacji",
"Grant access" : "Udziel dostępu",
+ "Alternative log in using app token" : "Zaloguj alternatywnie używając tokenu aplikacji",
"Account access" : "Dostęp do konta",
"You are about to grant %s access to your %s account." : "Zamierzasz udzielić %s dostępu do Twojego konta %s.",
"Redirecting …" : "Przekierowuję…",
"New password" : "Nowe hasło",
"New Password" : "Nowe hasło",
+ "This share is password-protected" : "Ten udział jest zabezpieczony hasłem",
+ "The password is wrong. Try again." : "Podane hasło jest błędne. Spróbuj ponownie.",
"Two-factor authentication" : "Uwierzytelnianie dwuskładnikowe",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "Dla Twojego konta uruchomiono wzmocnioną ochronę. Uwierzytelnij przy pomocy drugiego składnika.",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Nie udało się załadować przynajmniej jednej z Twoich metod uwierzytelnienia dwuskładnikowego. Proszę skontaktować się z administratorem.",
"Cancel log in" : "Anuluj logowanie",
"Use backup code" : "Użyj kodu zapasowego",
"Error while validating your second factor" : "Błąd podczas sprawdzania drugiego składnika",
"Access through untrusted domain" : "Dostęp przez niezaufaną domenę",
"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." : "Proszę skontaktuj się z administratorem. Jeśli nim jesteś, to zmień ustawienie w zmiennej \"trusted_domains\" w pliku config/config.php tak jak w przykładzie config.sample.php.",
+ "Further information how to configure this can be found in the %sdocumentation%s." : "Więcej informacji o konfiguracji znajdziesz w %sdokumentacji%s.",
"App update required" : "Aktualizacja aplikacji wymagana",
"%s will be updated to version %s" : "%s zostanie zaktualizowane do wersji %s",
"These apps will be updated:" : "Te aplikacje zostaną zaktualizowane:",
@@ -305,22 +355,45 @@ OC.L10N.register(
"This page will refresh itself when the %s instance is available again." : "Strona odświeży się gdy instancja %s będzie ponownie dostępna.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Skontaktuj się z administratorem, jeśli ten komunikat pojawił się nieoczekiwanie lub wyświetla się ciągle.",
"Thank you for your patience." : "Dziękuję za cierpliwość.",
+ "%s (3rdparty)" : "%s (od innych)",
"There was an error loading your contacts" : "Wystąpił błąd podczas wczytywania twoich kontaktów",
+ "Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Serwer WWW nie jest jeszcze na tyle poprawnie skonfigurowany, aby umożliwić synchronizację plików, ponieważ interfejs WebDAV wydaje się być uszkodzony.",
+ "Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Serwer WWW nie jest poprawnie skonfigurowany, aby wyświetlić \"{url}\". Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
+ "This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Serwer nie ma aktywnego połączenia z Internetem. Wiele połączeń nie może być osiągniętych. Oznacza to, że część funkcji takich jak zewnętrzny magazyn, powiadomienia o aktualizacjach lub instalacja aplikacji firm trzecich nie będzie działała. Dostęp zdalny do plików oraz wysyłanie powiadomień mailowych również może nie działać. Sugerujemy udostępnienie połączenia z Internetem temu serwerowi jeśli chcesz mieć pełną funkcjonalność.",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nie skonfigurowano pamięci cache. Jeśli to możliwe skonfiguruj pamięć cache, aby zwiększyć wydajność. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP nie może czytać z /dev/urandom co jest wymagane ze względów bezpieczeństwa. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Posiadasz aktualnie PHP w wersji {version}. Aby skorzystać z <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">aktualizacji dotyczących wydajności i bezpieczeństwa otrzymanych z PHP Group</a> zachęcamy do podniesienia wersji PHP, kiedy tylko twoja dystrybucja będzie je wspierała.",
+ "The reverse proxy headers configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If you are not accessing Nextcloud from a trusted proxy, this is a security issue and can allow an attacker to spoof their IP address as visible to Nextcloud. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Konfiguracja nagłówków reverse proxy jest niepoprawna albo łączysz się do Nextclouda przez zaufane proxy. Jeśli nie łączysz się z zaufanego proxy, to jest to problem bezpieczeństwa i atakujący może podszyć się pod adres IP jako widoczny dla Nextclouda. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
+ "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Jako cache jest skonfigurowane \"memcached\", ale błędny moduł PHP \"memcache\" jest zainstalowany. \\OC\\Memcache\\Memcached wspiera tylko \"memcached\", a nie \"memcache\". Sprawdź <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki o obu tych modułach</a>.",
+ "Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Niektóre pliki nie przeszły sprawdzania spójności. Dalsze informacje jak to naprawić mogą być znalezione w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Lista niepoprawnych plików...</a> / <a href=\"{rescanEndpoint}\">Skanowanie ponowne…</a>)",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcache nie jest prawidłowo skonfigurowany <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dla lepszej wydajności zalecamy</a> użycie następujących ustawień w <code>php.ini</code>:",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "Funkcja PHP \"set_time_limit\" nie jest dostępna. Może to powodować zatrzymanie skryptów w podczas działania i w efekcie przerwanie instalacji. Silnie rekomendujemy włączenie tej funkcji.",
+ "Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "Twój katalog z danymi i twoje pliki prawdopodobnie są dostępne przez Internet. Plik .htaccess nie działa. Usilnie zalecamy, żebyś tak skonfigurował swój serwer, żeby katalog z danymi nie był dalej dostępny lub przenieś swój katalog z danymi poza katalog root serwera webowego.",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "Nagłówek HTTP \"{header}\" nie jest ustawiony na \"{expected}\". Jest to potencjalnym zagrożeniem prywatności oraz bezpieczeństwa i zalecamy poprawienie tego ustawienia.",
+ "The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "Nagłówek HTTP \"Strict-Transport-Security\" nie jest ustawiony na przynajmniej \"{seconds}\" sekund. Dla zwiększenia bezpieczeństwa zalecamy ustawienie HSTS tak jak opisaliśmy to w naszych <a href=\"{docUrl}\" rel=\"noreferrer\">wskazówkach dot. bezpieczeństwa</a>.",
+ "You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "Dostęp do tej strony jest za pośrednictwem protokołu HTTP. Zalecamy skonfigurowanie dostępu do serwera za pomocą protokołu HTTPS zamiast HTTP, jak to opisano w naszych <a href=\"{docUrl}\">wskazówkach bezpieczeństwa</a>.",
"Shared with {recipients}" : "Współdzielony z {recipients}",
"Error setting expiration date" : "Błąd podczas ustawiania daty wygaśnięcia",
"The public link will expire no later than {days} days after it is created" : "Link publiczny wygaśnie nie później niż po {days} dniach od utworzenia",
"Share with other people by entering a user or group, a federated cloud ID or an email address." : "Współdziel z innymi osobami przez wpisanie użytkownika lub grupy, ID chmury stowarzyszonej lub adres e-mail.",
"Share with other people by entering a user or group or a federated cloud ID." : "Współdziel z innymi osobami przez wpisanie użytkownika lub grupy lub ID chmury stowarzyszonej.",
"Share with other people by entering a user or group or an email address." : "Współdziel z innymi osobami przez wpisanie użytkownika lub grupy lub adresu e-mail.",
+ "The server encountered an internal error and was unable to complete your request." : "Serwer napotkał błąd wewnętrzny i nie był w stanie ukończyć Twojego żądania.",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "Proszę skontaktować się z administratorem jeśli ten błąd będzie się pojawiał wielokrotnie, proszę do zgłoszenia dołączyć szczegóły techniczne opisane poniżej.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentation</a>." : "Aby uzyskać informację jak poprawnie skonfigurować Twój serwer, zajrzyj do <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">dokumentacji</a>.",
"This action requires you to confirm your password:" : "Ta akcja wymaga potwierdzenia Twojego hasła:",
"Wrong password. Reset it?" : "Niepoprawne hasło? Zresetować je?",
"Stay logged in" : "Pozostań zalogowany",
"Alternative Logins" : "Alternatywne loginy",
+ "You are about to grant \"%s\" access to your %s account." : "Masz zamiar przyznać \"%s\" dostep do twojego %s konta.",
"Alternative login using app token" : "Zaloguj alternatywnie używając tokenu aplikacji",
"You are accessing the server from an untrusted domain." : "Uzyskujesz dostęp do serwera z niezaufanej domeny.",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Proszę skontaktować się z Twoim administratorem. Jeżeli jesteś administratorem tej instalacji, skonfiguruj ustawienie \"trusted_domains\" w pliku config/config.php. Przykład konfiguracji jest zawarty w pliku config/config.sample.php.",
+ "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "W zależności od konfiguracji, jako administrator możesz także użyć poniższego przycisku aby zaufać tej domenie.",
"Add \"%s\" as trusted domain" : "Dodaj \"%s\" jako domenę zaufaną",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Aby uzyskać pomoc, zajrzyj do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentacji</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP nie może czytać z /dev/urandom co jest wymagane ze względów bezpieczeństwa. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
+ "Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Twoje PHP nie posiada wsparcia czcionek FreeType, co powoduje problemy z zdjęciami profilowymi oraz interfejsem ustawień.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Nagłówek HTTP \"Strict-Transport-Security\" nie jest ustawiony na przynajmniej \"{seconds}\" sekund. Dla zwiększenia bezpieczeństwa zalecamy ustawienie HSTS tak jak opisaliśmy to w naszych <a href=\"{docUrl}\" rel=\"noreferrer noopener\">wskazówkach dotyczących bezpieczeństwa</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Dostęp do tej strony jest za pośrednictwem protokołu HTTP. Zalecamy skonfigurowanie dostępu do serwera za pomocą protokołu HTTPS zamiast HTTP, jak to opisano w naszych <a href=\"{docUrl}\">wskazówkach bezpieczeństwa</a>.",
"Back to log in" : "Powrót do logowania",
diff --git a/core/l10n/pl.json b/core/l10n/pl.json
index de7242d8dca..dbfec4898b5 100644
--- a/core/l10n/pl.json
+++ b/core/l10n/pl.json
@@ -33,6 +33,7 @@
"Turned on maintenance mode" : "Włączony tryb konserwacji",
"Turned off maintenance mode" : "Wyłączony tryb konserwacji",
"Maintenance mode is kept active" : "Tryb konserwacji pozostaje aktywny",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "Oczekiwanie na zakończenie zadania cron (ponowne sprawdzenie w ciągu 5 sekund) ...",
"Updating database schema" : "Aktualizacja struktury bazy danych",
"Updated database" : "Zaktualizuj bazę",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "Sprawdzam czy struktura bazy danych może zostać zaktualizowana (to może zająć sporo czasu i zależy od rozmiaru bazy danych)",
@@ -81,6 +82,7 @@
"No" : "Nie",
"Yes" : "Tak",
"No files in here" : "Nie ma tu żadnych plików",
+ "No more subfolders in here" : "Brak tutaj podkatalogów",
"Choose" : "Wybierz",
"Copy" : "Skopiuj",
"Move" : "Przenieś",
@@ -102,6 +104,7 @@
"Pending" : "W oczekiwaniu",
"Copy to {folder}" : "Skopiuj do (folder)",
"Move to {folder}" : "Przenieś do (folder)",
+ "New in" : "Nowość w",
"View changelog" : "Zobacz listę zmian",
"Very weak password" : "Bardzo słabe hasło",
"Weak password" : "Słabe hasło",
@@ -110,20 +113,44 @@
"Strong password" : "Silne hasło",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Serwer WWW nie jest jeszcze na tyle poprawnie skonfigurowany, aby umożliwić synchronizację plików, ponieważ interfejs WebDAV wydaje się być uszkodzony.",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Twój serwer WWW nie jest poprawnie skonfigurowany aby poprawnie wyświetlić \"{url}\". Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
+ "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP wydaje się być błędnie skonfigurowane odnośnie zapytania o zmienne środowiskowe systemu. Test gentenv(\"PATH\") zwraca pustą wartość.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "Sprawdź proszę <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentację instalacji ↗</a> dla konfiguracji PHP Twojego serwera względem informacji konfiguracyjnych dokumentacji, zwłaszcza kiedy używasz php-fpm.",
+ "The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Została włączona konfiguracja Read-Only. Zapobiegnie to ustawieniu niektórych konfiguracji poprzez interfejs web. Ponadto plikowi muszą zostać nadane prawa zapisu ręcznie dla każdej aktualizacji.",
+ "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Twoja baza danych nie działa z poziomem izolacji transakcji \"READ COMMITTED\". Może to powodować problemy kiedy wiele akcji będzie wykonywanych równolegle.",
+ "The PHP module \"fileinfo\" is missing. It is strongly recommended to enable this module to get the best results with MIME type detection." : "Brak modułu PHP 'fileinfo'. Zalecamy włączenie tego modułu, aby uzyskać najlepsze wyniki przy rozpoznawaniu typów MIME.",
+ "{name} below version {version} is installed, for stability and performance reasons it is recommended to update to a newer {name} version." : "Zainstalowana wersja {name} jest starsza niż {version}. Ze względów stabilności i wydajności zalecamy aktualizację do nowszej wersji {name}.",
+ "Transactional file locking is disabled, this might lead to issues with race conditions. Enable \"filelocking.enabled\" in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a> for more information." : "Transakcyjne blokowanie plików jest wyłączone. Może to powodować problemy w działaniu. Włącz 'filelocking.enabled' w config.php, aby rozwiązać te problemy. Sprawdź <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentację ↗</a>, aby uzyskać więcej informacji.",
+ "If your installation is not installed at the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (suggestion: \"{suggestedOverwriteCliURL}\")" : "Twoja instancja nie jest zainstalowana w katalogu głównym dla domeny, a używasz systemowego Cron'a, zatem mogą wystąpić kłopoty w poprawnym generowaniu URL'a. Aby zapobiec problemów ustaw proszę opcję \"overwrite.cli.url\" w Twoim pliku config.php do katalogu głównego Twojej instalacji (sugerowany: \"{suggestedOverwriteCliURL}\")",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nie było możliwe uruchomienie zadania cron przy pomocy CLI. Pojawił się następujący błąd techniczny: ",
+ "Last background job execution ran {relativeTime}. Something seems wrong." : "Ostatnie zadanie w tle trwało {relativeTime}. Coś jest nie tak.",
+ "Check the background job settings" : "Sprawdź ustawienia zadań w tle",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Serwer nie ma aktywnego połączenia z Internetem. Wiele połączeń nie może być osiągniętych. Oznacza to, że część funkcji takich jak zewnętrzny magazyn, powiadomienia o aktualizacjach lub instalacja aplikacji firm trzecich nie będzie działała. Dostęp zdalny do plików oraz wysyłanie powiadomień mailowych również może nie działać. Sugerujemy udostępnienie połączenia z Internetem temu serwerowi jeśli chcesz mieć pełną funkcjonalność.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nie skonfigurowano pamięci cache. Jeśli to możliwe skonfiguruj pamięć cache, aby zwiększyć wydajność. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP nie może czytać z /dev/urandom co jest wymagane ze względów bezpieczeństwa. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nie znaleziono stosownego źródła losowości. Jest to bardzo niezalecane w związku z bezpieczeństwem. Więcej informacji znajdziesz w <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Posiadasz aktualnie PHP w wersji {version}. Aby skorzystać z <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">aktualizacji dotyczących wydajności i bezpieczeństwa otrzymanych z PHP Group</a> zachęcamy do podniesienia wersji PHP, kiedy tylko Twoja dystrybucja będzie je wspierała.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Używasz aktualnie PHP w wersji 5.6. Aktualna, główna wersja Nextcloud jest ostatnią wspierającą PHP 5.6. Zalecamy upgrade PHP do wersji 7.0+ aby można było w przyszłości korzystać z Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfiguracja nagłówków reverse proxy jest niepoprawna albo łączysz się do Nextclouda przez zaufane proxy. Jeśli nie łączysz się z zaufanego proxy, to jest to problem bezpieczeństwa i atakujący może podszyć się pod adres IP jako widoczny dla Nextclouda. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Jako cache jest skonfigurowane \"memcached\", ale błędny moduł PHP \"memcache\" jest zainstalowany. \\OC\\Memcache\\Memcached wspiera tylko \"memcached\", a nie \"memcache\". Sprawdź <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{wikiLink}\">memcached wiki o obu tych modułach</a>.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Niektóre pliki nie przeszły sprawdzania spójności. Dalsze informacje jak to naprawić mogą być znalezione w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Lista niepoprawnych plików…</a> / <a href=\"{rescanEndpoint}\">Skanowanie ponowne…</a>)",
+ "The PHP OPcache module is not loaded. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to load it into your PHP installation." : "Moduł PHP OPcache nie jest załadowany. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dla lepszej wydajności zalecamy</a> załadowanie go w swojej instalacji PHP.",
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP OPcache nie jest prawidłowo skonfigurowany <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Dla lepszej wydajności zalecamy</a> użycie następujących ustawień w <code>php.ini</code>: ",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "Funkcja PHP \"set_time_limit\" nie jest dostępna. Może to powodować zatrzymanie skryptów w podczas działania i w efekcie przerwanie instalacji. Silnie rekomendujemy włączenie tej funkcji.",
+ "Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "Twoje PHP nie posiada wsparcia czcionek FreeType, co powoduje problemy z zdjęciami profilowymi oraz interfejsem ustawień.",
+ "Missing index \"{indexName}\" in table \"{tableName}\"." : "Brak indeksu \"{indexName}\" w tabeli \"{tableName}\".",
+ "The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running \"occ db:add-missing-indices\" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster." : "W bazie brakuje indeksów. Ponieważ dodawanie indeksów na dużych tabelach może zająć dużo czasu, nie zostało to wykonane automatycznie. Ręczne wykonanie \"occ db:add-missing-indices\" spowoduje dodanie indeksów w trakcie pracy instancji. Po dodaniu indeksów zapytania na tych tabelach bywają znacznie szybsze.",
+ "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite jest aktualnie używany jako baza danych. Dla większych instalacji zalecamy przełączenie na inną bazę danych.",
+ "This is particularly recommended when using the desktop client for file synchronisation." : "Jest to szczególnie zalecane w przypadku korzystania z desktopowego klienta do synchronizacji plików.",
+ "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation ↗</a>." : "Aby zmigrować do innej bazy danych użyj narzędzia z terminala: \"occ db:convert-type\" albo sprawdź <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentację ↗</a>.",
+ "Use of the the built in php mailer is no longer supported. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Please update your email server settings ↗<a/>." : "Mailer wbudowany w PHP nie jest już wspierany. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">Uaktualnij ustawienia swojego serwera maili ↗<a/>.",
+ "The PHP memory limit is below the recommended value of 512MB." : "Limit pamięci PHP jest niższy niż zalecane 512MB.",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:" : "Niektóre katalogi aplikacji są własnością innego użytkownika niż serwer WWW. Może to wystąpić gdy aplikacje zostały zainstalowane ręcznie. Sprawdź uprawnienia poniższych katalogów:",
"Error occurred while checking server setup" : "Pojawił się błąd podczas sprawdzania ustawień serwera",
"Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Twój katalog z danymi i twoje pliki prawdopodobnie są dostępne przez Internet. Plik .htaccess nie działa. Usilnie zalecamy, żebyś tak skonfigurował swój serwer, żeby katalog z danymi nie był dalej dostępny lub przenieś swój katalog z danymi poza katalog root serwera webowego.",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "Nagłówek HTTP {header} nie jest skonfigurowany, aby pasował do {expected}. Jest to poterncjalne zagrożenie prywatności oraz bezpieczeństwa i zalecamy poprawienie tego ustawienia.",
"The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "Nagłówek HTTP {header} nie jest skonfigurowany, aby pasował do {expected}. Jest to poterncjalne zagrożenie prywatności oraz bezpieczeństwa i zalecamy poprawienie tego ustawienia.",
+ "The \"{header}\" HTTP header is not set to \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". This can leak referer information. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C Recommendation ↗</a>." : "Nagłówek HTTP \"{header}\" nie jest ustawiony na \"{val1}\", \"{val2}\", \"{val3}\", ani \"{val4}\". Może to powodować wycieki adresu strony. Zobacz<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">rekomendacje W3C ↗</a>.",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "Nagłówek HTTP \"Strict-Transport-Security\" nie jest ustawiony na przynajmniej \"{seconds}\" sekund. Dla zwiększenia bezpieczeństwa zalecamy ustawienie HSTS tak jak opisaliśmy to w naszych <a href=\"{docUrl}\" rel=\"noreferrer noopener\">wskazówkach dotyczących bezpieczeństwa ↗</a>.",
+ "Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips ↗</a>." : "Dostęp do tej strony jest za pośrednictwem protokołu HTTP. Zalecamy skonfigurowanie dostępu do serwera za pomocą protokołu HTTPS zamiast HTTP, jak to opisano w naszych <a href=\"{docUrl}\">wskazówkach bezpieczeństwa ↗</a>.",
"Shared" : "Udostępniono",
"Shared with" : "Współdzielone z",
"Shared by" : "Współdzielone przez",
@@ -147,15 +174,21 @@
"Set expiration date" : "Ustaw datę wygaśnięcia",
"Expiration" : "Wygaśnięcie",
"Expiration date" : "Data wygaśnięcia",
+ "Note to recipient" : "Notatka dla odbiorcy",
"Share link" : "Udostępnij link",
"Enable" : "Włącz",
"Shared with you and the group {group} by {owner}" : "Udostępnione tobie i grupie {group} przez {owner}",
+ "Shared with you and {circle} by {owner}" : "Współdzielone z Tobą i {circle} przez {owner}",
+ "Shared with you and the conversation {conversation} by {owner}" : "Współdzielone z Tobą i konwersacją {conversation} przez {owner}",
+ "Shared with you in a conversation by {owner}" : "Współdzielone Tobie w konwersacji z {owner}",
"Shared with you by {owner}" : "Udostępnione tobie przez {owner}",
"Choose a password for the mail share" : "Wybierz hasło do współdzielenia e-mailem",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} udostępniane za pośrednictwem łącza",
"group" : "grupa",
"remote" : "zdalny",
+ "remote group" : "zdalna grupa",
"email" : "email",
+ "conversation" : "konwersacja",
"shared by {sharer}" : "współdzielone przez {sharer}",
"Unshare" : "Zatrzymaj współdzielenie",
"Can reshare" : "Może współdzielić z innymi",
@@ -171,11 +204,14 @@
"This list is maybe truncated - please refine your search term to see more results." : "Ta lista może być obcięta - proszę bardziej określić fraze wyszukiwania, aby zobaczyć więcej wyników.",
"No users or groups found for {search}" : "Nie znaleziono użytkowników lub grup dla {search}",
"No users found for {search}" : "Nie znaleziono użytkowników dla {search}",
+ "An error occurred (\"{message}\"). Please try again" : "Wystąpił błąd (\"{message}\"). Spróbuj ponownie",
"An error occurred. Please try again" : "Wystąpił błąd. Proszę spróbować ponownie.",
"{sharee} (group)" : "{sharee} (grupa)",
"{sharee} (remote)" : "{sharee} (zdalny)",
+ "{sharee} (remote group)" : "{sharee} (zdalna grupa)",
"{sharee} (email)" : "{sharee} (e-mail)",
"{sharee} ({type}, {owner})" : "{sharee} ({type}, {owner})",
+ "{sharee} (conversation)" : "{sharee} (konwersacja)",
"Share" : "Udostępnij",
"Name or email address..." : "Nazwa lub adres e-mail…",
"Name or federated cloud ID..." : "Nazwa lub ID chmury stowarzyszonej…",
@@ -258,10 +294,15 @@
"Need help?" : "Potrzebujesz pomocy?",
"See the documentation" : "Zapoznaj się z dokumentacją",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Ta aplikacja wymaga JavaScript do poprawnego działania. Proszę {linkstart}włączyć JavaScript{linkend} i przeładować stronę.",
+ "Skip to main content" : "Przeskocz do treści",
+ "Skip to navigation of app" : "Przeskocz do nawigacji",
"More apps" : "Więcej aplikacji",
+ "More apps menu" : "Więcej aplikacji",
"Search" : "Wyszukaj",
"Reset search" : "Zresetuj wyszukiwanie",
"Contacts" : "Kontakty",
+ "Contacts menu" : "Menu kontaktów",
+ "Settings menu" : "Menu ustawień",
"Confirm your password" : "Potwierdź hasło",
"Server side authentication failed!" : "Uwierzytelnianie po stronie serwera nie powiodło się!",
"Please contact your administrator." : "Skontaktuj się z administratorem",
@@ -270,21 +311,30 @@
"Username or email" : "Nazwa użytkownika lub adres e-mail",
"Log in" : "Zaloguj",
"Wrong password." : "Złe hasło",
+ "User disabled" : "Użytkownik zablokowany",
"Forgot password?" : "Zapomniano hasła?",
+ "Back to login" : "Powrót do logowania",
+ "Connect to your account" : "Połącz się z kontem",
+ "Please log in before granting %s access to your %s account." : "Zaloguj się aby udzielić %s dostępu do Twojego konta %s.",
"App token" : "Token aplikacji",
"Grant access" : "Udziel dostępu",
+ "Alternative log in using app token" : "Zaloguj alternatywnie używając tokenu aplikacji",
"Account access" : "Dostęp do konta",
"You are about to grant %s access to your %s account." : "Zamierzasz udzielić %s dostępu do Twojego konta %s.",
"Redirecting …" : "Przekierowuję…",
"New password" : "Nowe hasło",
"New Password" : "Nowe hasło",
+ "This share is password-protected" : "Ten udział jest zabezpieczony hasłem",
+ "The password is wrong. Try again." : "Podane hasło jest błędne. Spróbuj ponownie.",
"Two-factor authentication" : "Uwierzytelnianie dwuskładnikowe",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "Dla Twojego konta uruchomiono wzmocnioną ochronę. Uwierzytelnij przy pomocy drugiego składnika.",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Nie udało się załadować przynajmniej jednej z Twoich metod uwierzytelnienia dwuskładnikowego. Proszę skontaktować się z administratorem.",
"Cancel log in" : "Anuluj logowanie",
"Use backup code" : "Użyj kodu zapasowego",
"Error while validating your second factor" : "Błąd podczas sprawdzania drugiego składnika",
"Access through untrusted domain" : "Dostęp przez niezaufaną domenę",
"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." : "Proszę skontaktuj się z administratorem. Jeśli nim jesteś, to zmień ustawienie w zmiennej \"trusted_domains\" w pliku config/config.php tak jak w przykładzie config.sample.php.",
+ "Further information how to configure this can be found in the %sdocumentation%s." : "Więcej informacji o konfiguracji znajdziesz w %sdokumentacji%s.",
"App update required" : "Aktualizacja aplikacji wymagana",
"%s will be updated to version %s" : "%s zostanie zaktualizowane do wersji %s",
"These apps will be updated:" : "Te aplikacje zostaną zaktualizowane:",
@@ -303,22 +353,45 @@
"This page will refresh itself when the %s instance is available again." : "Strona odświeży się gdy instancja %s będzie ponownie dostępna.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Skontaktuj się z administratorem, jeśli ten komunikat pojawił się nieoczekiwanie lub wyświetla się ciągle.",
"Thank you for your patience." : "Dziękuję za cierpliwość.",
+ "%s (3rdparty)" : "%s (od innych)",
"There was an error loading your contacts" : "Wystąpił błąd podczas wczytywania twoich kontaktów",
+ "Your web server is not yet set up properly to allow file synchronization because the WebDAV interface seems to be broken." : "Serwer WWW nie jest jeszcze na tyle poprawnie skonfigurowany, aby umożliwić synchronizację plików, ponieważ interfejs WebDAV wydaje się być uszkodzony.",
+ "Your web server is not set up properly to resolve \"{url}\". Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Serwer WWW nie jest poprawnie skonfigurowany, aby wyświetlić \"{url}\". Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
+ "This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. We suggest to enable Internet connection for this server if you want to have all features." : "Serwer nie ma aktywnego połączenia z Internetem. Wiele połączeń nie może być osiągniętych. Oznacza to, że część funkcji takich jak zewnętrzny magazyn, powiadomienia o aktualizacjach lub instalacja aplikacji firm trzecich nie będzie działała. Dostęp zdalny do plików oraz wysyłanie powiadomień mailowych również może nie działać. Sugerujemy udostępnienie połączenia z Internetem temu serwerowi jeśli chcesz mieć pełną funkcjonalność.",
+ "No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Nie skonfigurowano pamięci cache. Jeśli to możliwe skonfiguruj pamięć cache, aby zwiększyć wydajność. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "PHP nie może czytać z /dev/urandom co jest wymagane ze względów bezpieczeństwa. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
"You are currently running PHP {version}. We encourage you to upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Posiadasz aktualnie PHP w wersji {version}. Aby skorzystać z <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">aktualizacji dotyczących wydajności i bezpieczeństwa otrzymanych z PHP Group</a> zachęcamy do podniesienia wersji PHP, kiedy tylko twoja dystrybucja będzie je wspierała.",
+ "The reverse proxy headers configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If you are not accessing Nextcloud from a trusted proxy, this is a security issue and can allow an attacker to spoof their IP address as visible to Nextcloud. Further information can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>." : "Konfiguracja nagłówków reverse proxy jest niepoprawna albo łączysz się do Nextclouda przez zaufane proxy. Jeśli nie łączysz się z zaufanego proxy, to jest to problem bezpieczeństwa i atakujący może podszyć się pod adres IP jako widoczny dla Nextclouda. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>.",
+ "Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Jako cache jest skonfigurowane \"memcached\", ale błędny moduł PHP \"memcache\" jest zainstalowany. \\OC\\Memcache\\Memcached wspiera tylko \"memcached\", a nie \"memcache\". Sprawdź <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki o obu tych modułach</a>.",
+ "Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Niektóre pliki nie przeszły sprawdzania spójności. Dalsze informacje jak to naprawić mogą być znalezione w naszej <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentacji</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Lista niepoprawnych plików...</a> / <a href=\"{rescanEndpoint}\">Skanowanie ponowne…</a>)",
+ "The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP OPcache nie jest prawidłowo skonfigurowany <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">Dla lepszej wydajności zalecamy</a> użycie następujących ustawień w <code>php.ini</code>:",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "Funkcja PHP \"set_time_limit\" nie jest dostępna. Może to powodować zatrzymanie skryptów w podczas działania i w efekcie przerwanie instalacji. Silnie rekomendujemy włączenie tej funkcji.",
+ "Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "Twój katalog z danymi i twoje pliki prawdopodobnie są dostępne przez Internet. Plik .htaccess nie działa. Usilnie zalecamy, żebyś tak skonfigurował swój serwer, żeby katalog z danymi nie był dalej dostępny lub przenieś swój katalog z danymi poza katalog root serwera webowego.",
+ "The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "Nagłówek HTTP \"{header}\" nie jest ustawiony na \"{expected}\". Jest to potencjalnym zagrożeniem prywatności oraz bezpieczeństwa i zalecamy poprawienie tego ustawienia.",
+ "The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "Nagłówek HTTP \"Strict-Transport-Security\" nie jest ustawiony na przynajmniej \"{seconds}\" sekund. Dla zwiększenia bezpieczeństwa zalecamy ustawienie HSTS tak jak opisaliśmy to w naszych <a href=\"{docUrl}\" rel=\"noreferrer\">wskazówkach dot. bezpieczeństwa</a>.",
+ "You are accessing this site via HTTP. We strongly suggest you configure your server to require using HTTPS instead as described in our <a href=\"{docUrl}\">security tips</a>." : "Dostęp do tej strony jest za pośrednictwem protokołu HTTP. Zalecamy skonfigurowanie dostępu do serwera za pomocą protokołu HTTPS zamiast HTTP, jak to opisano w naszych <a href=\"{docUrl}\">wskazówkach bezpieczeństwa</a>.",
"Shared with {recipients}" : "Współdzielony z {recipients}",
"Error setting expiration date" : "Błąd podczas ustawiania daty wygaśnięcia",
"The public link will expire no later than {days} days after it is created" : "Link publiczny wygaśnie nie później niż po {days} dniach od utworzenia",
"Share with other people by entering a user or group, a federated cloud ID or an email address." : "Współdziel z innymi osobami przez wpisanie użytkownika lub grupy, ID chmury stowarzyszonej lub adres e-mail.",
"Share with other people by entering a user or group or a federated cloud ID." : "Współdziel z innymi osobami przez wpisanie użytkownika lub grupy lub ID chmury stowarzyszonej.",
"Share with other people by entering a user or group or an email address." : "Współdziel z innymi osobami przez wpisanie użytkownika lub grupy lub adresu e-mail.",
+ "The server encountered an internal error and was unable to complete your request." : "Serwer napotkał błąd wewnętrzny i nie był w stanie ukończyć Twojego żądania.",
+ "Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "Proszę skontaktować się z administratorem jeśli ten błąd będzie się pojawiał wielokrotnie, proszę do zgłoszenia dołączyć szczegóły techniczne opisane poniżej.",
+ "For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentation</a>." : "Aby uzyskać informację jak poprawnie skonfigurować Twój serwer, zajrzyj do <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">dokumentacji</a>.",
"This action requires you to confirm your password:" : "Ta akcja wymaga potwierdzenia Twojego hasła:",
"Wrong password. Reset it?" : "Niepoprawne hasło? Zresetować je?",
"Stay logged in" : "Pozostań zalogowany",
"Alternative Logins" : "Alternatywne loginy",
+ "You are about to grant \"%s\" access to your %s account." : "Masz zamiar przyznać \"%s\" dostep do twojego %s konta.",
"Alternative login using app token" : "Zaloguj alternatywnie używając tokenu aplikacji",
"You are accessing the server from an untrusted domain." : "Uzyskujesz dostęp do serwera z niezaufanej domeny.",
+ "Please contact your administrator. If you are an administrator of this instance, configure the \"trusted_domains\" setting in config/config.php. An example configuration is provided in config/config.sample.php." : "Proszę skontaktować się z Twoim administratorem. Jeżeli jesteś administratorem tej instalacji, skonfiguruj ustawienie \"trusted_domains\" w pliku config/config.php. Przykład konfiguracji jest zawarty w pliku config/config.sample.php.",
+ "Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "W zależności od konfiguracji, jako administrator możesz także użyć poniższego przycisku aby zaufać tej domenie.",
"Add \"%s\" as trusted domain" : "Dodaj \"%s\" jako domenę zaufaną",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Aby uzyskać pomoc, zajrzyj do <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentacji</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP nie może czytać z /dev/urandom co jest wymagane ze względów bezpieczeństwa. Więcej informacji można znaleźć w naszej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentacji</a>.",
+ "Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Twoje PHP nie posiada wsparcia czcionek FreeType, co powoduje problemy z zdjęciami profilowymi oraz interfejsem ustawień.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Nagłówek HTTP \"Strict-Transport-Security\" nie jest ustawiony na przynajmniej \"{seconds}\" sekund. Dla zwiększenia bezpieczeństwa zalecamy ustawienie HSTS tak jak opisaliśmy to w naszych <a href=\"{docUrl}\" rel=\"noreferrer noopener\">wskazówkach dotyczących bezpieczeństwa</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Dostęp do tej strony jest za pośrednictwem protokołu HTTP. Zalecamy skonfigurowanie dostępu do serwera za pomocą protokołu HTTPS zamiast HTTP, jak to opisano w naszych <a href=\"{docUrl}\">wskazówkach bezpieczeństwa</a>.",
"Back to log in" : "Powrót do logowania",
diff --git a/core/l10n/pt_BR.js b/core/l10n/pt_BR.js
index a8d0926fe34..726f774922f 100644
--- a/core/l10n/pt_BR.js
+++ b/core/l10n/pt_BR.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Verifique as configurações do trabalho em segundo plano",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Este servidor não possui conexão com a internet: Vários pontos não puderam ser acessados. Isso significa que alguns dos recursos como montagem de armazenamento externo, notificações sobre atualizações ou instalação de aplicativos de terceiros não funcionarão. Acesso a arquivos remotos e envio de e-mails de notificação não funcionarão também. Estabeleça uma conexão deste servidor com a Internet para aproveitar todos os recursos.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nenhum cache de memória foi configurado. Para melhorar o desempenho, configure um memcache, se disponível. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por razões de segurança. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nenhuma fonte de aleatoriedade foi encontrada pelo PHP, o que é desencorajado por razões de segurança. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Você está executando o PHP {versão}. Atualize esta versão para aproveitar as <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">atualizações de desempenho e segurança fornecidas pelo Grupo PHP</a> assim que sua distribuição a suportar.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Você está rodando PHP 5.6. A versão atual do Nextcloud é a última a suportar o PHP 5.6. Recomendamos passar para a versão 7.0+ para poder fazer upgrade para o Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "A configuração do cabeçalho do proxy reverso está incorreta ou você está acessando o Nextcloud a partir de um proxy confiável. Caso contrário, isso é um problema de segurança e pode permitir que um invasor ataque seu endereço IP visível do Nextcloud. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "Compartilhado com você e com o grupo {group} por {owner}",
"Shared with you and {circle} by {owner}" : "Compartilhado com você e {circle} por {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Compartilhado com você e a conversa {conversation} por {owner}",
+ "Shared with you in a conversation by {owner}" : "Compartilhado com você em uma conversa por {owner}",
"Shared with you by {owner}" : "Compartilhado com você por {owner}",
"Choose a password for the mail share" : "Escolha uma senha para o compartilhamento de e-mail",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatiorDisplayName}} compartilhou via link",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependendo da configuração, como administrador você também poderá usar o botão abaixo para confiar neste domínio.",
"Add \"%s\" as trusted domain" : "Adicionar \"%s\" como um domínio confiável",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para mais ajuda, veja a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentação</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por razões de segurança. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Seu PHP não possui suporte a freetype. Isso resultará em imagens erradas no perfil e na interface de configurações.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "O cabeçalho HTTP \"Strict-Transport-Security\" não está definido para pelo menos \"{seconds}\" segundos. Para ter uma segurança melhorada, recomenda-se habilitar o HSTS conforme descrito nas <a href=\"{docUrl}\" rel=\"noreferrer noopener\">dicas de segurança</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Acessando o site via HTTP não seguro. É recomendado configurar seu servidor para exigir HTTPS, conforme descrito nas <a href=\"{docUrl}\">dicas de segurança</a>.",
diff --git a/core/l10n/pt_BR.json b/core/l10n/pt_BR.json
index 00fcfe1cb00..6451a43af7e 100644
--- a/core/l10n/pt_BR.json
+++ b/core/l10n/pt_BR.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Verifique as configurações do trabalho em segundo plano",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Este servidor não possui conexão com a internet: Vários pontos não puderam ser acessados. Isso significa que alguns dos recursos como montagem de armazenamento externo, notificações sobre atualizações ou instalação de aplicativos de terceiros não funcionarão. Acesso a arquivos remotos e envio de e-mails de notificação não funcionarão também. Estabeleça uma conexão deste servidor com a Internet para aproveitar todos os recursos.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nenhum cache de memória foi configurado. Para melhorar o desempenho, configure um memcache, se disponível. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por razões de segurança. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nenhuma fonte de aleatoriedade foi encontrada pelo PHP, o que é desencorajado por razões de segurança. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Você está executando o PHP {versão}. Atualize esta versão para aproveitar as <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">atualizações de desempenho e segurança fornecidas pelo Grupo PHP</a> assim que sua distribuição a suportar.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Você está rodando PHP 5.6. A versão atual do Nextcloud é a última a suportar o PHP 5.6. Recomendamos passar para a versão 7.0+ para poder fazer upgrade para o Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "A configuração do cabeçalho do proxy reverso está incorreta ou você está acessando o Nextcloud a partir de um proxy confiável. Caso contrário, isso é um problema de segurança e pode permitir que um invasor ataque seu endereço IP visível do Nextcloud. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "Compartilhado com você e com o grupo {group} por {owner}",
"Shared with you and {circle} by {owner}" : "Compartilhado com você e {circle} por {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "Compartilhado com você e a conversa {conversation} por {owner}",
+ "Shared with you in a conversation by {owner}" : "Compartilhado com você em uma conversa por {owner}",
"Shared with you by {owner}" : "Compartilhado com você por {owner}",
"Choose a password for the mail share" : "Escolha uma senha para o compartilhamento de e-mail",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatiorDisplayName}} compartilhou via link",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependendo da configuração, como administrador você também poderá usar o botão abaixo para confiar neste domínio.",
"Add \"%s\" as trusted domain" : "Adicionar \"%s\" como um domínio confiável",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para mais ajuda, veja a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentação</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por razões de segurança. Mais informações podem ser encontradas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Seu PHP não possui suporte a freetype. Isso resultará em imagens erradas no perfil e na interface de configurações.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "O cabeçalho HTTP \"Strict-Transport-Security\" não está definido para pelo menos \"{seconds}\" segundos. Para ter uma segurança melhorada, recomenda-se habilitar o HSTS conforme descrito nas <a href=\"{docUrl}\" rel=\"noreferrer noopener\">dicas de segurança</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Acessando o site via HTTP não seguro. É recomendado configurar seu servidor para exigir HTTPS, conforme descrito nas <a href=\"{docUrl}\">dicas de segurança</a>.",
diff --git a/core/l10n/pt_PT.js b/core/l10n/pt_PT.js
index d5cbc60d450..84e342794ed 100644
--- a/core/l10n/pt_PT.js
+++ b/core/l10n/pt_PT.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "O seu servidor web não está configurado corretamente para resolver \"{url}\". Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Este servidor não tem ligação à Internet: Não foi possível detectar vários pontos de extremidade. Isso significa que alguns dos recursos como a montagem de armazenamento externo, notificações sobre actualizações ou instalação de aplicações de terceiros não funcionarão. Pode também não ser possível aceder a ficheiros remotamente e enviar emails de notificação. Sugerimos que active a ligação à Internet para este servidor se desejar ter todos os recursos.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nenhuma memória cache foi configurada. Para melhorar o seu desempenho, por favor configure a memcache, se disponível. Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por motivos de segurança. Pode ser encontrada mais informação na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Neste momento está a executar PHP {version}. Aconselhamos actualizar a versão de PHP para tirar partido das <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">actualizações de desempenho e segurança fornecidas pelo PHP Group</a> assim que a sua distribuição as suporte.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Está actualmente a correr PHP 5.6. A versão actual mais alta do Nextcloud é a última suportada no PHP 5.6. Aconselhamos que actualize a versão do PHP para 7.0+ para que possa actualizar para o Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "A configuração dos cabeçalhos de reverse proxy está incorrecta, ou está a tentar ao Nextcloud através de um proxy confiável. Se não for o caso, trata-se de um problema de segurança e pode permitir a um atacante fazer spoof do endereço IP visível para a Nextcloud. Mais informações podem ser obtidas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
@@ -340,6 +339,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependendo da sua configuração, como administrador poderá também conseguir usar o botão que se segue para confiar neste domínio.",
"Add \"%s\" as trusted domain" : "Adicionar \"%s\" como um domínio de confiança",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para obter ajuda, consulte a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentação</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por motivos de segurança. Pode ser encontrada mais informação na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "O seu PHP não suporta freetype. Isto irá resultar em fotos de perfil e interface de definições corrompidas.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "O cabeçalho HTTP \"Strict-Transport-Security\" não está definido para pelo menos \"{segundos}\" segundos. Para melhorar a segurança, recomendamos que active o HSTS como descrito em <a href=\"{docUrl}\" rel=\"noreferrer noopener\">dicas de segurança</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Acedendo ao site de forma insegura usando HTTP. Recomendamos vivamente que configure o servidor para requerer HTTPS, tal como descrito em <a href=\"{docUrl}\">dicas de segurança</a>.",
diff --git a/core/l10n/pt_PT.json b/core/l10n/pt_PT.json
index 13bb5a23d43..a2de037aeed 100644
--- a/core/l10n/pt_PT.json
+++ b/core/l10n/pt_PT.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "O seu servidor web não está configurado corretamente para resolver \"{url}\". Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentação</a>.",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Este servidor não tem ligação à Internet: Não foi possível detectar vários pontos de extremidade. Isso significa que alguns dos recursos como a montagem de armazenamento externo, notificações sobre actualizações ou instalação de aplicações de terceiros não funcionarão. Pode também não ser possível aceder a ficheiros remotamente e enviar emails de notificação. Sugerimos que active a ligação à Internet para este servidor se desejar ter todos os recursos.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nenhuma memória cache foi configurada. Para melhorar o seu desempenho, por favor configure a memcache, se disponível. Mais informação pode ser encontrada na nossa <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por motivos de segurança. Pode ser encontrada mais informação na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Neste momento está a executar PHP {version}. Aconselhamos actualizar a versão de PHP para tirar partido das <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">actualizações de desempenho e segurança fornecidas pelo PHP Group</a> assim que a sua distribuição as suporte.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Está actualmente a correr PHP 5.6. A versão actual mais alta do Nextcloud é a última suportada no PHP 5.6. Aconselhamos que actualize a versão do PHP para 7.0+ para que possa actualizar para o Nextcloud 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "A configuração dos cabeçalhos de reverse proxy está incorrecta, ou está a tentar ao Nextcloud através de um proxy confiável. Se não for o caso, trata-se de um problema de segurança e pode permitir a um atacante fazer spoof do endereço IP visível para a Nextcloud. Mais informações podem ser obtidas na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
@@ -338,6 +337,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Dependendo da sua configuração, como administrador poderá também conseguir usar o botão que se segue para confiar neste domínio.",
"Add \"%s\" as trusted domain" : "Adicionar \"%s\" como um domínio de confiança",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Para obter ajuda, consulte a <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentação</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom não é legível pelo PHP, o que é altamente desencorajado por motivos de segurança. Pode ser encontrada mais informação na <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentação</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "O seu PHP não suporta freetype. Isto irá resultar em fotos de perfil e interface de definições corrompidas.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "O cabeçalho HTTP \"Strict-Transport-Security\" não está definido para pelo menos \"{segundos}\" segundos. Para melhorar a segurança, recomendamos que active o HSTS como descrito em <a href=\"{docUrl}\" rel=\"noreferrer noopener\">dicas de segurança</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Acedendo ao site de forma insegura usando HTTP. Recomendamos vivamente que configure o servidor para requerer HTTPS, tal como descrito em <a href=\"{docUrl}\">dicas de segurança</a>.",
diff --git a/core/l10n/ru.js b/core/l10n/ru.js
index 07ba20fb17f..30bf18c1b36 100644
--- a/core/l10n/ru.js
+++ b/core/l10n/ru.js
@@ -128,7 +128,6 @@ OC.L10N.register(
"Check the background job settings" : "Проверьте параметры выполнения фоновых задач",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Этот сервер не подключён к Интернету: множество конечных устройств не могут быть доступны. Это означает, что не будут работать некоторые функции, такие как подключение внешнего хранилища, уведомления об обновлениях или установка сторонних приложений. Так же могут не работать удалённый доступ к файлам и отправка уведомлений по электронной почте. Для использования всех возможностей рекомендуем разрешить серверу доступ в Интернет, ",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Не настроена система кеширования. Для увеличения производительности сервера, по возможности, настройте memcache. Более подробная информация доступна в <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документации</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не имеет доступа на чтение к /dev/urandom, что крайне нежелательно по соображениям безопасности. Дополнительную информацию можно найти в нашей <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\"> документации </a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Вы используете PHP {version}. Рекомендуется обновить версию PHP, чтобы воспользоваться <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">улучшениями производительности и безопасности, внедрёнными PHP Group</a> сразу, как только новая версия будет доступна в Вашем дистрибутиве. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "На этом сервере используется PHP версии 5.6. Текущая версия Nextcloud является последней из поддерживающих PHP версии 5.6. Для обновления до Nextcloud версии 14 рекомендуется обновить PHP до версии 7.0 или более старшей.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Заголовки обратного прокси настроены неправильно, либо вы подключены к серверу Nextcloud через доверенный прокси. Если Nextcloud открыт не через доверенный прокси, то это проблема безопасности, которая может позволить атакующему подделать IP-адрес, определяемый сервером Nextcloud. Дополнительная информация содержится в <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">документации</a>.",
@@ -393,6 +392,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "В зависимости от конфигурации, вы, как администратор, можете также добавить домен в список доверенных при помощи кнопки, расположенной ниже.",
"Add \"%s\" as trusted domain" : "Добавить «%s» в список доверенных доменов",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Для получения помощи обратитесь к <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">документации</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не имеет доступа на чтение к /dev/urandom, что крайне нежелательно по соображениям безопасности. Дополнительную информацию можно найти в нашей <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\"> документации </a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Установленная версия PHP не поддерживает библиотеку FreeType, что приводит к неверному отображению изображений профиля и интерфейса настроек.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Заголовок HTTP «Strict-Transport-Security» должен быть настроен как минимум на «{seconds}» секунд. Для улучшения безопасности рекомендуется включить HSTS согласно нашим <a href=\"{docUrl}\" rel=\"noreferrer noopener\">подсказкам по безопасности</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Используется небезопасное соподчинение по протоколу HTTP. Настоятельно рекомендуется настроить сервер на использование HTTPS согласно нашим <a href=\"{docUrl}\">подсказкам по безопасности</a>.",
diff --git a/core/l10n/ru.json b/core/l10n/ru.json
index 00aa6cb6a67..7cb0fcdbbfd 100644
--- a/core/l10n/ru.json
+++ b/core/l10n/ru.json
@@ -126,7 +126,6 @@
"Check the background job settings" : "Проверьте параметры выполнения фоновых задач",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Этот сервер не подключён к Интернету: множество конечных устройств не могут быть доступны. Это означает, что не будут работать некоторые функции, такие как подключение внешнего хранилища, уведомления об обновлениях или установка сторонних приложений. Так же могут не работать удалённый доступ к файлам и отправка уведомлений по электронной почте. Для использования всех возможностей рекомендуем разрешить серверу доступ в Интернет, ",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Не настроена система кеширования. Для увеличения производительности сервера, по возможности, настройте memcache. Более подробная информация доступна в <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документации</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не имеет доступа на чтение к /dev/urandom, что крайне нежелательно по соображениям безопасности. Дополнительную информацию можно найти в нашей <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\"> документации </a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Вы используете PHP {version}. Рекомендуется обновить версию PHP, чтобы воспользоваться <a target=\"_blank\" rel=\"noreferrer\" href=\"{phpLink}\">улучшениями производительности и безопасности, внедрёнными PHP Group</a> сразу, как только новая версия будет доступна в Вашем дистрибутиве. ",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "На этом сервере используется PHP версии 5.6. Текущая версия Nextcloud является последней из поддерживающих PHP версии 5.6. Для обновления до Nextcloud версии 14 рекомендуется обновить PHP до версии 7.0 или более старшей.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Заголовки обратного прокси настроены неправильно, либо вы подключены к серверу Nextcloud через доверенный прокси. Если Nextcloud открыт не через доверенный прокси, то это проблема безопасности, которая может позволить атакующему подделать IP-адрес, определяемый сервером Nextcloud. Дополнительная информация содержится в <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">документации</a>.",
@@ -391,6 +390,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "В зависимости от конфигурации, вы, как администратор, можете также добавить домен в список доверенных при помощи кнопки, расположенной ниже.",
"Add \"%s\" as trusted domain" : "Добавить «%s» в список доверенных доменов",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Для получения помощи обратитесь к <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">документации</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не имеет доступа на чтение к /dev/urandom, что крайне нежелательно по соображениям безопасности. Дополнительную информацию можно найти в нашей <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\"> документации </a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Установленная версия PHP не поддерживает библиотеку FreeType, что приводит к неверному отображению изображений профиля и интерфейса настроек.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Заголовок HTTP «Strict-Transport-Security» должен быть настроен как минимум на «{seconds}» секунд. Для улучшения безопасности рекомендуется включить HSTS согласно нашим <a href=\"{docUrl}\" rel=\"noreferrer noopener\">подсказкам по безопасности</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Используется небезопасное соподчинение по протоколу HTTP. Настоятельно рекомендуется настроить сервер на использование HTTPS согласно нашим <a href=\"{docUrl}\">подсказкам по безопасности</a>.",
diff --git a/core/l10n/sk.js b/core/l10n/sk.js
index 1411f493b8d..dafdcf5dae0 100644
--- a/core/l10n/sk.js
+++ b/core/l10n/sk.js
@@ -119,7 +119,6 @@ OC.L10N.register(
"It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebolo možné spustiť cron úlohu na pozadí pomocou CLI. Toto sú chyby:",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Server nemá funkčné pripojenie k internetu. Niektoré moduly ako napr. externé úložisko, oznámenie o dostupných aktualizáciách alebo inštalácia aplikácií tretích strán nebudú fungovať. Vzdialený prístup k súborom a odosielanie oznamovacích emailov tiež nemusí fungovať. Ak chcete využívať všetky funkcie, odporúčame povoliť tomuto serveru pripojenie k internetu.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nie je nakonfigurovaná vyrovnávacia pamäť. Ak chcete zvýšiť výkon, nakonfigurujte prosím memcache ak je to možné. Viac informácií nájdete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom nie je prístupný na čítanie procesom PHP, čo z bezpečnostných dôvodov nie je vôbec odporúčané. Viac informácií nájdete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Aktuálne používate PHP {version}. Dôrazne odporúčame prechod na vyššiu verziu ihneď, ako to vaša distribúcia dovolí, aby ste využili <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">všetky výkonnostné a bezpečnostné možnosti novej verzie PHP</a> od PHP Group.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Aktuálne používate PHP 5.6. Aktuálne verzia Nextcloud podporuje verziu PHP 5.6, ale odporúčame upgrade na PHP verzie 7.0 a vyššej pre upgrade na Nextcloud 14",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfigurácia hlavičiek reverse proxy nie je správna alebo pristupujete k NextCloud z dôveryhodného proxy servera. Ak k Nextcloud nepristupujete z dôveryhodného proxy servera, vzniká bezpečnostné riziko - IP adresa potenciálneho útočníka, ktorú vidí Nextcloud, môže byť falošná. Viac informácií nájdete v našej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
@@ -374,6 +373,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "V závislosti na konfigurácii, vám môže byť ako správcovi umožnené použitie tlačidla nižšie pre označenie tejto domény ako dôveryhodnej.",
"Add \"%s\" as trusted domain" : "Pridať \"%s\" ako dôveryhodnú doménu",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Pomoc nájdete v <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentácii</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom nie je prístupný na čítanie procesom PHP, čo z bezpečnostných dôvodov nie je vôbec odporúčané. Viac informácií nájdete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Vaše PHP nemá podporu FreeType, čo bude mať za následok poškodenie profilových obrázkov a rozhrania nastavení.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Hlavička HTTP \"Strict-Transport-Security\" nie je nakonfigurovaná aspoň na \"{seconds}\" sekúnd. Pre zvýšenie bezpečnosti odporúčame povoliť HSTS tak, ako je to popísané v našich bezpečnostných tipoch<a href=\"{docUrl}\" rel=\"noreferrer noopener\">.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Prístup na túto stránku sa uskutočňuje prostredníctvom nezabezpečeného protokolu HTTP. Dôrazne odporúčame, aby ste namiesto toho nakonfigurovali server tak, aby vyžadoval použitie HTTPS, ako je to popísané v našich <a href=\"{docUrl}\">bezpečnostných tipoch</a>.",
diff --git a/core/l10n/sk.json b/core/l10n/sk.json
index e2810c88ba7..951d445a851 100644
--- a/core/l10n/sk.json
+++ b/core/l10n/sk.json
@@ -117,7 +117,6 @@
"It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebolo možné spustiť cron úlohu na pozadí pomocou CLI. Toto sú chyby:",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Server nemá funkčné pripojenie k internetu. Niektoré moduly ako napr. externé úložisko, oznámenie o dostupných aktualizáciách alebo inštalácia aplikácií tretích strán nebudú fungovať. Vzdialený prístup k súborom a odosielanie oznamovacích emailov tiež nemusí fungovať. Ak chcete využívať všetky funkcie, odporúčame povoliť tomuto serveru pripojenie k internetu.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Nie je nakonfigurovaná vyrovnávacia pamäť. Ak chcete zvýšiť výkon, nakonfigurujte prosím memcache ak je to možné. Viac informácií nájdete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom nie je prístupný na čítanie procesom PHP, čo z bezpečnostných dôvodov nie je vôbec odporúčané. Viac informácií nájdete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Aktuálne používate PHP {version}. Dôrazne odporúčame prechod na vyššiu verziu ihneď, ako to vaša distribúcia dovolí, aby ste využili <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">všetky výkonnostné a bezpečnostné možnosti novej verzie PHP</a> od PHP Group.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Aktuálne používate PHP 5.6. Aktuálne verzia Nextcloud podporuje verziu PHP 5.6, ale odporúčame upgrade na PHP verzie 7.0 a vyššej pre upgrade na Nextcloud 14",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Konfigurácia hlavičiek reverse proxy nie je správna alebo pristupujete k NextCloud z dôveryhodného proxy servera. Ak k Nextcloud nepristupujete z dôveryhodného proxy servera, vzniká bezpečnostné riziko - IP adresa potenciálneho útočníka, ktorú vidí Nextcloud, môže byť falošná. Viac informácií nájdete v našej <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
@@ -372,6 +371,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "V závislosti na konfigurácii, vám môže byť ako správcovi umožnené použitie tlačidla nižšie pre označenie tejto domény ako dôveryhodnej.",
"Add \"%s\" as trusted domain" : "Pridať \"%s\" ako dôveryhodnú doménu",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Pomoc nájdete v <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">dokumentácii</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "/dev/urandom nie je prístupný na čítanie procesom PHP, čo z bezpečnostných dôvodov nie je vôbec odporúčané. Viac informácií nájdete v <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">dokumentácii</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Vaše PHP nemá podporu FreeType, čo bude mať za následok poškodenie profilových obrázkov a rozhrania nastavení.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "Hlavička HTTP \"Strict-Transport-Security\" nie je nakonfigurovaná aspoň na \"{seconds}\" sekúnd. Pre zvýšenie bezpečnosti odporúčame povoliť HSTS tak, ako je to popísané v našich bezpečnostných tipoch<a href=\"{docUrl}\" rel=\"noreferrer noopener\">.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Prístup na túto stránku sa uskutočňuje prostredníctvom nezabezpečeného protokolu HTTP. Dôrazne odporúčame, aby ste namiesto toho nakonfigurovali server tak, aby vyžadoval použitie HTTPS, ako je to popísané v našich <a href=\"{docUrl}\">bezpečnostných tipoch</a>.",
diff --git a/core/l10n/sl.js b/core/l10n/sl.js
index 144a511081e..0965ad6753c 100644
--- a/core/l10n/sl.js
+++ b/core/l10n/sl.js
@@ -1,7 +1,7 @@
OC.L10N.register(
"core",
{
- "Please select a file." : "Izberite datoteko",
+ "Please select a file." : "Izberite datoteko.",
"File is too big" : "Datoteka je prevelika",
"The selected file is not an image." : "Izbrana datoteka ni slika.",
"The selected file cannot be read." : "Izbrane datoteke ni mogoče prebrati.",
@@ -62,8 +62,8 @@ OC.L10N.register(
"Connection to server lost" : "Povezava s strežnikom spodletela",
"Saving..." : "Poteka shranjevanje ...",
"Dismiss" : "Opusti",
- "Authentication required" : "Zahteva za avtentikacijo",
- "This action requires you to confirm your password" : "Ta operacija zahteva potrditev tvojega gesla",
+ "Authentication required" : "Opravilo zahteva overitev!",
+ "This action requires you to confirm your password" : "Opravilo zahteva potrditev z vpisom skrbniškega gesla.",
"Confirm" : "Potrdi",
"Password" : "Geslo",
"seconds ago" : "pred nekaj sekundami",
@@ -88,7 +88,7 @@ OC.L10N.register(
"New Files" : "Nove datoteke",
"Already existing files" : "Obstoječe datoteke",
"Which files do you want to keep?" : "Katare datoteke želite ohraniti?",
- "If you select both versions, the copied file will have a number added to its name." : "Če izberete obe različici, bo kopirani datoteki k imenu dodana številka.",
+ "If you select both versions, the copied file will have a number added to its name." : "Če izberete obe različici, bo k imenu kopirane datoteke dodana številka.",
"Cancel" : "Prekliči",
"Continue" : "Nadaljuj",
"(all selected)" : "(vse izbrano)",
@@ -136,7 +136,7 @@ OC.L10N.register(
"Can delete" : "Lahko pobriše",
"Access control" : "Nadzor dostopa",
"Could not unshare" : "Ni mogoče prekiniti souporabe",
- "Error while sharing" : "Napaka med souporabo",
+ "Error while sharing" : "Napaka med omogočanjem souporabe",
"Share details could not be loaded for this item." : "Podrobnosti souporabe za te predmet ni mogoče naložiti.",
"No users or groups found for {search}" : "Ni najdenih uporabnikov ali skupin za {search}",
"No users found for {search}" : "Ni uporabnikov, skladnih z iskalnim nizom {search}",
@@ -171,7 +171,7 @@ OC.L10N.register(
"Update to {version}" : "Posodobi na {version}",
"An error occurred." : "Prišlo je do napake.",
"Please reload the page." : "Stran je treba ponovno naložiti",
- "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Posodobitev je spodletela. Za več podrobnosti o napaki je <a href=\"{url}\">objavljenih na forumu</a>.",
+ "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Posodobitev je spodletela. Več podrobnosti o napaki je <a href=\"{url}\">objavljenih na forumu</a>.",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Posodobitev ni bila uspešna. Prosimo, prijavite to situacijo na <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud skupnost</a>.",
"Continue to Nextcloud" : "Nadaljuj na Nextcloud",
"Searching other places" : "Iskanje drugih mest",
@@ -186,7 +186,7 @@ OC.L10N.register(
"The specified document has not been found on the server." : "Določenega dokumenta na strežniku ni mogoče najti.",
"You can click here to return to %s." : "S klikom na povezavo boste vrnjeni na %s.",
"Internal Server Error" : "Notranja napaka strežnika",
- "More details can be found in the server log." : "Več podrobnosti je zabeleženih v dnevniku strežnika.",
+ "More details can be found in the server log." : "Več podrobnosti je zabeleženih v dnevniški datoteki strežnika.",
"Technical details" : "Tehnične podrobnosti",
"Remote Address: %s" : "Oddaljen naslov: %s",
"Request ID: %s" : "ID zahteve: %s",
@@ -222,6 +222,7 @@ OC.L10N.register(
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Program zahteva podporo JavaScript za pravilno delovanje. Med nastavitvami omogočite {linkstart}JavaScript{linkend} in osvežite spletno stran.",
"More apps" : "Več aplikacij",
"Search" : "Poišči",
+ "Settings menu" : "Meni nastavitev",
"Confirm your password" : "Potrdi svoje geslo",
"Server side authentication failed!" : "Overitev s strežnika je spodletela!",
"Please contact your administrator." : "Stopite v stik s skrbnikom sistema.",
@@ -230,7 +231,7 @@ OC.L10N.register(
"Username or email" : "Uporabniško ime ali elektronski naslov",
"Log in" : "Prijava",
"Wrong password." : "Napačno geslo!",
- "Forgot password?" : "Pozabili geslo?",
+ "Forgot password?" : "Ali ste pozabili geslo?",
"App token" : "Ključ aplikacije",
"Grant access" : "Odobri dostop",
"Redirecting …" : "Presumerjam...",
@@ -258,6 +259,7 @@ OC.L10N.register(
"Thank you for your patience." : "Hvala za potrpežljivost!",
"Error setting expiration date" : "Napaka nastavljanja datuma preteka",
"The public link will expire no later than {days} days after it is created" : "Javna povezava bo potekla {days} dni po ustvarjanju.",
+ "Wrong password. Reset it?" : "Napačno geslo. Ali ga želite ponastaviti?",
"Stay logged in" : "Ohrani prijavo",
"Alternative Logins" : "Druge prijavne možnosti",
"Add \"%s\" as trusted domain" : "Dodaj \"%s\" kot varno domeno",
diff --git a/core/l10n/sl.json b/core/l10n/sl.json
index 909e08d0d3e..0c09dfdc6f0 100644
--- a/core/l10n/sl.json
+++ b/core/l10n/sl.json
@@ -1,5 +1,5 @@
{ "translations": {
- "Please select a file." : "Izberite datoteko",
+ "Please select a file." : "Izberite datoteko.",
"File is too big" : "Datoteka je prevelika",
"The selected file is not an image." : "Izbrana datoteka ni slika.",
"The selected file cannot be read." : "Izbrane datoteke ni mogoče prebrati.",
@@ -60,8 +60,8 @@
"Connection to server lost" : "Povezava s strežnikom spodletela",
"Saving..." : "Poteka shranjevanje ...",
"Dismiss" : "Opusti",
- "Authentication required" : "Zahteva za avtentikacijo",
- "This action requires you to confirm your password" : "Ta operacija zahteva potrditev tvojega gesla",
+ "Authentication required" : "Opravilo zahteva overitev!",
+ "This action requires you to confirm your password" : "Opravilo zahteva potrditev z vpisom skrbniškega gesla.",
"Confirm" : "Potrdi",
"Password" : "Geslo",
"seconds ago" : "pred nekaj sekundami",
@@ -86,7 +86,7 @@
"New Files" : "Nove datoteke",
"Already existing files" : "Obstoječe datoteke",
"Which files do you want to keep?" : "Katare datoteke želite ohraniti?",
- "If you select both versions, the copied file will have a number added to its name." : "Če izberete obe različici, bo kopirani datoteki k imenu dodana številka.",
+ "If you select both versions, the copied file will have a number added to its name." : "Če izberete obe različici, bo k imenu kopirane datoteke dodana številka.",
"Cancel" : "Prekliči",
"Continue" : "Nadaljuj",
"(all selected)" : "(vse izbrano)",
@@ -134,7 +134,7 @@
"Can delete" : "Lahko pobriše",
"Access control" : "Nadzor dostopa",
"Could not unshare" : "Ni mogoče prekiniti souporabe",
- "Error while sharing" : "Napaka med souporabo",
+ "Error while sharing" : "Napaka med omogočanjem souporabe",
"Share details could not be loaded for this item." : "Podrobnosti souporabe za te predmet ni mogoče naložiti.",
"No users or groups found for {search}" : "Ni najdenih uporabnikov ali skupin za {search}",
"No users found for {search}" : "Ni uporabnikov, skladnih z iskalnim nizom {search}",
@@ -169,7 +169,7 @@
"Update to {version}" : "Posodobi na {version}",
"An error occurred." : "Prišlo je do napake.",
"Please reload the page." : "Stran je treba ponovno naložiti",
- "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Posodobitev je spodletela. Za več podrobnosti o napaki je <a href=\"{url}\">objavljenih na forumu</a>.",
+ "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Posodobitev je spodletela. Več podrobnosti o napaki je <a href=\"{url}\">objavljenih na forumu</a>.",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Posodobitev ni bila uspešna. Prosimo, prijavite to situacijo na <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud skupnost</a>.",
"Continue to Nextcloud" : "Nadaljuj na Nextcloud",
"Searching other places" : "Iskanje drugih mest",
@@ -184,7 +184,7 @@
"The specified document has not been found on the server." : "Določenega dokumenta na strežniku ni mogoče najti.",
"You can click here to return to %s." : "S klikom na povezavo boste vrnjeni na %s.",
"Internal Server Error" : "Notranja napaka strežnika",
- "More details can be found in the server log." : "Več podrobnosti je zabeleženih v dnevniku strežnika.",
+ "More details can be found in the server log." : "Več podrobnosti je zabeleženih v dnevniški datoteki strežnika.",
"Technical details" : "Tehnične podrobnosti",
"Remote Address: %s" : "Oddaljen naslov: %s",
"Request ID: %s" : "ID zahteve: %s",
@@ -220,6 +220,7 @@
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Program zahteva podporo JavaScript za pravilno delovanje. Med nastavitvami omogočite {linkstart}JavaScript{linkend} in osvežite spletno stran.",
"More apps" : "Več aplikacij",
"Search" : "Poišči",
+ "Settings menu" : "Meni nastavitev",
"Confirm your password" : "Potrdi svoje geslo",
"Server side authentication failed!" : "Overitev s strežnika je spodletela!",
"Please contact your administrator." : "Stopite v stik s skrbnikom sistema.",
@@ -228,7 +229,7 @@
"Username or email" : "Uporabniško ime ali elektronski naslov",
"Log in" : "Prijava",
"Wrong password." : "Napačno geslo!",
- "Forgot password?" : "Pozabili geslo?",
+ "Forgot password?" : "Ali ste pozabili geslo?",
"App token" : "Ključ aplikacije",
"Grant access" : "Odobri dostop",
"Redirecting …" : "Presumerjam...",
@@ -256,6 +257,7 @@
"Thank you for your patience." : "Hvala za potrpežljivost!",
"Error setting expiration date" : "Napaka nastavljanja datuma preteka",
"The public link will expire no later than {days} days after it is created" : "Javna povezava bo potekla {days} dni po ustvarjanju.",
+ "Wrong password. Reset it?" : "Napačno geslo. Ali ga želite ponastaviti?",
"Stay logged in" : "Ohrani prijavo",
"Alternative Logins" : "Druge prijavne možnosti",
"Add \"%s\" as trusted domain" : "Dodaj \"%s\" kot varno domeno",
diff --git a/core/l10n/sr.js b/core/l10n/sr.js
index 5434f82c025..15a6607513b 100644
--- a/core/l10n/sr.js
+++ b/core/l10n/sr.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Проверите поставке послова у позадини",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Овај сервер нема интернет конекцију: немогуће је доћи до више интернет крајњих тачака. Ово значи да неке могућности као што су качење спољних складишта, обавештења о ажурирањима или инсталација апликација треће стране неће радити. Приступање фајловима споља и слање обавештења е-поштом исто тако може да не ради. Омогућите интернет конекцију на овом серверу ако желите да уживате у свим могућностима.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Нисте подесили меморијски кеш. Да побољшате перформансе, подесите меморијски кеш, ако је доступан. Више информација има у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не може да чита /dev/urandom. Ово се баш не препоручује из сигурносних разлога. Можете наћи више информација у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не може да чита погодан извор случајних бројева што се не препоручује из сигурносних разлога. Можете наћи више информација у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Тренутно користите {version} верзију PHP-а. Надоградите PHP верзију да искористите сва <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">безбедоносна ажурирања и побољшања брзине које обезбеђује PHP група</a>, чим Ваша дистрибуција почне да је подржава.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Тренутно користите PHP верзију 5.6. Тренутна главна верзија Некстклауда је последња која подржава PHP 5.6. Препорука је да пређете на PHP верзију 7.0+ да бисте могли да ажурирате Некстклауд на верзију 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Или подешавање обрнутих прокси заглавља није исправно, или приступате Некстклауду преко проксија од поверења. Ако то не радите, ово је безбедоносни проблем и може омогућити нападачу да лажира да је његова IP адреса видљива Некстклауду. Више информација о овоме има у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "{owner} дели са вама и са групом {group}.",
"Shared with you and {circle} by {owner}" : "Дељемп са Вама и кругом {circle} од стране корисника {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "{owner} поделио са Вама и у разговору {conversation}",
+ "Shared with you in a conversation by {owner}" : "{owner} поделио са Вама у разговору",
"Shared with you by {owner}" : "{owner} дели са вама",
"Choose a password for the mail share" : "Изаберите лозинку за дељење е-поштом",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} је поделио преко везе",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Зависно од ваших подешавања, као администратор можете употребити дугме испод да потврдите поузданост домена.",
"Add \"%s\" as trusted domain" : "Додај „%s“ као поуздан домен",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "За помоћ, погледајте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацију</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не може да чита /dev/urandom. Ово се баш не препоручује из сигурносних разлога. Можете наћи више информација у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Ваша PHP инсталација нема подршку за freetype. Ово ће довести до неисправних профилних слика и неисправног интерфејса за подешавања.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP заглавље није подешено да буде бар \"{seconds}\" секунди. За додатну сигурност, предлаже се да омогућите HSTS као што је описано у <a href=\"{docUrl}\" rel=\"noreferrer noopener\">сигурносним саветима</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Приступање сајту преко HTTP-а. Препоручује се да подесите Ваш сервер да захтева HTTPS као што је описано у <a href=\"{docUrl}\">безбедоносним саветима</a>.",
diff --git a/core/l10n/sr.json b/core/l10n/sr.json
index f02e4170c66..a1498a86420 100644
--- a/core/l10n/sr.json
+++ b/core/l10n/sr.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Проверите поставке послова у позадини",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Овај сервер нема интернет конекцију: немогуће је доћи до више интернет крајњих тачака. Ово значи да неке могућности као што су качење спољних складишта, обавештења о ажурирањима или инсталација апликација треће стране неће радити. Приступање фајловима споља и слање обавештења е-поштом исто тако може да не ради. Омогућите интернет конекцију на овом серверу ако желите да уживате у свим могућностима.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Нисте подесили меморијски кеш. Да побољшате перформансе, подесите меморијски кеш, ако је доступан. Више информација има у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не може да чита /dev/urandom. Ово се баш не препоручује из сигурносних разлога. Можете наћи више информација у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не може да чита погодан извор случајних бројева што се не препоручује из сигурносних разлога. Можете наћи више информација у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Тренутно користите {version} верзију PHP-а. Надоградите PHP верзију да искористите сва <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">безбедоносна ажурирања и побољшања брзине које обезбеђује PHP група</a>, чим Ваша дистрибуција почне да је подржава.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "Тренутно користите PHP верзију 5.6. Тренутна главна верзија Некстклауда је последња која подржава PHP 5.6. Препорука је да пређете на PHP верзију 7.0+ да бисте могли да ажурирате Некстклауд на верзију 14.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Или подешавање обрнутих прокси заглавља није исправно, или приступате Некстклауду преко проксија од поверења. Ако то не радите, ово је безбедоносни проблем и може омогућити нападачу да лажира да је његова IP адреса видљива Некстклауду. Више информација о овоме има у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "{owner} дели са вама и са групом {group}.",
"Shared with you and {circle} by {owner}" : "Дељемп са Вама и кругом {circle} од стране корисника {owner}",
"Shared with you and the conversation {conversation} by {owner}" : "{owner} поделио са Вама и у разговору {conversation}",
+ "Shared with you in a conversation by {owner}" : "{owner} поделио са Вама у разговору",
"Shared with you by {owner}" : "{owner} дели са вама",
"Choose a password for the mail share" : "Изаберите лозинку за дељење е-поштом",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} је поделио преко везе",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Зависно од ваших подешавања, као администратор можете употребити дугме испод да потврдите поузданост домена.",
"Add \"%s\" as trusted domain" : "Додај „%s“ као поуздан домен",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "За помоћ, погледајте <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">документацију</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP не може да чита /dev/urandom. Ово се баш не препоручује из сигурносних разлога. Можете наћи више информација у <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">документацији</a>.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "Ваша PHP инсталација нема подршку за freetype. Ово ће довести до неисправних профилних слика и неисправног интерфејса за подешавања.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP заглавље није подешено да буде бар \"{seconds}\" секунди. За додатну сигурност, предлаже се да омогућите HSTS као што је описано у <a href=\"{docUrl}\" rel=\"noreferrer noopener\">сигурносним саветима</a>.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Приступање сајту преко HTTP-а. Препоручује се да подесите Ваш сервер да захтева HTTPS као што је описано у <a href=\"{docUrl}\">безбедоносним саветима</a>.",
diff --git a/core/l10n/sv.js b/core/l10n/sv.js
index 8e1be919080..7c82e0e68b2 100644
--- a/core/l10n/sv.js
+++ b/core/l10n/sv.js
@@ -83,6 +83,7 @@ OC.L10N.register(
"No" : "Nej",
"Yes" : "Ja",
"No files in here" : "Det finns inga filer här",
+ "No more subfolders in here" : "Inga fler undermappar här",
"Choose" : "Välj",
"Copy" : "Kopiera",
"Move" : "Flytta",
@@ -104,6 +105,8 @@ OC.L10N.register(
"Pending" : "Väntar",
"Copy to {folder}" : "Kopiera till {folder}",
"Move to {folder}" : "Flytta till {folder}",
+ "New in" : "Ny i",
+ "View changelog" : "Visa ändringslogg",
"Very weak password" : "Väldigt svagt lösenord",
"Weak password" : "Svagt lösenord",
"So-so password" : "Okej lösenord",
@@ -121,6 +124,7 @@ OC.L10N.register(
"Press Ctrl-C to copy." : "Tryck ned Ctrl-C för att kopiera.",
"Resharing is not allowed" : "Dela vidare är inte tillåtet",
"Share to {name}" : "Dela till {name}",
+ "Copy URL" : "Kopiera URL",
"Link" : "Länk",
"Password protect" : "Lösenordsskydda",
"Allow editing" : "Tillåt redigering",
@@ -132,14 +136,21 @@ OC.L10N.register(
"Set expiration date" : "Välj utgångsdatum",
"Expiration" : "Upphör",
"Expiration date" : "Utgångsdatum",
+ "Note to recipient" : "Notering till mottagare",
"Share link" : "Dela länk",
+ "Enable" : "Aktivera",
"Shared with you and the group {group} by {owner}" : "Delad med dig och gruppen {group} av {owner}",
+ "Shared with you and {circle} by {owner}" : "Delad med dig och {circle} av {owner}",
+ "Shared with you and the conversation {conversation} by {owner}" : "Delad med dig och konversation {conversation} av {owner}",
+ "Shared with you in a conversation by {owner}" : "Delad med dig i en konversation av {owner}",
"Shared with you by {owner}" : "Delad med dig av {owner}",
"Choose a password for the mail share" : "Välj ett lösenord för delning via e-post",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} delad via länk",
"group" : "Grupp",
"remote" : "extern",
+ "remote group" : "Fjärrgrupp",
"email" : "e-post",
+ "conversation" : "Konversation",
"shared by {sharer}" : "delat av {sharer}",
"Unshare" : "Sluta dela",
"Can reshare" : "Kan dela vidare",
@@ -147,6 +158,7 @@ OC.L10N.register(
"Can create" : "Kan skapa",
"Can change" : "Kan ändra",
"Can delete" : "Kan radera",
+ "Password protect by Talk" : "Lösenordsskydd av Talk",
"Access control" : "Åtkomstkontroll",
"Could not unshare" : "Kunde inte ta bort delning",
"Error while sharing" : "Fel vid delning",
@@ -155,6 +167,7 @@ OC.L10N.register(
"This list is maybe truncated - please refine your search term to see more results." : "Denna lista kan vara trunkerad - var god förfina dina söktermer för att se fler resultat",
"No users or groups found for {search}" : "Inga användare eller grupper funna för {search}",
"No users found for {search}" : "Inga användare funna för {search}",
+ "An error occurred (\"{message}\"). Please try again" : "Ett fel uppstod (\"{message}\"). Försök igen",
"An error occurred. Please try again" : "Ett fel uppstod. Vänligen försök igen",
"{sharee} (group)" : "{sharee} (grupp)",
"{sharee} (remote)" : "{sharee} (externt)",
@@ -242,9 +255,14 @@ OC.L10N.register(
"Need help?" : "Behöver du hjälp?",
"See the documentation" : "Läs dokumentationen",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Denna applikationen kräver JavaScript för att fungera korrekt. Var god {linkstart}aktivera JavaScript{linkend} och ladda om sidan.",
+ "Skip to main content" : "Skippa till huvudinnehållet",
+ "Skip to navigation of app" : "Skippa till navigering av app",
"More apps" : "Fler appar",
"Search" : "Sök",
"Reset search" : "Återställ sökning",
+ "Contacts" : "Kontakter",
+ "Contacts menu" : "Kontaktmeny",
+ "Settings menu" : "Inställningsmeny",
"Confirm your password" : "Bekräfta ditt lösenord",
"Server side authentication failed!" : "Servern misslyckades med autentisering!",
"Please contact your administrator." : "Kontakta din administratör.",
@@ -253,16 +271,24 @@ OC.L10N.register(
"Username or email" : "Användarnamn eller e-post",
"Log in" : "Logga in",
"Wrong password." : "Fel lösenord.",
+ "User disabled" : "Användare inaktiverad",
+ "We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Vi har upptäckt flera felaktiga inloggningsförsök från din IP-adress. Ditt nästa inloggningsförsök kommer därför att fördröjas med upp till 30 sekunder.",
"Forgot password?" : "Glömt lösenordet?",
+ "Back to login" : "Tillbaka till inloggning",
+ "Connect to your account" : "Anslut ditt konto",
"App token" : "App-polett",
"Grant access" : "Tillåt åtkomst",
+ "Alternative log in using app token" : "Alternativ inloggning med app-token",
"Account access" : "Kontoåtkomst",
"You are about to grant %s access to your %s account." : "Du håller på att ge %s tillgång till ditt %s-konto.",
"Redirecting …" : "Omdirigerar ...",
"New password" : "Nytt lösenord",
"New Password" : "Nytt lösenord",
+ "This share is password-protected" : "Denna delning är lösenordsskyddad",
+ "The password is wrong. Try again." : "Felaktigt lösenord. Försök igen.",
"Two-factor authentication" : "Tvåfaktorsautentisering",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "Utökad säkerhet är aktiverat för ditt konto. Var vänlig verifiera med tvåfaktorsautentisering.",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Kunde inte ladda minst en av dina aktiverade inloggningsmetoder. Vänligen kontakta din systemadministratören.",
"Cancel log in" : "Avbryt inloggning",
"Use backup code" : "Använd reservkod",
"Error while validating your second factor" : "Fel vid verifiering av tvåfaktorsautentisering.",
@@ -286,15 +312,23 @@ OC.L10N.register(
"This page will refresh itself when the %s instance is available again." : "Denna sida uppdaterar sig själv när %s-instansen är tillgänglig igen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Hör av dig till din systemadministratör om detta meddelande fortsätter eller visas oväntat.",
"Thank you for your patience." : "Tack för ditt tålamod.",
+ "There was an error loading your contacts" : "Det gick inte att läsa in dina kontakter",
+ "Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Vissa filer har inte passerat integritetskontrollen. Ytterligare information om hur du löser problemet kan hittas i vår <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Lista över ogiltiga filer…</a> / <a href=\"{rescanEndpoint}\">Scanna igen…</a>)",
+ "Shared with {recipients}" : "Delad med {recipients}",
"Error setting expiration date" : "Fel vid val av utgångsdatum",
"The public link will expire no later than {days} days after it is created" : "Den offentliga länken kommer sluta gälla inte senare än {days} dagar efter att den skapades",
"Share with other people by entering a user or group, a federated cloud ID or an email address." : "Dela med andra personer genom att ange användarnamn, grupp, ett federerat moln-ID eller en e-postadress.",
"Share with other people by entering a user or group or a federated cloud ID." : "Dela med andra personer genom att ange användarnamn, grupp eller ett federerat moln-ID.",
"Share with other people by entering a user or group or an email address." : "Dela med andra personer genom att ange användarnamn, grupp eller en e-postadress.",
+ "This action requires you to confirm your password:" : "Denna åtgärd kräver att du bekräftar ditt lösenord:",
+ "Wrong password. Reset it?" : "Felaktigt lösenord. Vill du återställa?",
"Stay logged in" : "Fortsätt vara inloggad.",
"Alternative Logins" : "Alternativa inloggningar",
+ "You are about to grant \"%s\" access to your %s account." : "Du håller på att ge \"%s\" åtkomst till ditt %s konto.",
"Alternative login using app token" : "Alternativ inloggning med app-token",
+ "You are accessing the server from an untrusted domain." : "Du ansluter till servern från en otillförlitlig domän.",
"Add \"%s\" as trusted domain" : "Lägg till \"%s\" som en pålitlig domän",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "För hjälp, se <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>.",
"Back to log in" : "Tillbaks till inloggning",
"Depending on your configuration, this button could also work to trust the domain:" : "Beroende på din konfiguration kan denna knappen också fungera föra att lita på domänen:"
},
diff --git a/core/l10n/sv.json b/core/l10n/sv.json
index eb872dc36fb..57195272ed8 100644
--- a/core/l10n/sv.json
+++ b/core/l10n/sv.json
@@ -81,6 +81,7 @@
"No" : "Nej",
"Yes" : "Ja",
"No files in here" : "Det finns inga filer här",
+ "No more subfolders in here" : "Inga fler undermappar här",
"Choose" : "Välj",
"Copy" : "Kopiera",
"Move" : "Flytta",
@@ -102,6 +103,8 @@
"Pending" : "Väntar",
"Copy to {folder}" : "Kopiera till {folder}",
"Move to {folder}" : "Flytta till {folder}",
+ "New in" : "Ny i",
+ "View changelog" : "Visa ändringslogg",
"Very weak password" : "Väldigt svagt lösenord",
"Weak password" : "Svagt lösenord",
"So-so password" : "Okej lösenord",
@@ -119,6 +122,7 @@
"Press Ctrl-C to copy." : "Tryck ned Ctrl-C för att kopiera.",
"Resharing is not allowed" : "Dela vidare är inte tillåtet",
"Share to {name}" : "Dela till {name}",
+ "Copy URL" : "Kopiera URL",
"Link" : "Länk",
"Password protect" : "Lösenordsskydda",
"Allow editing" : "Tillåt redigering",
@@ -130,14 +134,21 @@
"Set expiration date" : "Välj utgångsdatum",
"Expiration" : "Upphör",
"Expiration date" : "Utgångsdatum",
+ "Note to recipient" : "Notering till mottagare",
"Share link" : "Dela länk",
+ "Enable" : "Aktivera",
"Shared with you and the group {group} by {owner}" : "Delad med dig och gruppen {group} av {owner}",
+ "Shared with you and {circle} by {owner}" : "Delad med dig och {circle} av {owner}",
+ "Shared with you and the conversation {conversation} by {owner}" : "Delad med dig och konversation {conversation} av {owner}",
+ "Shared with you in a conversation by {owner}" : "Delad med dig i en konversation av {owner}",
"Shared with you by {owner}" : "Delad med dig av {owner}",
"Choose a password for the mail share" : "Välj ett lösenord för delning via e-post",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} delad via länk",
"group" : "Grupp",
"remote" : "extern",
+ "remote group" : "Fjärrgrupp",
"email" : "e-post",
+ "conversation" : "Konversation",
"shared by {sharer}" : "delat av {sharer}",
"Unshare" : "Sluta dela",
"Can reshare" : "Kan dela vidare",
@@ -145,6 +156,7 @@
"Can create" : "Kan skapa",
"Can change" : "Kan ändra",
"Can delete" : "Kan radera",
+ "Password protect by Talk" : "Lösenordsskydd av Talk",
"Access control" : "Åtkomstkontroll",
"Could not unshare" : "Kunde inte ta bort delning",
"Error while sharing" : "Fel vid delning",
@@ -153,6 +165,7 @@
"This list is maybe truncated - please refine your search term to see more results." : "Denna lista kan vara trunkerad - var god förfina dina söktermer för att se fler resultat",
"No users or groups found for {search}" : "Inga användare eller grupper funna för {search}",
"No users found for {search}" : "Inga användare funna för {search}",
+ "An error occurred (\"{message}\"). Please try again" : "Ett fel uppstod (\"{message}\"). Försök igen",
"An error occurred. Please try again" : "Ett fel uppstod. Vänligen försök igen",
"{sharee} (group)" : "{sharee} (grupp)",
"{sharee} (remote)" : "{sharee} (externt)",
@@ -240,9 +253,14 @@
"Need help?" : "Behöver du hjälp?",
"See the documentation" : "Läs dokumentationen",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Denna applikationen kräver JavaScript för att fungera korrekt. Var god {linkstart}aktivera JavaScript{linkend} och ladda om sidan.",
+ "Skip to main content" : "Skippa till huvudinnehållet",
+ "Skip to navigation of app" : "Skippa till navigering av app",
"More apps" : "Fler appar",
"Search" : "Sök",
"Reset search" : "Återställ sökning",
+ "Contacts" : "Kontakter",
+ "Contacts menu" : "Kontaktmeny",
+ "Settings menu" : "Inställningsmeny",
"Confirm your password" : "Bekräfta ditt lösenord",
"Server side authentication failed!" : "Servern misslyckades med autentisering!",
"Please contact your administrator." : "Kontakta din administratör.",
@@ -251,16 +269,24 @@
"Username or email" : "Användarnamn eller e-post",
"Log in" : "Logga in",
"Wrong password." : "Fel lösenord.",
+ "User disabled" : "Användare inaktiverad",
+ "We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "Vi har upptäckt flera felaktiga inloggningsförsök från din IP-adress. Ditt nästa inloggningsförsök kommer därför att fördröjas med upp till 30 sekunder.",
"Forgot password?" : "Glömt lösenordet?",
+ "Back to login" : "Tillbaka till inloggning",
+ "Connect to your account" : "Anslut ditt konto",
"App token" : "App-polett",
"Grant access" : "Tillåt åtkomst",
+ "Alternative log in using app token" : "Alternativ inloggning med app-token",
"Account access" : "Kontoåtkomst",
"You are about to grant %s access to your %s account." : "Du håller på att ge %s tillgång till ditt %s-konto.",
"Redirecting …" : "Omdirigerar ...",
"New password" : "Nytt lösenord",
"New Password" : "Nytt lösenord",
+ "This share is password-protected" : "Denna delning är lösenordsskyddad",
+ "The password is wrong. Try again." : "Felaktigt lösenord. Försök igen.",
"Two-factor authentication" : "Tvåfaktorsautentisering",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "Utökad säkerhet är aktiverat för ditt konto. Var vänlig verifiera med tvåfaktorsautentisering.",
+ "Could not load at least one of your enabled two-factor auth methods. Please contact your admin." : "Kunde inte ladda minst en av dina aktiverade inloggningsmetoder. Vänligen kontakta din systemadministratören.",
"Cancel log in" : "Avbryt inloggning",
"Use backup code" : "Använd reservkod",
"Error while validating your second factor" : "Fel vid verifiering av tvåfaktorsautentisering.",
@@ -284,15 +310,23 @@
"This page will refresh itself when the %s instance is available again." : "Denna sida uppdaterar sig själv när %s-instansen är tillgänglig igen.",
"Contact your system administrator if this message persists or appeared unexpectedly." : "Hör av dig till din systemadministratör om detta meddelande fortsätter eller visas oväntat.",
"Thank you for your patience." : "Tack för ditt tålamod.",
+ "There was an error loading your contacts" : "Det gick inte att läsa in dina kontakter",
+ "Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "Vissa filer har inte passerat integritetskontrollen. Ytterligare information om hur du löser problemet kan hittas i vår <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">dokumentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">Lista över ogiltiga filer…</a> / <a href=\"{rescanEndpoint}\">Scanna igen…</a>)",
+ "Shared with {recipients}" : "Delad med {recipients}",
"Error setting expiration date" : "Fel vid val av utgångsdatum",
"The public link will expire no later than {days} days after it is created" : "Den offentliga länken kommer sluta gälla inte senare än {days} dagar efter att den skapades",
"Share with other people by entering a user or group, a federated cloud ID or an email address." : "Dela med andra personer genom att ange användarnamn, grupp, ett federerat moln-ID eller en e-postadress.",
"Share with other people by entering a user or group or a federated cloud ID." : "Dela med andra personer genom att ange användarnamn, grupp eller ett federerat moln-ID.",
"Share with other people by entering a user or group or an email address." : "Dela med andra personer genom att ange användarnamn, grupp eller en e-postadress.",
+ "This action requires you to confirm your password:" : "Denna åtgärd kräver att du bekräftar ditt lösenord:",
+ "Wrong password. Reset it?" : "Felaktigt lösenord. Vill du återställa?",
"Stay logged in" : "Fortsätt vara inloggad.",
"Alternative Logins" : "Alternativa inloggningar",
+ "You are about to grant \"%s\" access to your %s account." : "Du håller på att ge \"%s\" åtkomst till ditt %s konto.",
"Alternative login using app token" : "Alternativ inloggning med app-token",
+ "You are accessing the server from an untrusted domain." : "Du ansluter till servern från en otillförlitlig domän.",
"Add \"%s\" as trusted domain" : "Lägg till \"%s\" som en pålitlig domän",
+ "For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "För hjälp, se <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>.",
"Back to log in" : "Tillbaks till inloggning",
"Depending on your configuration, this button could also work to trust the domain:" : "Beroende på din konfiguration kan denna knappen också fungera föra att lita på domänen:"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
diff --git a/core/l10n/tr.js b/core/l10n/tr.js
index 698eac947c4..4c3d8433775 100644
--- a/core/l10n/tr.js
+++ b/core/l10n/tr.js
@@ -128,7 +128,7 @@ OC.L10N.register(
"Check the background job settings" : "Art alan görevi ayarlarını denetleyin",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Bu sunucunun çalışan bir İnternet bağlantısı yok. Birden çok uç noktaya erişilemez. Bu durumda dış depolama alanı bağlama, güncelleme bildirimleri ya da üçüncü taraf uygulamalarını kurmak gibi bazı özellikler çalışmaz. Dosyalara uzaktan erişim ve bildirim e-postalarının gönderilmesi işlemleri de yapılamaz. Tüm bu özelliklerin kullanılabilmesi için sunucuyu İnternet üzerine bağlamanız önerilir.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Henüz bir ön bellek yapılandırılmamış. Olabiliyorsa başarımı arttırmak için memcache ön bellek ayarlarını yapın. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önerilen /dev/urandom klasörü PHP tarafından okunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önemle önerilen rastgelelik kaynağı PHP tarafından bulunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Şu anda PHP {version} sürümünü kullanıyorsunuz. Kullandığınız dağıtım desteklediği zaman PHP sürümünüzü güncelleyerek <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP grubu tarafından sağlanan başarım ve güvenlik geliştirmelerinden</a> faydalanın.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "PHP 5.6 sürümünü kullanıyorsunuz. Geçerli Nextcloud ana sürümü PHP 5.6 sürümünü destekleyen son sürüm olacak. Nextcloud 14 sürümünü kullanabilmek için PHP sürümünü 7.0 ve üzerine yükseltmeniz önerilir.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Ters vekil sunucu üst bilgi yapılandırmanız doğru değil ya da Nextcloud üzerine güvenilen bir vekil sunucudan erişiyorsunuz. Böyle değil ise bu bir güvenlik sorunudur ve bir saldırganın IP adresini Nextcolud sunucusuna farklı göstermesine izin verebilir. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
@@ -182,6 +182,7 @@ OC.L10N.register(
"Shared with you and the group {group} by {owner}" : "{owner} tarafından sizinle ve {group} ile paylaşılmış",
"Shared with you and {circle} by {owner}" : "{owner} tarafından sizinle ve {circle} ile paylaşılmış",
"Shared with you and the conversation {conversation} by {owner}" : "{owner} tarafından sizinle ve {conversation} görüşmesi ile paylaştırılmış",
+ "Shared with you in a conversation by {owner}" : "{owner} tarafından sizinle {conversation} görüşmesinde paylaşılmış",
"Shared with you by {owner}" : "{owner} tarafından sizinle paylaşılmış",
"Choose a password for the mail share" : "E-posta ile paylaşmak için bir parola seçin",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} bağlantı ile paylaşılmış",
@@ -393,6 +394,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Yapılandırmanıza bağlı olarak, bir yönetici olarak bu etki alanına güvenmek için aşağıdaki düğmeyi de kullanabilirsiniz.",
"Add \"%s\" as trusted domain" : "\"%s\" etki alanını güvenilir olarak ekle",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Yardım almak için, <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">belgelere</a> bakın.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önerilen /dev/urandom klasörü PHP tarafından okunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP kurulumunuzda FreeType desteği yok. Bu durum profil görsellerinin ve ayarlar bölümünün bozuk görüntülenmesine neden olur.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP üst bilgisi en azından\"{seconds}\" saniyedir ayarlanmamış. Gelişmiş güvenlik sağlamak için <a href=\"{docUrl}\" rel=\"noreferrer noopener\">güvenlik ipuçlarında</a> anlatıldığı şekilde HSTS özelliğinin etkinleştirilmesi önerilir.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Siteye HTTP üzerinden erişiliyor. Sunucunuzu <a href=\"{docUrl}\">güvenlik ipuçlarında</a> anlatıldığı şekilde HTTPS kullanımı gerekecek şekilde yapılandırmanız önemle önerilir.",
diff --git a/core/l10n/tr.json b/core/l10n/tr.json
index 8733bd8efe5..162e004ba25 100644
--- a/core/l10n/tr.json
+++ b/core/l10n/tr.json
@@ -126,7 +126,7 @@
"Check the background job settings" : "Art alan görevi ayarlarını denetleyin",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "Bu sunucunun çalışan bir İnternet bağlantısı yok. Birden çok uç noktaya erişilemez. Bu durumda dış depolama alanı bağlama, güncelleme bildirimleri ya da üçüncü taraf uygulamalarını kurmak gibi bazı özellikler çalışmaz. Dosyalara uzaktan erişim ve bildirim e-postalarının gönderilmesi işlemleri de yapılamaz. Tüm bu özelliklerin kullanılabilmesi için sunucuyu İnternet üzerine bağlamanız önerilir.",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Henüz bir ön bellek yapılandırılmamış. Olabiliyorsa başarımı arttırmak için memcache ön bellek ayarlarını yapın. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önerilen /dev/urandom klasörü PHP tarafından okunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
+ "No suitable source for randomness found by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önemle önerilen rastgelelik kaynağı PHP tarafından bulunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "Şu anda PHP {version} sürümünü kullanıyorsunuz. Kullandığınız dağıtım desteklediği zaman PHP sürümünüzü güncelleyerek <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP grubu tarafından sağlanan başarım ve güvenlik geliştirmelerinden</a> faydalanın.",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "PHP 5.6 sürümünü kullanıyorsunuz. Geçerli Nextcloud ana sürümü PHP 5.6 sürümünü destekleyen son sürüm olacak. Nextcloud 14 sürümünü kullanabilmek için PHP sürümünü 7.0 ve üzerine yükseltmeniz önerilir.",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Ters vekil sunucu üst bilgi yapılandırmanız doğru değil ya da Nextcloud üzerine güvenilen bir vekil sunucudan erişiyorsunuz. Böyle değil ise bu bir güvenlik sorunudur ve bir saldırganın IP adresini Nextcolud sunucusuna farklı göstermesine izin verebilir. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
@@ -180,6 +180,7 @@
"Shared with you and the group {group} by {owner}" : "{owner} tarafından sizinle ve {group} ile paylaşılmış",
"Shared with you and {circle} by {owner}" : "{owner} tarafından sizinle ve {circle} ile paylaşılmış",
"Shared with you and the conversation {conversation} by {owner}" : "{owner} tarafından sizinle ve {conversation} görüşmesi ile paylaştırılmış",
+ "Shared with you in a conversation by {owner}" : "{owner} tarafından sizinle {conversation} görüşmesinde paylaşılmış",
"Shared with you by {owner}" : "{owner} tarafından sizinle paylaşılmış",
"Choose a password for the mail share" : "E-posta ile paylaşmak için bir parola seçin",
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} bağlantı ile paylaşılmış",
@@ -391,6 +392,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "Yapılandırmanıza bağlı olarak, bir yönetici olarak bu etki alanına güvenmek için aşağıdaki düğmeyi de kullanabilirsiniz.",
"Add \"%s\" as trusted domain" : "\"%s\" etki alanını güvenilir olarak ekle",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "Yardım almak için, <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">belgelere</a> bakın.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "Güvenlik nedeniyle kullanılması önerilen /dev/urandom klasörü PHP tarafından okunamıyor. Ayrıntılı bilgi almak için <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">belgelere</a> bakabilirsiniz.",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "PHP kurulumunuzda FreeType desteği yok. Bu durum profil görsellerinin ve ayarlar bölümünün bozuk görüntülenmesine neden olur.",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "\"Strict-Transport-Security\" HTTP üst bilgisi en azından\"{seconds}\" saniyedir ayarlanmamış. Gelişmiş güvenlik sağlamak için <a href=\"{docUrl}\" rel=\"noreferrer noopener\">güvenlik ipuçlarında</a> anlatıldığı şekilde HSTS özelliğinin etkinleştirilmesi önerilir.",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "Siteye HTTP üzerinden erişiliyor. Sunucunuzu <a href=\"{docUrl}\">güvenlik ipuçlarında</a> anlatıldığı şekilde HTTPS kullanımı gerekecek şekilde yapılandırmanız önemle önerilir.",
diff --git a/core/l10n/zh_CN.js b/core/l10n/zh_CN.js
index b6861388987..8460e7bc132 100644
--- a/core/l10n/zh_CN.js
+++ b/core/l10n/zh_CN.js
@@ -28,13 +28,14 @@ OC.L10N.register(
"Couldn't send reset email. Please make sure your username is correct." : "无法发送重置邮件, 请检查您的用户名是否正确.",
"Preparing update" : "正在准备更新",
"[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair warning: " : "修复警告:",
- "Repair error: " : "修复错误:",
+ "Repair warning: " : "修复警告: ",
+ "Repair error: " : "修复错误: ",
"Please use the command line updater because automatic updating is disabled in the config.php." : "由于自动更新在 config.php 中已禁用, 请使用命令行更新.",
"[%d / %d]: Checking table %s" : "[%d / %d]: 检查数据表 %s",
"Turned on maintenance mode" : "启用维护模式",
"Turned off maintenance mode" : "关闭维护模式",
"Maintenance mode is kept active" : "维护模式已启用",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "等待cron进程结束(5秒后重新检测) …",
"Updating database schema" : "正在更新数据库结构",
"Updated database" : "数据库已更新",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "检查数据库结构是否可以更新 (这可能需要很长的时间, 这取决于数据库大小)",
@@ -53,12 +54,12 @@ OC.L10N.register(
"%s (incompatible)" : "%s (不兼容)",
"Following apps have been disabled: %s" : "下列应用已经被禁用: %s",
"Already up to date" : "已经是最新",
- "Search contacts …" : "搜索联系人 ...",
+ "Search contacts …" : "搜索联系人 …",
"No contacts found" : "无法找到联系人",
- "Show all contacts …" : "显示所有联系人...",
+ "Show all contacts …" : "显示所有联系人 …",
"Could not load your contacts" : "无法加载您的联系人",
- "Loading your contacts …" : "加载您的联系人...",
- "Looking for {term} …" : "查找 {term} ...",
+ "Loading your contacts …" : "加载您的联系人 …",
+ "Looking for {term} …" : "查找 {term} …",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">代码完整性检查出现异常, 点击查看详细信息...</a>",
"No action available" : "无可用操作",
"Error fetching contact actions" : "查找联系人时出错",
@@ -73,7 +74,7 @@ OC.L10N.register(
"Password" : "密码",
"Failed to authenticate, try again" : "授权失败, 请重试",
"seconds ago" : "几秒前",
- "Logging in …" : "正在登录...",
+ "Logging in …" : "正在登录 …",
"The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "密码重置邮件已经发送到您的电子邮箱中. 如果您长时间没能收到邮件, 请检查您邮箱的垃圾/广告文件夹 <br>如果未能收到邮件请联系管理员.",
"Your files are encrypted. There will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "您的文件已经加密. 当您的密码重置后没有任何方式能恢复您的数据. <br />如果您不确定, 请在继续前联系您的管理员.<br/>您是否真的要继续?",
"I know what I'm doing" : "我知道我在做什么",
@@ -83,6 +84,7 @@ OC.L10N.register(
"No" : "否",
"Yes" : "是",
"No files in here" : "未找到文件",
+ "No more subfolders in here" : "没有更多的子文件夹",
"Choose" : "选择",
"Copy" : "复制",
"Move" : "移动",
@@ -112,9 +114,11 @@ OC.L10N.register(
"Strong password" : "强密码",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "您的网页服务器没有正确设置允许文件同步,因为 WebDAV 接口看起来无法正常工作。",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "您的网页服务器未正确设置以解析“{url}”。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
+ "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP的安装似乎不正确,无法访问系统环境变量。getenv(\"PATH\")函数测试返回了一个空值。",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "请参照<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">安装说明文档 ↗</a>中的PHP配置说明查阅您服务器的PHP配置信息,特别是在使用php-fpm时。",
+ "Check the background job settings" : "请检查后台任务设置",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "此服务器没有可用的互联网连接:多个节点无法访问。这意味着某些功能比如挂载外部存储,更新通知以及安装第三方应用将无法工作。远程访问文件和发送通知邮件可能也不工作。启用这台服务器上的互联网连接以享用所有功能。",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "内存缓存未配置,为了提升使用体验,请尽量配置内存缓存。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 无法访问 /dev/urandom,出于安全原因这是强烈不推荐的。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "您当前正在运行 PHP 版本 {version}。我们建议您尽快在您的发行版支持新版本的时候进行升级,以获得<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">来自 PHP 官方的性能和安全</a>的提升。",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "您目前正在运行PHP 5.6。 Nextcloud的当前主要版本是最后一个支持PHP 5.6的版本。 建议将PHP版本升级到7.0以便能够升级到Nextcloud 14。",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "反向代理头部配置错误,或者您正在通过可信的代理访问 Nextcloud。如果您不是通过可信代理访问 Nextcloud,这是一个安全问题,它允许攻击者通过伪装 IP 地址访问 Nextcloud。更多信息请查看<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
@@ -123,12 +127,16 @@ OC.L10N.register(
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP 的组件 OPcache 没有正确配置。 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">为了提供更好的性能</a>,我们建议在 <code>php.ini</code>中使用下列设置:",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP函数“set_time_limit”不可用。 这可能会导致脚本在执行过程中暂停,从而导致安装中断。 我们强烈建议启用此功能。",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "您的 PHP 没有 FreeType 支持,导致配置文件图片和设置界面中断。",
+ "Missing index \"{indexName}\" in table \"{tableName}\"." : "在数据表 \"{tableName}\" 中无法找到索引 \"{indexName}\" .",
+ "The PHP memory limit is below the recommended value of 512MB." : "PHP内存限制低于建议值512MB.",
"Error occurred while checking server setup" : "检查服务器设置时出错",
- "Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或都你可以将数据目录移出 Web 服务器文档根目录。",
+ "Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或者你可以将数据目录移动到 Web 服务器文档根目录。",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP 请求头 \"{header}\" 没有配置为 \"{expected}\"。这是一个潜在的安全或隐私风险, 我们建议您调整这项设置.",
"The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "HTTP 请求头 \"{header}\" 没有配置为 \"{expected}\"。某些功能可能无法正常工作,因此建议相应地调整此设置。",
+ "The \"{header}\" HTTP header is not set to \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". This can leak referer information. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C Recommendation ↗</a>." : "HTTP的请求头 \"{header}\" 未设置为 \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". 这会导致信息泄露. 请查阅 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C 建议↗</a>",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "HTTP的请求头 \"Strict-Transport-Security\" 未设置为至少 \"{seconds}\" 秒. 为了提高安全性,建议参照<a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>中的说明启用HSTS.",
"Shared" : "已共享",
- "Shared with" : "分享给",
+ "Shared with" : "共享给",
"Shared by" : "共享人",
"Choose a password for the public link" : "为公开链接设置密码",
"Choose a password for the public link or press the \"Enter\" key" : "为公开链接设置密码, 或按 \"回车\" 键",
@@ -151,6 +159,7 @@ OC.L10N.register(
"Expiration" : "过期",
"Expiration date" : "过期日期",
"Share link" : "分享链接",
+ "Enable" : "启用",
"Shared with you and the group {group} by {owner}" : "{owner} 分享给您及 {group} 分组",
"Shared with you and {circle} by {owner}" : "{owner} 共享给您及 {circle}",
"Shared with you and the conversation {conversation} by {owner}" : "{owner} 共享给您及对话 {conversation}",
@@ -159,6 +168,7 @@ OC.L10N.register(
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} 通过链接分享",
"group" : "群组",
"remote" : "外部",
+ "remote group" : "远程群组",
"email" : "邮件",
"shared by {sharer}" : "由 {sharer} 分享",
"Unshare" : "取消共享",
@@ -170,20 +180,20 @@ OC.L10N.register(
"Access control" : "访问控制",
"Could not unshare" : "无法共享",
"Error while sharing" : "共享时出错",
- "Share details could not be loaded for this item." : "无法加载这个项目的分享详情",
+ "Share details could not be loaded for this item." : "无法加载这个项目的分享详情.",
"_At least {count} character is needed for autocompletion_::_At least {count} characters are needed for autocompletion_" : ["{count}字符需要自动完成"],
- "This list is maybe truncated - please refine your search term to see more results." : "此列表可能会被截断 - 请缩短您的搜索词以查看更多结果",
+ "This list is maybe truncated - please refine your search term to see more results." : "此列表可能会被截断 - 请缩短您的搜索词以查看更多结果.",
"No users or groups found for {search}" : "{search} 条件下没有找到用户或用户组",
"No users found for {search}" : "没有找到 {search} 用户",
- "An error occurred (\"{message}\"). Please try again" : "发生错误 (\"{message}\")。请重试。",
- "An error occurred. Please try again" : "发生错误. 请重试.",
+ "An error occurred (\"{message}\"). Please try again" : "发生错误 (\"{message}\"). 请重试",
+ "An error occurred. Please try again" : "发生错误. 请重试",
"{sharee} (group)" : "{sharee} (分组)",
"{sharee} (remote)" : "{sharee} (外部)",
"{sharee} (email)" : "{sharee} (邮件)",
"{sharee} ({type}, {owner})" : "{share}({type},{owner})",
"Share" : "分享",
"Name or email address..." : "姓名或电子邮件地址...",
- "Name or federated cloud ID..." : "姓名或联合云 ID",
+ "Name or federated cloud ID..." : "姓名或联合云 ID...",
"Name, federated cloud ID or email address..." : "姓名, 联合云 ID 或电子邮件地址...",
"Name..." : "名称...",
"Error" : "错误",
@@ -206,8 +216,8 @@ OC.L10N.register(
"_download %n file_::_download %n files_" : ["下载 %n 个文件"],
"The update is in progress, leaving this page might interrupt the process in some environments." : "正在更新, 在某些环境下离开当前页面可能会中断.",
"Update to {version}" : "升级到 {version}",
- "An error occurred." : "发生错误",
- "Please reload the page." : "请重新加载页面",
+ "An error occurred." : "发生一个错误.",
+ "Please reload the page." : "请重新加载页面.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "更新不成功. 有关此问题的更多信息请<a href=\"{url}\">查看我们的论坛帖子</a>。",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "升级成功. 请将此问题报告给 <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud 社区</a>.",
"Continue to Nextcloud" : "继续访问 Nextcloud",
@@ -238,7 +248,7 @@ OC.L10N.register(
"Line: %s" : "行: %s",
"Trace" : "追踪",
"Security warning" : "安全警告",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "因为 .htaccess 文件没有工作, 您的数据目录和文件可从互联网被访问. ",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "因为 .htaccess 文件没有工作, 您的数据目录和文件可从互联网被访问.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "了解如何正确配置服务器,请参见 <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">文档</a>.",
"Create an <strong>admin account</strong>" : "创建 <strong>管理员账号</strong>",
"Username" : "用户名",
@@ -259,7 +269,7 @@ OC.L10N.register(
"For larger installations we recommend to choose a different database backend." : "在更大的环境下, 我们建议选择一个不同的数据库后端.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "特别当使用桌面客户端来同步文件时, 不鼓励使用 SQLite.",
"Finish setup" : "安装完成",
- "Finishing …" : "正在完成...",
+ "Finishing …" : "正在完成 …",
"Need help?" : "需要帮助?",
"See the documentation" : "查看文档",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "对于正确的操作, 该应用需要使用 JavaScript. 请 {linkstart}启用 JavaScript{linkend}, 并重新加载页面.",
@@ -277,7 +287,8 @@ OC.L10N.register(
"Please try again or contact your administrator." : "请重试或联系您的管理员.",
"Username or email" : "用户名或邮箱",
"Log in" : "登录",
- "Wrong password." : "密码错误",
+ "Wrong password." : "密码错误.",
+ "User disabled" : "用户不可用",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "我们检测到您的 IP 进行了多次无效登录尝试。因此,请 30 秒之后再尝试。",
"Forgot password?" : "忘记密码?",
"Back to login" : "返回登录",
@@ -288,9 +299,11 @@ OC.L10N.register(
"Alternative log in using app token" : "使用应用程序令牌替代登录",
"Account access" : "账户访问",
"You are about to grant %s access to your %s account." : "你将分配 %s 访问权限给你的 %s 账户。",
- "Redirecting …" : "正在转向...",
+ "Redirecting …" : "正在跳转 …",
"New password" : "新密码",
"New Password" : "新密码",
+ "This share is password-protected" : "这个共享是被密码保护的",
+ "The password is wrong. Try again." : "密码错误.请重试.",
"Two-factor authentication" : "双重认证",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "您的帐户已启用增强安全性, 请使用第二因子验证.",
"Cancel log in" : "取消登录",
@@ -329,7 +342,7 @@ OC.L10N.register(
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached 当前配置为分布式缓存, 但是当前安装的 PHP 模块是 \"memcache\". \\OC\\Memcache\\Memcached 仅支持 \"memcached\" 而不是 \"memcache\". 点击<a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki</a>了解两者的不同.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "一些文件没有通过完整性检查. 了解如何解决该问题请查看我们的<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">文档</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">无效的文件列表…</a> / <a href=\"{rescanEndpoint}\">重新扫描…</a>)",
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP 的组件 OPcache 没有正确配置. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">为了提供更好的性能</a>, 我们建议在<code>php.ini</code>文件中使用下列设置:",
- "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP的函数“set_time_limit\"是不可用的,这导致脚本在运行中被中止,暂停你的安装,我们强烈建议你开启这个函数",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP的函数 “set_time_limit\" 是不可用的. 这导致脚本在运行中被中止,暂停你的安装,我们强烈建议你开启这个函数.",
"Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "你的数据存储目录可以从互联网上直接访问。.htaccess文件没有生效,请配置你的网页服务器以避免数据存储目录可从外部访问或将数据存储目录转移到网页服务器根目录之外。",
"The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "HTTP 请求头 \"{header}\" 没有配置为 \"{expected}\". 这是一个潜在的安全或隐私风险, 我们建议您调整这项设置.",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "HTTP 请求头 \"Strict-Transport-Security\" 没有配置为至少 “{seconds}” 秒. 出于增强安全性考虑, 我们推荐按照<a href=\"{docUrl}\" rel=\"noreferrer\">安全提示</a>中的说明启用 HSTS.",
@@ -339,7 +352,7 @@ OC.L10N.register(
"The public link will expire no later than {days} days after it is created" : "该共享链接将在创建后 {days} 天失效",
"Share with other people by entering a user or group, a federated cloud ID or an email address." : "通过输入用户或组,联合云ID或电子邮件地址与其他人分享。",
"Share with other people by entering a user or group or a federated cloud ID." : "通过输入用户或组或联合云ID与其他人共享。",
- "Share with other people by entering a user or group or an email address." : "输入用户/组织或邮箱地址来分享给其他人",
+ "Share with other people by entering a user or group or an email address." : "输入用户/组织或邮箱地址来分享给其他人.",
"The server encountered an internal error and was unable to complete your request." : "服务器发生一个内部错误并且无法完成你的请求.",
"Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "如果多次出现这个错误, 请联系服务器管理员, 请把下面的技术细节包含在您的报告中.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentation</a>." : "了解如何正确配置服务器, 请参见 <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">文档</a>.",
@@ -354,6 +367,7 @@ OC.L10N.register(
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "基于您的配置, 作为系统管理员, 您还可以点击下面的按钮来信任该域名.",
"Add \"%s\" as trusted domain" : "添加 \"%s\" 为信任域名",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "获取更多帮助, 请查看 <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">文档</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 无法访问 /dev/urandom,出于安全原因这是强烈不推荐的。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "您的 PHP 没有 FreeType 支持,导致配置文件图片和设置界面中断。",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP 请求头 \"Strict-Transport-Security\" 没有配置为至少 “{seconds}” 秒。出于增强安全性考虑,我们推荐按照 <a href=\"{docUrl}\" rel=\"noreferrer noopener\">安全提示</a>中的说明启用HSTS。",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "您正在通过 HTTP 访问该站点, 我们强烈建议您按照<a href=\"{docUrl}\">安全提示</a>中的说明配置服务器强制使用 HTTPS.",
diff --git a/core/l10n/zh_CN.json b/core/l10n/zh_CN.json
index 2a6e7f0391c..6c9cc0de32c 100644
--- a/core/l10n/zh_CN.json
+++ b/core/l10n/zh_CN.json
@@ -26,13 +26,14 @@
"Couldn't send reset email. Please make sure your username is correct." : "无法发送重置邮件, 请检查您的用户名是否正确.",
"Preparing update" : "正在准备更新",
"[%d / %d]: %s" : "[%d / %d]: %s",
- "Repair warning: " : "修复警告:",
- "Repair error: " : "修复错误:",
+ "Repair warning: " : "修复警告: ",
+ "Repair error: " : "修复错误: ",
"Please use the command line updater because automatic updating is disabled in the config.php." : "由于自动更新在 config.php 中已禁用, 请使用命令行更新.",
"[%d / %d]: Checking table %s" : "[%d / %d]: 检查数据表 %s",
"Turned on maintenance mode" : "启用维护模式",
"Turned off maintenance mode" : "关闭维护模式",
"Maintenance mode is kept active" : "维护模式已启用",
+ "Waiting for cron to finish (checks again in 5 seconds) …" : "等待cron进程结束(5秒后重新检测) …",
"Updating database schema" : "正在更新数据库结构",
"Updated database" : "数据库已更新",
"Checking whether the database schema can be updated (this can take a long time depending on the database size)" : "检查数据库结构是否可以更新 (这可能需要很长的时间, 这取决于数据库大小)",
@@ -51,12 +52,12 @@
"%s (incompatible)" : "%s (不兼容)",
"Following apps have been disabled: %s" : "下列应用已经被禁用: %s",
"Already up to date" : "已经是最新",
- "Search contacts …" : "搜索联系人 ...",
+ "Search contacts …" : "搜索联系人 …",
"No contacts found" : "无法找到联系人",
- "Show all contacts …" : "显示所有联系人...",
+ "Show all contacts …" : "显示所有联系人 …",
"Could not load your contacts" : "无法加载您的联系人",
- "Loading your contacts …" : "加载您的联系人...",
- "Looking for {term} …" : "查找 {term} ...",
+ "Loading your contacts …" : "加载您的联系人 …",
+ "Looking for {term} …" : "查找 {term} …",
"<a href=\"{docUrl}\">There were problems with the code integrity check. More information…</a>" : "<a href=\"{docUrl}\">代码完整性检查出现异常, 点击查看详细信息...</a>",
"No action available" : "无可用操作",
"Error fetching contact actions" : "查找联系人时出错",
@@ -71,7 +72,7 @@
"Password" : "密码",
"Failed to authenticate, try again" : "授权失败, 请重试",
"seconds ago" : "几秒前",
- "Logging in …" : "正在登录...",
+ "Logging in …" : "正在登录 …",
"The link to reset your password has been sent to your email. If you do not receive it within a reasonable amount of time, check your spam/junk folders.<br>If it is not there ask your local administrator." : "密码重置邮件已经发送到您的电子邮箱中. 如果您长时间没能收到邮件, 请检查您邮箱的垃圾/广告文件夹 <br>如果未能收到邮件请联系管理员.",
"Your files are encrypted. There will be no way to get your data back after your password is reset.<br />If you are not sure what to do, please contact your administrator before you continue. <br />Do you really want to continue?" : "您的文件已经加密. 当您的密码重置后没有任何方式能恢复您的数据. <br />如果您不确定, 请在继续前联系您的管理员.<br/>您是否真的要继续?",
"I know what I'm doing" : "我知道我在做什么",
@@ -81,6 +82,7 @@
"No" : "否",
"Yes" : "是",
"No files in here" : "未找到文件",
+ "No more subfolders in here" : "没有更多的子文件夹",
"Choose" : "选择",
"Copy" : "复制",
"Move" : "移动",
@@ -110,9 +112,11 @@
"Strong password" : "强密码",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "您的网页服务器没有正确设置允许文件同步,因为 WebDAV 接口看起来无法正常工作。",
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "您的网页服务器未正确设置以解析“{url}”。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
+ "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP的安装似乎不正确,无法访问系统环境变量。getenv(\"PATH\")函数测试返回了一个空值。",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">installation documentation ↗</a> for PHP configuration notes and the PHP configuration of your server, especially when using php-fpm." : "请参照<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">安装说明文档 ↗</a>中的PHP配置说明查阅您服务器的PHP配置信息,特别是在使用php-fpm时。",
+ "Check the background job settings" : "请检查后台任务设置",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "此服务器没有可用的互联网连接:多个节点无法访问。这意味着某些功能比如挂载外部存储,更新通知以及安装第三方应用将无法工作。远程访问文件和发送通知邮件可能也不工作。启用这台服务器上的互联网连接以享用所有功能。",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "内存缓存未配置,为了提升使用体验,请尽量配置内存缓存。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 无法访问 /dev/urandom,出于安全原因这是强烈不推荐的。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "您当前正在运行 PHP 版本 {version}。我们建议您尽快在您的发行版支持新版本的时候进行升级,以获得<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">来自 PHP 官方的性能和安全</a>的提升。",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "您目前正在运行PHP 5.6。 Nextcloud的当前主要版本是最后一个支持PHP 5.6的版本。 建议将PHP版本升级到7.0以便能够升级到Nextcloud 14。",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "反向代理头部配置错误,或者您正在通过可信的代理访问 Nextcloud。如果您不是通过可信代理访问 Nextcloud,这是一个安全问题,它允许攻击者通过伪装 IP 地址访问 Nextcloud。更多信息请查看<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
@@ -121,12 +125,16 @@
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">For better performance it is recommended</a> to use the following settings in the <code>php.ini</code>:" : "PHP 的组件 OPcache 没有正确配置。 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">为了提供更好的性能</a>,我们建议在 <code>php.ini</code>中使用下列设置:",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "PHP函数“set_time_limit”不可用。 这可能会导致脚本在执行过程中暂停,从而导致安装中断。 我们强烈建议启用此功能。",
"Your PHP does not have FreeType support, resulting in breakage of profile pictures and the settings interface." : "您的 PHP 没有 FreeType 支持,导致配置文件图片和设置界面中断。",
+ "Missing index \"{indexName}\" in table \"{tableName}\"." : "在数据表 \"{tableName}\" 中无法找到索引 \"{indexName}\" .",
+ "The PHP memory limit is below the recommended value of 512MB." : "PHP内存限制低于建议值512MB.",
"Error occurred while checking server setup" : "检查服务器设置时出错",
- "Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或都你可以将数据目录移出 Web 服务器文档根目录。",
+ "Your data directory and files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "您的数据目录和文件可以从互联网直接访问。.htaccess 文件不起作用。强烈建议您配置 Web 服务器,以便数据目录不再可访问,或者你可以将数据目录移动到 Web 服务器文档根目录。",
"The \"{header}\" HTTP header is not set to \"{expected}\". This is a potential security or privacy risk, as it is recommended to adjust this setting accordingly." : "HTTP 请求头 \"{header}\" 没有配置为 \"{expected}\"。这是一个潜在的安全或隐私风险, 我们建议您调整这项设置.",
"The \"{header}\" HTTP header is not set to \"{expected}\". Some features might not work correctly, as it is recommended to adjust this setting accordingly." : "HTTP 请求头 \"{header}\" 没有配置为 \"{expected}\"。某些功能可能无法正常工作,因此建议相应地调整此设置。",
+ "The \"{header}\" HTTP header is not set to \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". This can leak referer information. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C Recommendation ↗</a>." : "HTTP的请求头 \"{header}\" 未设置为 \"{val1}\", \"{val2}\", \"{val3}\" or \"{val4}\". 这会导致信息泄露. 请查阅 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{link}\">W3C 建议↗</a>",
+ "The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>." : "HTTP的请求头 \"Strict-Transport-Security\" 未设置为至少 \"{seconds}\" 秒. 为了提高安全性,建议参照<a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips ↗</a>中的说明启用HSTS.",
"Shared" : "已共享",
- "Shared with" : "分享给",
+ "Shared with" : "共享给",
"Shared by" : "共享人",
"Choose a password for the public link" : "为公开链接设置密码",
"Choose a password for the public link or press the \"Enter\" key" : "为公开链接设置密码, 或按 \"回车\" 键",
@@ -149,6 +157,7 @@
"Expiration" : "过期",
"Expiration date" : "过期日期",
"Share link" : "分享链接",
+ "Enable" : "启用",
"Shared with you and the group {group} by {owner}" : "{owner} 分享给您及 {group} 分组",
"Shared with you and {circle} by {owner}" : "{owner} 共享给您及 {circle}",
"Shared with you and the conversation {conversation} by {owner}" : "{owner} 共享给您及对话 {conversation}",
@@ -157,6 +166,7 @@
"{{shareInitiatorDisplayName}} shared via link" : "{{shareInitiatorDisplayName}} 通过链接分享",
"group" : "群组",
"remote" : "外部",
+ "remote group" : "远程群组",
"email" : "邮件",
"shared by {sharer}" : "由 {sharer} 分享",
"Unshare" : "取消共享",
@@ -168,20 +178,20 @@
"Access control" : "访问控制",
"Could not unshare" : "无法共享",
"Error while sharing" : "共享时出错",
- "Share details could not be loaded for this item." : "无法加载这个项目的分享详情",
+ "Share details could not be loaded for this item." : "无法加载这个项目的分享详情.",
"_At least {count} character is needed for autocompletion_::_At least {count} characters are needed for autocompletion_" : ["{count}字符需要自动完成"],
- "This list is maybe truncated - please refine your search term to see more results." : "此列表可能会被截断 - 请缩短您的搜索词以查看更多结果",
+ "This list is maybe truncated - please refine your search term to see more results." : "此列表可能会被截断 - 请缩短您的搜索词以查看更多结果.",
"No users or groups found for {search}" : "{search} 条件下没有找到用户或用户组",
"No users found for {search}" : "没有找到 {search} 用户",
- "An error occurred (\"{message}\"). Please try again" : "发生错误 (\"{message}\")。请重试。",
- "An error occurred. Please try again" : "发生错误. 请重试.",
+ "An error occurred (\"{message}\"). Please try again" : "发生错误 (\"{message}\"). 请重试",
+ "An error occurred. Please try again" : "发生错误. 请重试",
"{sharee} (group)" : "{sharee} (分组)",
"{sharee} (remote)" : "{sharee} (外部)",
"{sharee} (email)" : "{sharee} (邮件)",
"{sharee} ({type}, {owner})" : "{share}({type},{owner})",
"Share" : "分享",
"Name or email address..." : "姓名或电子邮件地址...",
- "Name or federated cloud ID..." : "姓名或联合云 ID",
+ "Name or federated cloud ID..." : "姓名或联合云 ID...",
"Name, federated cloud ID or email address..." : "姓名, 联合云 ID 或电子邮件地址...",
"Name..." : "名称...",
"Error" : "错误",
@@ -204,8 +214,8 @@
"_download %n file_::_download %n files_" : ["下载 %n 个文件"],
"The update is in progress, leaving this page might interrupt the process in some environments." : "正在更新, 在某些环境下离开当前页面可能会中断.",
"Update to {version}" : "升级到 {version}",
- "An error occurred." : "发生错误",
- "Please reload the page." : "请重新加载页面",
+ "An error occurred." : "发生一个错误.",
+ "Please reload the page." : "请重新加载页面.",
"The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "更新不成功. 有关此问题的更多信息请<a href=\"{url}\">查看我们的论坛帖子</a>。",
"The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "升级成功. 请将此问题报告给 <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud 社区</a>.",
"Continue to Nextcloud" : "继续访问 Nextcloud",
@@ -236,7 +246,7 @@
"Line: %s" : "行: %s",
"Trace" : "追踪",
"Security warning" : "安全警告",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "因为 .htaccess 文件没有工作, 您的数据目录和文件可从互联网被访问. ",
+ "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "因为 .htaccess 文件没有工作, 您的数据目录和文件可从互联网被访问.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">documentation</a>." : "了解如何正确配置服务器,请参见 <a href=\"%s\" target=\"_blank\" rel=\"noreferrer noopener\">文档</a>.",
"Create an <strong>admin account</strong>" : "创建 <strong>管理员账号</strong>",
"Username" : "用户名",
@@ -257,7 +267,7 @@
"For larger installations we recommend to choose a different database backend." : "在更大的环境下, 我们建议选择一个不同的数据库后端.",
"Especially when using the desktop client for file syncing the use of SQLite is discouraged." : "特别当使用桌面客户端来同步文件时, 不鼓励使用 SQLite.",
"Finish setup" : "安装完成",
- "Finishing …" : "正在完成...",
+ "Finishing …" : "正在完成 …",
"Need help?" : "需要帮助?",
"See the documentation" : "查看文档",
"This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "对于正确的操作, 该应用需要使用 JavaScript. 请 {linkstart}启用 JavaScript{linkend}, 并重新加载页面.",
@@ -275,7 +285,8 @@
"Please try again or contact your administrator." : "请重试或联系您的管理员.",
"Username or email" : "用户名或邮箱",
"Log in" : "登录",
- "Wrong password." : "密码错误",
+ "Wrong password." : "密码错误.",
+ "User disabled" : "用户不可用",
"We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds." : "我们检测到您的 IP 进行了多次无效登录尝试。因此,请 30 秒之后再尝试。",
"Forgot password?" : "忘记密码?",
"Back to login" : "返回登录",
@@ -286,9 +297,11 @@
"Alternative log in using app token" : "使用应用程序令牌替代登录",
"Account access" : "账户访问",
"You are about to grant %s access to your %s account." : "你将分配 %s 访问权限给你的 %s 账户。",
- "Redirecting …" : "正在转向...",
+ "Redirecting …" : "正在跳转 …",
"New password" : "新密码",
"New Password" : "新密码",
+ "This share is password-protected" : "这个共享是被密码保护的",
+ "The password is wrong. Try again." : "密码错误.请重试.",
"Two-factor authentication" : "双重认证",
"Enhanced security is enabled for your account. Please authenticate using a second factor." : "您的帐户已启用增强安全性, 请使用第二因子验证.",
"Cancel log in" : "取消登录",
@@ -327,7 +340,7 @@
"Memcached is configured as distributed cache, but the wrong PHP module \"memcache\" is installed. \\OC\\Memcache\\Memcached only supports \"memcached\" and not \"memcache\". See the <a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki about both modules</a>." : "Memcached 当前配置为分布式缓存, 但是当前安装的 PHP 模块是 \"memcache\". \\OC\\Memcache\\Memcached 仅支持 \"memcached\" 而不是 \"memcache\". 点击<a target=\"_blank\" rel=\"noreferrer\" href=\"{wikiLink}\">memcached wiki</a>了解两者的不同.",
"Some files have not passed the integrity check. Further information on how to resolve this issue can be found in our <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">documentation</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">List of invalid files…</a> / <a href=\"{rescanEndpoint}\">Rescan…</a>)" : "一些文件没有通过完整性检查. 了解如何解决该问题请查看我们的<a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">文档</a>. (<a href=\"{codeIntegrityDownloadEndpoint}\">无效的文件列表…</a> / <a href=\"{rescanEndpoint}\">重新扫描…</a>)",
"The PHP OPcache is not properly configured. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">For better performance we recommend</a> to use following settings in the <code>php.ini</code>:" : "PHP 的组件 OPcache 没有正确配置. <a target=\"_blank\" rel=\"noreferrer\" href=\"{docLink}\">为了提供更好的性能</a>, 我们建议在<code>php.ini</code>文件中使用下列设置:",
- "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP的函数“set_time_limit\"是不可用的,这导致脚本在运行中被中止,暂停你的安装,我们强烈建议你开启这个函数",
+ "The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. We strongly recommend enabling this function." : "PHP的函数 “set_time_limit\" 是不可用的. 这导致脚本在运行中被中止,暂停你的安装,我们强烈建议你开启这个函数.",
"Your data directory and your files are probably accessible from the Internet. The .htaccess file is not working. It is strongly recommended that you configure your web server in a way that the data directory is no longer accessible or you move the data directory outside the web server document root." : "你的数据存储目录可以从互联网上直接访问。.htaccess文件没有生效,请配置你的网页服务器以避免数据存储目录可从外部访问或将数据存储目录转移到网页服务器根目录之外。",
"The \"{header}\" HTTP header is not configured to equal to \"{expected}\". This is a potential security or privacy risk and we recommend adjusting this setting." : "HTTP 请求头 \"{header}\" 没有配置为 \"{expected}\". 这是一个潜在的安全或隐私风险, 我们建议您调整这项设置.",
"The \"Strict-Transport-Security\" HTTP header is not configured to at least \"{seconds}\" seconds. For enhanced security we recommend enabling HSTS as described in our <a href=\"{docUrl}\" rel=\"noreferrer\">security tips</a>." : "HTTP 请求头 \"Strict-Transport-Security\" 没有配置为至少 “{seconds}” 秒. 出于增强安全性考虑, 我们推荐按照<a href=\"{docUrl}\" rel=\"noreferrer\">安全提示</a>中的说明启用 HSTS.",
@@ -337,7 +350,7 @@
"The public link will expire no later than {days} days after it is created" : "该共享链接将在创建后 {days} 天失效",
"Share with other people by entering a user or group, a federated cloud ID or an email address." : "通过输入用户或组,联合云ID或电子邮件地址与其他人分享。",
"Share with other people by entering a user or group or a federated cloud ID." : "通过输入用户或组或联合云ID与其他人共享。",
- "Share with other people by entering a user or group or an email address." : "输入用户/组织或邮箱地址来分享给其他人",
+ "Share with other people by entering a user or group or an email address." : "输入用户/组织或邮箱地址来分享给其他人.",
"The server encountered an internal error and was unable to complete your request." : "服务器发生一个内部错误并且无法完成你的请求.",
"Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report." : "如果多次出现这个错误, 请联系服务器管理员, 请把下面的技术细节包含在您的报告中.",
"For information how to properly configure your server, please see the <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">documentation</a>." : "了解如何正确配置服务器, 请参见 <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">文档</a>.",
@@ -352,6 +365,7 @@
"Depending on your configuration, as an administrator you might also be able to use the button below to trust this domain." : "基于您的配置, 作为系统管理员, 您还可以点击下面的按钮来信任该域名.",
"Add \"%s\" as trusted domain" : "添加 \"%s\" 为信任域名",
"For help, see the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">documentation</a>." : "获取更多帮助, 请查看 <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">文档</a>.",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 无法访问 /dev/urandom,出于安全原因这是强烈不推荐的。更多信息请参见<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">文档</a>。",
"Your PHP does not have freetype support. This will result in broken profile pictures and settings interface." : "您的 PHP 没有 FreeType 支持,导致配置文件图片和设置界面中断。",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP 请求头 \"Strict-Transport-Security\" 没有配置为至少 “{seconds}” 秒。出于增强安全性考虑,我们推荐按照 <a href=\"{docUrl}\" rel=\"noreferrer noopener\">安全提示</a>中的说明启用HSTS。",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "您正在通过 HTTP 访问该站点, 我们强烈建议您按照<a href=\"{docUrl}\">安全提示</a>中的说明配置服务器强制使用 HTTPS.",
diff --git a/core/l10n/zh_TW.js b/core/l10n/zh_TW.js
index 6a9c0018150..11d426e6a13 100644
--- a/core/l10n/zh_TW.js
+++ b/core/l10n/zh_TW.js
@@ -113,7 +113,6 @@ OC.L10N.register(
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "您的網頁伺服器設定不正確,因此無法解析 \"{url}\" ,請至<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>瞭解更多資訊。",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "伺服器沒有網際網路連線(無法與多個端點取得聯繫),有些功能,像是外部儲存、應用程式更新版通知將無法運作。從遠端存取資料或是寄送 email 通知可能也無法運作。建議您設定好網際網路連線以使用所有功能。",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "您沒有設定記憶體快取 (memcache),如果可以,請完成設定來提升效能。更多資訊請查閱<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 無法讀取 /dev/urandom,為保障安全,建議修正這個問題,進一步訊息可參考我們的<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>。",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "您目前正運行 PHP {version} ,我們建議您升級 PHP 到您的發行版所支援的最新版本,以獲得 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP 開發團隊提供的效能與安全性更新</a>。",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "您目前正運行 PHP 5.6 ,目前使用的 Nextcloud 將會是最後一個支援 PHP 5.6 的版本,建議您升級至 PHP 7.0 以上以使用 Nextcloud 14。",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "偵測到您的反向代理標頭設定不正確,但也有可能是因為您目前正透過信任的代理伺服器存取 Nextcloud。若您目前不是透過信任的代理伺服器存取 Nextcloud,這就是一個安全性問題,允許攻擊者對 Nextcloud 假冒 IP 位址。更多資訊請查閱<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>。",
@@ -333,6 +332,7 @@ OC.L10N.register(
"Alternative login using app token" : "透過應用程式憑證的方式登入",
"You are accessing the server from an untrusted domain." : "你正在從一個未信任的網域存取伺服器",
"Add \"%s\" as trusted domain" : "將 %s 加入到信任的網域",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 無法讀取 /dev/urandom,為保障安全,建議修正這個問題,進一步訊息可參考我們的<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>。",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP \"Strict-Transport-Security\" 標頭並未被設定持續至少 {seconds} 秒。為了提高安全性,我們在<a href=\"{docUrl}\" rel=\"noreferrer\">安全建議</a>中有詳述並建議啟用 HSTS。",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "正在透過不安全的 HTTP 存取站台,強烈建議您設定伺服器啟用 HTTPS ,更多資訊請查閱<a href=\"{docUrl}\">安全建議</a>。",
"Back to log in" : "回到登入頁面",
diff --git a/core/l10n/zh_TW.json b/core/l10n/zh_TW.json
index 66446877e93..29e6feeaddf 100644
--- a/core/l10n/zh_TW.json
+++ b/core/l10n/zh_TW.json
@@ -111,7 +111,6 @@
"Your web server is not properly set up to resolve \"{url}\". Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "您的網頁伺服器設定不正確,因此無法解析 \"{url}\" ,請至<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>瞭解更多資訊。",
"This server has no working Internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the Internet to enjoy all features." : "伺服器沒有網際網路連線(無法與多個端點取得聯繫),有些功能,像是外部儲存、應用程式更新版通知將無法運作。從遠端存取資料或是寄送 email 通知可能也無法運作。建議您設定好網際網路連線以使用所有功能。",
"No memory cache has been configured. To enhance performance, please configure a memcache, if available. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "您沒有設定記憶體快取 (memcache),如果可以,請完成設定來提升效能。更多資訊請查閱<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>",
- "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 無法讀取 /dev/urandom,為保障安全,建議修正這個問題,進一步訊息可參考我們的<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>。",
"You are currently running PHP {version}. Upgrade your PHP version to take advantage of <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">performance and security updates provided by the PHP Group</a> as soon as your distribution supports it." : "您目前正運行 PHP {version} ,我們建議您升級 PHP 到您的發行版所支援的最新版本,以獲得 <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{phpLink}\">PHP 開發團隊提供的效能與安全性更新</a>。",
"You are currently running PHP 5.6. The current major version of Nextcloud is the last that is supported on PHP 5.6. It is recommended to upgrade the PHP version to 7.0+ to be able to upgrade to Nextcloud 14." : "您目前正運行 PHP 5.6 ,目前使用的 Nextcloud 將會是最後一個支援 PHP 5.6 的版本,建議您升級至 PHP 7.0 以上以使用 Nextcloud 14。",
"The reverse proxy header configuration is incorrect, or you are accessing Nextcloud from a trusted proxy. If not, this is a security issue and can allow an attacker to spoof their IP address as visible to the Nextcloud. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "偵測到您的反向代理標頭設定不正確,但也有可能是因為您目前正透過信任的代理伺服器存取 Nextcloud。若您目前不是透過信任的代理伺服器存取 Nextcloud,這就是一個安全性問題,允許攻擊者對 Nextcloud 假冒 IP 位址。更多資訊請查閱<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>。",
@@ -331,6 +330,7 @@
"Alternative login using app token" : "透過應用程式憑證的方式登入",
"You are accessing the server from an untrusted domain." : "你正在從一個未信任的網域存取伺服器",
"Add \"%s\" as trusted domain" : "將 %s 加入到信任的網域",
+ "/dev/urandom is not readable by PHP which is highly discouraged for security reasons. Further information can be found in the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">documentation</a>." : "PHP 無法讀取 /dev/urandom,為保障安全,建議修正這個問題,進一步訊息可參考我們的<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"{docLink}\">說明文件</a>。",
"The \"Strict-Transport-Security\" HTTP header is not set to at least \"{seconds}\" seconds. For enhanced security, it is recommended to enable HSTS as described in the <a href=\"{docUrl}\" rel=\"noreferrer noopener\">security tips</a>." : "HTTP \"Strict-Transport-Security\" 標頭並未被設定持續至少 {seconds} 秒。為了提高安全性,我們在<a href=\"{docUrl}\" rel=\"noreferrer\">安全建議</a>中有詳述並建議啟用 HSTS。",
"Accessing site insecurely via HTTP. You are strongly adviced to set up your server to require HTTPS instead, as described in the <a href=\"{docUrl}\">security tips</a>." : "正在透過不安全的 HTTP 存取站台,強烈建議您設定伺服器啟用 HTTPS ,更多資訊請查閱<a href=\"{docUrl}\">安全建議</a>。",
"Back to log in" : "回到登入頁面",
diff --git a/core/register_command.php b/core/register_command.php
index 744ee23e16b..ed0220e7055 100644
--- a/core/register_command.php
+++ b/core/register_command.php
@@ -66,12 +66,9 @@ if (\OC::$server->getConfig()->getSystemValue('installed', false)) {
$application->add(new OC\Core\Command\App\GetPath());
$application->add(new OC\Core\Command\App\ListApps(\OC::$server->getAppManager()));
- $application->add(new OC\Core\Command\TwoFactorAuth\Enable(
- \OC::$server->getTwoFactorAuthManager(), \OC::$server->getUserManager()
- ));
- $application->add(new OC\Core\Command\TwoFactorAuth\Disable(
- \OC::$server->getTwoFactorAuthManager(), \OC::$server->getUserManager()
- ));
+ $application->add(\OC::$server->query(\OC\Core\Command\TwoFactorAuth\Cleanup::class));
+ $application->add(\OC::$server->query(\OC\Core\Command\TwoFactorAuth\Enable::class));
+ $application->add(\OC::$server->query(\OC\Core\Command\TwoFactorAuth\Disable::class));
$application->add(\OC::$server->query(\OC\Core\Command\TwoFactorAuth\State::class));
$application->add(new OC\Core\Command\Background\Cron(\OC::$server->getConfig()));
diff --git a/lib/base.php b/lib/base.php
index 23b9adde86a..762646fa4c1 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -895,8 +895,6 @@ class OC {
self::$loader->setMemoryCache($memcacheFactory->createLocal('Autoloader'));
} catch (\Exception $ex) {
}
-
- self::$composerAutoloader->setApcuPrefix($instanceId . '-mainComposer');
}
}
diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php
index 75a3c3d3cd6..0379b767755 100644
--- a/lib/composer/composer/autoload_classmap.php
+++ b/lib/composer/composer/autoload_classmap.php
@@ -69,6 +69,8 @@ return array(
'OCP\\Authentication\\IApacheBackend' => $baseDir . '/lib/public/Authentication/IApacheBackend.php',
'OCP\\Authentication\\LoginCredentials\\ICredentials' => $baseDir . '/lib/public/Authentication/LoginCredentials/ICredentials.php',
'OCP\\Authentication\\LoginCredentials\\IStore' => $baseDir . '/lib/public/Authentication/LoginCredentials/IStore.php',
+ 'OCP\\Authentication\\TwoFactorAuth\\IActivatableByAdmin' => $baseDir . '/lib/public/Authentication/TwoFactorAuth/IActivatableByAdmin.php',
+ 'OCP\\Authentication\\TwoFactorAuth\\IDeactivatableByAdmin' => $baseDir . '/lib/public/Authentication/TwoFactorAuth/IDeactivatableByAdmin.php',
'OCP\\Authentication\\TwoFactorAuth\\IProvider' => $baseDir . '/lib/public/Authentication/TwoFactorAuth/IProvider.php',
'OCP\\Authentication\\TwoFactorAuth\\IProvidesCustomCSP' => $baseDir . '/lib/public/Authentication/TwoFactorAuth/IProvidesCustomCSP.php',
'OCP\\Authentication\\TwoFactorAuth\\IRegistry' => $baseDir . '/lib/public/Authentication/TwoFactorAuth/IRegistry.php',
@@ -432,6 +434,7 @@ return array(
'OC\\Archive\\Archive' => $baseDir . '/lib/private/Archive/Archive.php',
'OC\\Archive\\TAR' => $baseDir . '/lib/private/Archive/TAR.php',
'OC\\Archive\\ZIP' => $baseDir . '/lib/private/Archive/ZIP.php',
+ 'OC\\Authentication\\Exceptions\\InvalidProviderException' => $baseDir . '/lib/private/Authentication/Exceptions/InvalidProviderException.php',
'OC\\Authentication\\Exceptions\\InvalidTokenException' => $baseDir . '/lib/private/Authentication/Exceptions/InvalidTokenException.php',
'OC\\Authentication\\Exceptions\\LoginRequiredException' => $baseDir . '/lib/private/Authentication/Exceptions/LoginRequiredException.php',
'OC\\Authentication\\Exceptions\\PasswordLoginForbiddenException' => $baseDir . '/lib/private/Authentication/Exceptions/PasswordLoginForbiddenException.php',
@@ -454,6 +457,7 @@ return array(
'OC\\Authentication\\TwoFactorAuth\\Db\\ProviderUserAssignmentDao' => $baseDir . '/lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php',
'OC\\Authentication\\TwoFactorAuth\\Manager' => $baseDir . '/lib/private/Authentication/TwoFactorAuth/Manager.php',
'OC\\Authentication\\TwoFactorAuth\\ProviderLoader' => $baseDir . '/lib/private/Authentication/TwoFactorAuth/ProviderLoader.php',
+ 'OC\\Authentication\\TwoFactorAuth\\ProviderManager' => $baseDir . '/lib/private/Authentication/TwoFactorAuth/ProviderManager.php',
'OC\\Authentication\\TwoFactorAuth\\ProviderSet' => $baseDir . '/lib/private/Authentication/TwoFactorAuth/ProviderSet.php',
'OC\\Authentication\\TwoFactorAuth\\Registry' => $baseDir . '/lib/private/Authentication/TwoFactorAuth/Registry.php',
'OC\\Avatar' => $baseDir . '/lib/private/Avatar.php',
@@ -569,6 +573,7 @@ return array(
'OC\\Core\\Command\\Security\\RemoveCertificate' => $baseDir . '/core/Command/Security/RemoveCertificate.php',
'OC\\Core\\Command\\Status' => $baseDir . '/core/Command/Status.php',
'OC\\Core\\Command\\TwoFactorAuth\\Base' => $baseDir . '/core/Command/TwoFactorAuth/Base.php',
+ 'OC\\Core\\Command\\TwoFactorAuth\\Cleanup' => $baseDir . '/core/Command/TwoFactorAuth/Cleanup.php',
'OC\\Core\\Command\\TwoFactorAuth\\Disable' => $baseDir . '/core/Command/TwoFactorAuth/Disable.php',
'OC\\Core\\Command\\TwoFactorAuth\\Enable' => $baseDir . '/core/Command/TwoFactorAuth/Enable.php',
'OC\\Core\\Command\\TwoFactorAuth\\State' => $baseDir . '/core/Command/TwoFactorAuth/State.php',
diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php
index 990bff668e4..0456e784427 100644
--- a/lib/composer/composer/autoload_static.php
+++ b/lib/composer/composer/autoload_static.php
@@ -99,6 +99,8 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
'OCP\\Authentication\\IApacheBackend' => __DIR__ . '/../../..' . '/lib/public/Authentication/IApacheBackend.php',
'OCP\\Authentication\\LoginCredentials\\ICredentials' => __DIR__ . '/../../..' . '/lib/public/Authentication/LoginCredentials/ICredentials.php',
'OCP\\Authentication\\LoginCredentials\\IStore' => __DIR__ . '/../../..' . '/lib/public/Authentication/LoginCredentials/IStore.php',
+ 'OCP\\Authentication\\TwoFactorAuth\\IActivatableByAdmin' => __DIR__ . '/../../..' . '/lib/public/Authentication/TwoFactorAuth/IActivatableByAdmin.php',
+ 'OCP\\Authentication\\TwoFactorAuth\\IDeactivatableByAdmin' => __DIR__ . '/../../..' . '/lib/public/Authentication/TwoFactorAuth/IDeactivatableByAdmin.php',
'OCP\\Authentication\\TwoFactorAuth\\IProvider' => __DIR__ . '/../../..' . '/lib/public/Authentication/TwoFactorAuth/IProvider.php',
'OCP\\Authentication\\TwoFactorAuth\\IProvidesCustomCSP' => __DIR__ . '/../../..' . '/lib/public/Authentication/TwoFactorAuth/IProvidesCustomCSP.php',
'OCP\\Authentication\\TwoFactorAuth\\IRegistry' => __DIR__ . '/../../..' . '/lib/public/Authentication/TwoFactorAuth/IRegistry.php',
@@ -462,6 +464,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
'OC\\Archive\\Archive' => __DIR__ . '/../../..' . '/lib/private/Archive/Archive.php',
'OC\\Archive\\TAR' => __DIR__ . '/../../..' . '/lib/private/Archive/TAR.php',
'OC\\Archive\\ZIP' => __DIR__ . '/../../..' . '/lib/private/Archive/ZIP.php',
+ 'OC\\Authentication\\Exceptions\\InvalidProviderException' => __DIR__ . '/../../..' . '/lib/private/Authentication/Exceptions/InvalidProviderException.php',
'OC\\Authentication\\Exceptions\\InvalidTokenException' => __DIR__ . '/../../..' . '/lib/private/Authentication/Exceptions/InvalidTokenException.php',
'OC\\Authentication\\Exceptions\\LoginRequiredException' => __DIR__ . '/../../..' . '/lib/private/Authentication/Exceptions/LoginRequiredException.php',
'OC\\Authentication\\Exceptions\\PasswordLoginForbiddenException' => __DIR__ . '/../../..' . '/lib/private/Authentication/Exceptions/PasswordLoginForbiddenException.php',
@@ -484,6 +487,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
'OC\\Authentication\\TwoFactorAuth\\Db\\ProviderUserAssignmentDao' => __DIR__ . '/../../..' . '/lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php',
'OC\\Authentication\\TwoFactorAuth\\Manager' => __DIR__ . '/../../..' . '/lib/private/Authentication/TwoFactorAuth/Manager.php',
'OC\\Authentication\\TwoFactorAuth\\ProviderLoader' => __DIR__ . '/../../..' . '/lib/private/Authentication/TwoFactorAuth/ProviderLoader.php',
+ 'OC\\Authentication\\TwoFactorAuth\\ProviderManager' => __DIR__ . '/../../..' . '/lib/private/Authentication/TwoFactorAuth/ProviderManager.php',
'OC\\Authentication\\TwoFactorAuth\\ProviderSet' => __DIR__ . '/../../..' . '/lib/private/Authentication/TwoFactorAuth/ProviderSet.php',
'OC\\Authentication\\TwoFactorAuth\\Registry' => __DIR__ . '/../../..' . '/lib/private/Authentication/TwoFactorAuth/Registry.php',
'OC\\Avatar' => __DIR__ . '/../../..' . '/lib/private/Avatar.php',
@@ -599,6 +603,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
'OC\\Core\\Command\\Security\\RemoveCertificate' => __DIR__ . '/../../..' . '/core/Command/Security/RemoveCertificate.php',
'OC\\Core\\Command\\Status' => __DIR__ . '/../../..' . '/core/Command/Status.php',
'OC\\Core\\Command\\TwoFactorAuth\\Base' => __DIR__ . '/../../..' . '/core/Command/TwoFactorAuth/Base.php',
+ 'OC\\Core\\Command\\TwoFactorAuth\\Cleanup' => __DIR__ . '/../../..' . '/core/Command/TwoFactorAuth/Cleanup.php',
'OC\\Core\\Command\\TwoFactorAuth\\Disable' => __DIR__ . '/../../..' . '/core/Command/TwoFactorAuth/Disable.php',
'OC\\Core\\Command\\TwoFactorAuth\\Enable' => __DIR__ . '/../../..' . '/core/Command/TwoFactorAuth/Enable.php',
'OC\\Core\\Command\\TwoFactorAuth\\State' => __DIR__ . '/../../..' . '/core/Command/TwoFactorAuth/State.php',
diff --git a/lib/l10n/bg.js b/lib/l10n/bg.js
index 18c8af414e4..d65fefbbfaa 100644
--- a/lib/l10n/bg.js
+++ b/lib/l10n/bg.js
@@ -33,12 +33,17 @@ OC.L10N.register(
"File name contains at least one invalid character" : "Името на файла съдържа поне един невалиден символ",
"File name is too long" : "Името на файла е твърде дълго",
"__language_name__" : "Български",
+ "This is an automatically sent email, please do not reply." : "Имейлът е генериран автоматично, моля не отговаряйте.",
"Help" : "Помощ",
"Apps" : "Приложения",
+ "Settings" : "Настройки",
+ "Log out" : "Отписване",
"Users" : "Потребители",
"Unknown user" : "Непознат потребител",
"Sharing" : "Споделяне",
+ "Security" : "Сигурност",
"Additional settings" : "Допълнителни настройки",
+ "Personal info" : "Лични данни",
"%s enter the database username and name." : "%s въведете потребителско име и име за базата данни",
"%s enter the database username." : "%s въведете потребител за базата данни.",
"%s enter the database name." : "%s въведи име на базата данни.",
@@ -63,16 +68,17 @@ OC.L10N.register(
"Sharing %s failed, because sharing with links is not allowed" : "Неуспешно споделяне на %s, защото споделянето посредством връзки не е разрешено.",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Неуспешно споделяне на на %s, не може бъде намерено %s. Може би сървъра в момента е недостъпен.",
"Share type %s is not valid for %s" : "Споделянето на тип %s не валидно за %s.",
- "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Неуспешно задаване на дата на изтичане. Споделни папки или файлове не могат да изтичат по-късно от %s след като са били споделени",
- "Cannot set expiration date. Expiration date is in the past" : "Неуспешно задаване на дата на изтичане. Датата на изтичане е в миналото",
+ "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Неуспешно задаване на срок на валидност. Споделянията не могат да изтичат по-късно от %s след като са били споделени",
+ "Cannot set expiration date. Expiration date is in the past" : "Неуспешно задаване на срок на валидност. Датата на изтичане е в миналото",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Споделянето на сървърния %s трябва да поддържа OCP\\Share_Backend интерфейс.",
"Sharing backend %s not found" : "Споделянето на сървърния %s не е открито.",
"Sharing backend for %s not found" : "Споделянето на сървъра за %s не е открито.",
"Sharing %s failed, because the permissions exceed permissions granted to %s" : "Неуспешно споделяне на %s, защото промените надвишават правата на достъп дадени на %s.",
- "Sharing %s failed, because resharing is not allowed" : "Неуспешно споделяне на %s, защото повторно споделяне не е разрешено.",
+ "Sharing %s failed, because resharing is not allowed" : "Неуспешно споделяне на %s, защото повторното споделяне е забранено",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Неуспешно споделяне на %s, защото не е открит първоизточникът на %s, за да бъде споделяне по сървъра.",
"Sharing %s failed, because the file could not be found in the file cache" : "Неуспешно споделяне на %s, защото файлът не може да бъде намерен в кеша.",
- "%s shared »%s« with you" : "%s сподели »%s« с теб",
+ "Can’t set expiration date more than %s days in the future" : "Неуспешно задаване на срок на валидност повече от %s дни в бъдещето",
+ "%s shared »%s« with you" : "%s сподели »%s« с вас",
"%s via %s" : "%s чрез %s",
"Could not find category \"%s\"" : "Невъзможно откриване на категорията \"%s\".",
"Sunday" : "неделя",
@@ -144,6 +150,7 @@ OC.L10N.register(
"Please change the permissions to 0770 so that the directory cannot be listed by other users." : "Моля, променете правата за достъп на 0770, за да не може директорията да бъде видяна от други потребители.",
"Could not obtain lock type %d on \"%s\"." : "Неуспешен опит за ексклузивен достъп от типa %d върху \"%s\".",
"APCu" : "APCu",
- "Redis" : "Redis"
+ "Redis" : "Redis",
+ "Cannot set expiration date more than %s days in the future" : "Неуспешно задаване на срок на валидност повече от %s дни в бъдещето"
},
"nplurals=2; plural=(n != 1);");
diff --git a/lib/l10n/bg.json b/lib/l10n/bg.json
index 1a0feea7c23..36f7bbd907c 100644
--- a/lib/l10n/bg.json
+++ b/lib/l10n/bg.json
@@ -31,12 +31,17 @@
"File name contains at least one invalid character" : "Името на файла съдържа поне един невалиден символ",
"File name is too long" : "Името на файла е твърде дълго",
"__language_name__" : "Български",
+ "This is an automatically sent email, please do not reply." : "Имейлът е генериран автоматично, моля не отговаряйте.",
"Help" : "Помощ",
"Apps" : "Приложения",
+ "Settings" : "Настройки",
+ "Log out" : "Отписване",
"Users" : "Потребители",
"Unknown user" : "Непознат потребител",
"Sharing" : "Споделяне",
+ "Security" : "Сигурност",
"Additional settings" : "Допълнителни настройки",
+ "Personal info" : "Лични данни",
"%s enter the database username and name." : "%s въведете потребителско име и име за базата данни",
"%s enter the database username." : "%s въведете потребител за базата данни.",
"%s enter the database name." : "%s въведи име на базата данни.",
@@ -61,16 +66,17 @@
"Sharing %s failed, because sharing with links is not allowed" : "Неуспешно споделяне на %s, защото споделянето посредством връзки не е разрешено.",
"Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Неуспешно споделяне на на %s, не може бъде намерено %s. Може би сървъра в момента е недостъпен.",
"Share type %s is not valid for %s" : "Споделянето на тип %s не валидно за %s.",
- "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Неуспешно задаване на дата на изтичане. Споделни папки или файлове не могат да изтичат по-късно от %s след като са били споделени",
- "Cannot set expiration date. Expiration date is in the past" : "Неуспешно задаване на дата на изтичане. Датата на изтичане е в миналото",
+ "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Неуспешно задаване на срок на валидност. Споделянията не могат да изтичат по-късно от %s след като са били споделени",
+ "Cannot set expiration date. Expiration date is in the past" : "Неуспешно задаване на срок на валидност. Датата на изтичане е в миналото",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Споделянето на сървърния %s трябва да поддържа OCP\\Share_Backend интерфейс.",
"Sharing backend %s not found" : "Споделянето на сървърния %s не е открито.",
"Sharing backend for %s not found" : "Споделянето на сървъра за %s не е открито.",
"Sharing %s failed, because the permissions exceed permissions granted to %s" : "Неуспешно споделяне на %s, защото промените надвишават правата на достъп дадени на %s.",
- "Sharing %s failed, because resharing is not allowed" : "Неуспешно споделяне на %s, защото повторно споделяне не е разрешено.",
+ "Sharing %s failed, because resharing is not allowed" : "Неуспешно споделяне на %s, защото повторното споделяне е забранено",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Неуспешно споделяне на %s, защото не е открит първоизточникът на %s, за да бъде споделяне по сървъра.",
"Sharing %s failed, because the file could not be found in the file cache" : "Неуспешно споделяне на %s, защото файлът не може да бъде намерен в кеша.",
- "%s shared »%s« with you" : "%s сподели »%s« с теб",
+ "Can’t set expiration date more than %s days in the future" : "Неуспешно задаване на срок на валидност повече от %s дни в бъдещето",
+ "%s shared »%s« with you" : "%s сподели »%s« с вас",
"%s via %s" : "%s чрез %s",
"Could not find category \"%s\"" : "Невъзможно откриване на категорията \"%s\".",
"Sunday" : "неделя",
@@ -142,6 +148,7 @@
"Please change the permissions to 0770 so that the directory cannot be listed by other users." : "Моля, променете правата за достъп на 0770, за да не може директорията да бъде видяна от други потребители.",
"Could not obtain lock type %d on \"%s\"." : "Неуспешен опит за ексклузивен достъп от типa %d върху \"%s\".",
"APCu" : "APCu",
- "Redis" : "Redis"
+ "Redis" : "Redis",
+ "Cannot set expiration date more than %s days in the future" : "Неуспешно задаване на срок на валидност повече от %s дни в бъдещето"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/lib/l10n/cs.js b/lib/l10n/cs.js
index d3207b690f0..6d48a284c2c 100644
--- a/lib/l10n/cs.js
+++ b/lib/l10n/cs.js
@@ -1,18 +1,20 @@
OC.L10N.register(
"lib",
{
- "Cannot write into \"config\" directory!" : "Nelze zapisovat do složky „config“!",
- "This can usually be fixed by giving the webserver write access to the config directory" : "To lze obvykle vyřešit povolením zápisu webovému serveru do konfiguračního adresáře",
+ "Cannot write into \"config\" directory!" : "Nedaří se zapisovat do adresáře „config“!",
+ "This can usually be fixed by giving the webserver write access to the config directory" : "Toto obvykle lze vyřešit udělením oprávnění k zápisu do adresáře s nastaveními pro účet, pod kterým je provozován webový server",
"See %s" : "Viz %s",
- "This can usually be fixed by giving the webserver write access to the config directory. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do konfiguračního adresáře. Viz %s",
- "The files of the app %$1s were not replaced correctly. Make sure it is a version compatible with the server." : "Soubory aplikace %$1s nebyly řádně nahrazeny. Ujistěte se, že je to verze kompatibilní se serverem.",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Nebo, pokud chcete mít soubor config.php pouze pro čtení, nastavte v něm volbu „config_is_read_only“ na hodnotu true.",
+ "This can usually be fixed by giving the webserver write access to the config directory. See %s" : "Toto obvykle lze vyřešit udělením oprávnění k zápisu do kořenové složky webu pro účet, pod kterým je provozován webový server. Viz %s",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it. See %s" : "Nebo, pokud chcete mít soubor config.php pouze pro čtení, nastavte v něm volbu „config_is_read_only“ na hodnotu true. Viz %s",
+ "The files of the app %$1s were not replaced correctly. Make sure it is a version compatible with the server." : "Soubory aplikace %$1s nebyly řádně nahrazeny. Ověřte, že je to verze kompatibilní se serverem.",
"Sample configuration detected" : "Bylo zjištěno setrvání u předváděcího nastavení",
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "Pravděpodobně byla zkopírována konfigurační nastavení ze vzorových souborů. Toto není podporováno a může poškodit vaši instalaci. Nahlédněte prosím do dokumentace před prováděním změn v souboru config.php",
"%1$s and %2$s" : "%1$s a %2$s",
"%1$s, %2$s and %3$s" : "%1$s, %2$s a %3$s",
"%1$s, %2$s, %3$s and %4$s" : "%1$s, %2$s, %3$s a %4$s",
"%1$s, %2$s, %3$s, %4$s and %5$s" : "%1$s, %2$s, %3$s, %4$s a %5$s",
- "Education Edition" : "Edice pro výuku",
+ "Education Edition" : "Vydání pro vzdělávací instituce",
"Enterprise bundle" : "Enterprise balíček",
"Groupware bundle" : "Balíček groupware",
"Social sharing bundle" : "Balíček sociálního sdílení",
@@ -51,15 +53,15 @@ OC.L10N.register(
"in a few seconds" : "během několika sekund",
"seconds ago" : "před pár sekundami",
"Module with ID: %s does not exist. Please enable it in your apps settings or contact your administrator." : "Modul s ID: %s neexistuje. Povolte ho v nastavení aplikací, nebo kontaktujte vašeho administrátora.",
- "File name is a reserved word" : "Jméno souboru je rezervované slovo",
- "File name contains at least one invalid character" : "Jméno souboru obsahuje nejméně jeden neplatný znak",
- "File name is too long" : "Jméno souboru je moc dlouhé",
- "Dot files are not allowed" : "Jména souborů začínající tečkou nejsou povolena",
- "Empty filename is not allowed" : "Prázdné jméno souboru není povoleno",
- "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikace \"%s\" nemůže být nainstalována protože soubor appinfo nelze přečíst.",
- "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikaci \"%s\" nelze nainstalovat, protože není kompatibilní s touto verzí serveru.",
+ "File name is a reserved word" : "Název souboru je rezervované slovo",
+ "File name contains at least one invalid character" : "Název souboru obsahuje nejméně jeden neplatný znak",
+ "File name is too long" : "Název souboru je příliš dlouhý",
+ "Dot files are not allowed" : "Názvy souborů, začínající na tečku nejsou povolené",
+ "Empty filename is not allowed" : "Je třeba vyplnit název souboru",
+ "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikace „%s“ nemůže být nainstalována protože soubor appinfo nelze přečíst.",
+ "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikaci „%s“ nelze nainstalovat, protože není kompatibilní s touto verzí serveru.",
"__language_name__" : "Česky",
- "This is an automatically sent email, please do not reply." : "Toto je automaticky odesílaný e-mail, prosím, neodpovídejte.",
+ "This is an automatically sent email, please do not reply." : "Toto je automaticky odesílaný e-mail, neodpovídejte na něj.",
"Help" : "Nápověda",
"Apps" : "Aplikace",
"Settings" : "Nastavení",
@@ -79,16 +81,16 @@ OC.L10N.register(
"Personal info" : "Osobní informace",
"Mobile & desktop" : "Mobilní a desktop",
"Unlimited" : "Neomezeně",
- "Verifying" : "Ověření",
+ "Verifying" : "Ověřuje se",
"Verifying …" : "Ověřování…",
"Verify" : "Ověřit",
- "%s enter the database username and name." : "%s zadejte uživatelské jméno a jméno do databáze.",
+ "%s enter the database username and name." : "%s zadejte databázové uživatelské jméno a jméno.",
"%s enter the database username." : "Zadejte uživatelské jméno %s databáze.",
"%s enter the database name." : "Zadejte název databáze pro %s databáze.",
"%s you may not use dots in the database name" : "V názvu databáze %s není možné používat tečky.",
"Oracle connection could not be established" : "Spojení s Oracle nemohlo být navázáno",
- "Oracle username and/or password not valid" : "Uživatelské jméno či heslo Oracle není platné",
- "PostgreSQL username and/or password not valid" : "Uživatelské jméno či heslo PostgreSQL není platné",
+ "Oracle username and/or password not valid" : "Uživatelské jméno nebo heslo do Oracle není platné",
+ "PostgreSQL username and/or password not valid" : "Uživatelské jméno nebo heslo do PostgreSQL není platné",
"You need to enter details of an existing account." : "Je třeba zadat podrobnosti existujícího účtu.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X není podporován a %s nebude na této platformě správně fungovat. Používejte pouze na vlastní nebezpečí!",
"For the best results, please consider using a GNU/Linux server instead." : "Místo toho zvažte pro nejlepší funkčnost použití GNU/Linux serveru.",
@@ -96,42 +98,45 @@ OC.L10N.register(
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Odstraňte z php.ini nastavení volby open_basedir nebo přejděte na 64-bitové PHP.",
"Set an admin username." : "Zadejte uživatelské jméno správce.",
"Set an admin password." : "Zadejte heslo správce.",
- "Can't create or write into the data directory %s" : "Nelze vytvořit nebo zapisovat do datového adresáře %s",
+ "Can't create or write into the data directory %s" : "Nedaří se vytvořit nebo zapisovat do datového adresáře %s",
"Invalid Federated Cloud ID" : "Neplatné sdružené cloud ID",
- "Sharing %s failed, because the backend does not allow shares from type %i" : "Sdílení %s selhalo, podpůrná vrstva nepodporuje typ sdílení %i",
- "Sharing %s failed, because the file does not exist" : "Sdílení %s selhalo, protože soubor neexistuje",
+ "Sharing %s failed, because the backend does not allow shares from type %i" : "Sdílení %s se nezdařilo, podpůrná vrstva nepodporuje typ sdílení %i",
+ "Sharing %s failed, because the file does not exist" : "Sdílení %s se nezdařilo, protože soubor neexistuje",
"You are not allowed to share %s" : "Nemáte povoleno sdílet %s",
- "Sharing %s failed, because you can not share with yourself" : "Sdílení %s selhalo, protože nemůžete sdílet sami se sebou",
+ "Sharing %s failed, because you can not share with yourself" : "Sdílení %s se nezdařilo, protože nemůžete sdílet sami se sebou",
"Sharing %s failed, because the user %s does not exist" : "Sdílení položky %s se nezdařilo, protože uživatel %s neexistuje",
- "Sharing %s failed, because the user %s is not a member of any groups that %s is a member of" : "Sdílení položky %s selhalo, protože uživatel %s není členem žádné skupiny společné s uživatelem %s",
- "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s selhalo, protože položka již je s uživatelem %s sdílena",
- "Sharing %s failed, because this item is already shared with user %s" : "Sdílení položky %s selhalo, protože ta je již s uživatelem %s sdílena",
- "Sharing %s failed, because the group %s does not exist" : "Sdílení položky %s selhalo, protože skupina %s neexistuje",
- "Sharing %s failed, because %s is not a member of the group %s" : "Sdílení položky %s selhalo, protože uživatel %s není členem skupiny %s",
+ "Sharing %s failed, because the user %s is not a member of any groups that %s is a member of" : "Sdílení položky %s se nezdařilo, protože uživatel %s není členem žádné skupiny společné s uživatelem %s",
+ "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s se nezdařilo, protože položka už je s uživatelem %s sdílena",
+ "Sharing %s failed, because this item is already shared with user %s" : "Sdílení položky %s se nezdařilo, protože ta je už s uživatelem %s sdílena",
+ "Sharing %s failed, because the group %s does not exist" : "Sdílení položky %s se nezdařilo, protože skupina %s neexistuje",
+ "Sharing %s failed, because %s is not a member of the group %s" : "Sdílení položky %s se nezdařilo, protože uživatel %s není členem skupiny %s",
"You need to provide a password to create a public link, only protected links are allowed" : "Pro vytvoření veřejného odkazu je nutné zadat heslo, jsou povoleny pouze chráněné odkazy",
- "Sharing %s failed, because sharing with links is not allowed" : "Sdílení položky %s selhalo, protože sdílení pomocí linků není povoleno",
+ "Sharing %s failed, because sharing with links is not allowed" : "Sdílení položky %s se nezdařilo, protože sdílení pomocí odkazů není povoleno",
"Not allowed to create a federated share with the same user" : "Není povoleno vytvořit propojené sdílení s tím samým uživatelem",
- "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Sdílení %s selhalo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný.",
+ "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Sdílení %s se nezdařilo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný.",
"Share type %s is not valid for %s" : "Sdílení typu %s není korektní pro %s",
- "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Nelze nastavit datum vypršení platnosti. Sdílení nemůže vypršet později než za %s po zveřejnění",
- "Cannot set expiration date. Expiration date is in the past" : "Nelze nastavit datum vypršení platnosti. Datum vypršení je v minulosti",
+ "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Nedaří se nastavit datum skončení platnosti. Sdílení nemůže vypršet později než za %s po zveřejnění",
+ "Cannot set expiration date. Expiration date is in the past" : "Takové datum skončení platnosti nelze nastavit – je třeba, aby bylo v budoucnosti a ne minulosti…",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Úložiště pro sdílení %s musí implementovat rozhraní OCP\\Share_Backend",
"Sharing backend %s not found" : "Úložiště sdílení %s nenalezeno",
"Sharing backend for %s not found" : "Úložiště sdílení pro %s nenalezeno",
- "Sharing failed, because the user %s is the original sharer" : "Sdílení položky selhalo, protože uživatel %s je originálním vlastníkem",
- "Sharing %s failed, because the permissions exceed permissions granted to %s" : "Sdílení položky %s selhalo, protože jsou k tomu nutná vyšší oprávnění, než jaká byla %s povolena.",
- "Sharing %s failed, because resharing is not allowed" : "Sdílení položky %s selhalo, protože znovu-sdílení není povoleno",
+ "Sharing failed, because the user %s is the original sharer" : "Sdílení položky se nezdařilo, protože uživatel %s je původním vlastníkem",
+ "Sharing %s failed, because the permissions exceed permissions granted to %s" : "Sdílení položky %s se nezdařilo, protože jsou k tomu nutná vyšší oprávnění, než jaká byla %s povolena.",
+ "Sharing %s failed, because resharing is not allowed" : "Sdílení položky %s se nezdařilo, protože znovu-sdílení není povoleno",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Sdílení položky %s selhalo, protože úložiště sdílení %s nenalezla zdroj",
"Sharing %s failed, because the file could not be found in the file cache" : "Sdílení položky %s selhalo, protože soubor nebyl nalezen ve vyrovnávací paměti",
- "Open »%s«" : "Otevřít »%s«",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s vám nasdílel(a) „%2$s“ a chce přidat:",
+ "%1$s shared »%2$s« with you and wants to add" : "%1$s vám nasdílel(a) „%2$s“ a chce přidat",
+ "»%s« added a note to a file shared with you" : "„%s“ přidal(a) poznámku k souboru, který je s vámi sdílený",
+ "Open »%s«" : "Otevřít „%s“",
"%1$s via %2$s" : "%1$s prostřednictvím %2$s",
"Can’t increase permissions of %s" : "Nelze zvýšit oprávnění %s",
"Files can’t be shared with delete permissions" : "Soubory nelze sdílet s oprávněními k odstranění",
"Files can’t be shared with create permissions" : "Soubory nelze sdílet s oprávněními k vytváření",
"Expiration date is in the past" : "Datum skončení platnosti je v minulosti",
"Can’t set expiration date more than %s days in the future" : "Nelze nastavit datum vypršení platnosti více než %s dní v budoucnu",
- "%s shared »%s« with you" : "%s s vámi sdílí »%s«",
- "%s shared »%s« with you." : "%s s vámi sdílel(a) »%s»",
+ "%s shared »%s« with you" : "%s s vámi sdílí „%s“",
+ "%s shared »%s« with you." : "%s s vámi sdílel(a) „%s“",
"Click the button below to open it." : "Pro otevření kliknětena tlačítko níže.",
"%s via %s" : "%s pomocí %s",
"The requested share does not exist anymore" : "Požadované sdílení už neexistuje",
@@ -181,16 +186,16 @@ OC.L10N.register(
"Oct." : "říjen",
"Nov." : "listopad",
"Dec." : "prosinec",
- "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Pouze následující znaky jsou povoleny pro uživatelské jméno: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"",
+ "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Pouze následující znaky jsou povoleny pro uživatelské jméno: „a-z“, „A-Z“, „0-9“, a „_.@-'“",
"A valid username must be provided" : "Je třeba zadat platné uživatelské jméno",
"Username contains whitespace at the beginning or at the end" : "Uživatelské jméno obsahuje mezery na svém začátku nebo konci",
- "Username must not consist of dots only" : "Uživatelské jméno se nesmí skládat ze samých teček",
+ "Username must not consist of dots only" : "Uživatelské jméno se nemůže skládat ze samých teček",
"A valid password must be provided" : "Je třeba zadat platné heslo",
"The username is already being used" : "Uživatelské jméno už je využíváno",
"Could not create user" : "Nepodařilo se vytvořit uživatele",
"User disabled" : "Uživatel zakázán",
"Login canceled by app" : "Přihlášení zrušeno aplikací",
- "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci \"%s\" nelze nainstalovat, protože nejsou splněny následující závislosti: %s",
+ "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci „%s“ nelze nainstalovat, protože nejsou splněny následující závislosti: %s",
"a safe home for all your data" : "bezpečný domov pro všechna vaše data",
"File is currently busy, please try again later" : "Soubor je používán, zkuste to později",
"Can't read file" : "Nelze přečíst soubor",
@@ -198,40 +203,42 @@ OC.L10N.register(
"Authentication error" : "Chyba ověření",
"Token expired. Please reload page." : "Platnost tokenu skončila. Načtěte stránku znovu.",
"No database drivers (sqlite, mysql, or postgresql) installed." : "Nejsou instalovány ovladače databází (sqlite, mysql nebo postresql).",
- "Cannot write into \"config\" directory" : "Nelze zapisovat do adresáře \"config\"",
- "Cannot write into \"apps\" directory" : "Nelze zapisovat do adresáře \"apps\"",
- "This can usually be fixed by giving the webserver write access to the apps directory or disabling the appstore in the config file. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do adresáře apps nebo zakázáním appstore v konfiguračním souboru. Viz %s",
+ "Cannot write into \"config\" directory" : "Nelze zapisovat do adresáře „config“",
+ "Cannot write into \"apps\" directory" : "Nedaří se zapisovat do adresáře „apps“",
+ "This can usually be fixed by giving the webserver write access to the apps directory or disabling the appstore in the config file. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do adresáře apps nebo zakázáním appstore v souboru s nastaveními. Viz %s",
"Cannot create \"data\" directory" : "Nelze vytvořit datový adresář",
- "This can usually be fixed by giving the webserver write access to the root directory. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do kořenového adresáře. Viz %s",
- "Permissions can usually be fixed by giving the webserver write access to the root directory. See %s." : "Oprávnění lze obvykle napravit povolením zápisu webovému serveru do kořenového adresáře. Viz %s.",
+ "This can usually be fixed by giving the webserver write access to the root directory. See %s" : "Toto obvykle lze vyřešit udělením oprávnění k zápisu do kořenové složky webu pro účet, pod kterým je provozován webový server. Viz %s",
+ "Permissions can usually be fixed by giving the webserver write access to the root directory. See %s." : "Oprávnění lze obvykle napravit umožněním zápisu do kořene webu pro účet, pod kterým je provozován webový server. Viz %s.",
"Setting locale to %s failed" : "Nastavení jazyka na %s se nezdařilo",
- "Please install one of these locales on your system and restart your webserver." : "Prosím nainstalujte alespoň jeden z těchto jazyků do svého systému a restartujte webový server.",
+ "Please install one of these locales on your system and restart your webserver." : "Do svého systému nainstalujte alespoň jeden z těchto jazyků a restartujte webový server.",
"Please ask your server administrator to install the module." : "Požádejte svého správce systému o instalaci tohoto modulu.",
"PHP module %s not installed." : "PHP modul %s není nainstalován.",
- "PHP setting \"%s\" is not set to \"%s\"." : "PHP hodnota „%s“ není nastavena na „%s“.",
- "Adjusting this setting in php.ini will make Nextcloud run again" : "Změna tohoto nastavení v php.ini umožní Nextcloudu opět běžet",
- "mbstring.func_overload is set to \"%s\" instead of the expected value \"0\"" : "mbstring.func_overload je nastaven na \"%s\" místo očekávané hodnoty \"0\"",
- "To fix this issue set <code>mbstring.func_overload</code> to <code>0</code> in your php.ini" : "Pro nápravu nastavte <code>mbstring.func_overload</code> na <code>0</code> v souboru php.ini",
- "libxml2 2.7.0 is at least required. Currently %s is installed." : "Je požadováno minimálně libxml2 2.7.0. Aktuálně je nainstalována verze %s.",
- "To fix this issue update your libxml2 version and restart your web server." : "Pro opravu tohoto problému aktualizujte libxml2 a restartujte web server.",
+ "PHP setting \"%s\" is not set to \"%s\"." : "Hodnota PHP nastavení „%s“ není nastavená na „%s“.",
+ "Adjusting this setting in php.ini will make Nextcloud run again" : "Úprava tohoto nastavení v php.ini umožní Nextcloud opět zprovoznit",
+ "mbstring.func_overload is set to \"%s\" instead of the expected value \"0\"" : "mbstring.func_overload je nastaven na „%s“ namísto očekávané hodnoty „0“",
+ "To fix this issue set <code>mbstring.func_overload</code> to <code>0</code> in your php.ini" : "Pro nápravu nastavte v souboru php.ini parametr <code>mbstring.func_overload</code> na <code>0</code>",
+ "libxml2 2.7.0 is at least required. Currently %s is installed." : "Je požadována verze softwarové knihovny libxml2 minimálně 2.7.0. Nyní je nainstalována verze %s.",
+ "To fix this issue update your libxml2 version and restart your web server." : "Pro opravu tohoto problému aktualizujte knihovnu libxml2 a restartujte webový server.",
"PHP is apparently set up to strip inline doc blocks. This will make several core apps inaccessible." : "PHP je patrně nastaveno tak, aby odstraňovalo bloky komentářů. Toto bude mít za následek znepřístupnění mnoha důležitých aplikací.",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Toto je pravděpodobně způsobeno aplikacemi pro urychlení načítání jako jsou Zend OPcache nebo eAccelerator.",
"PHP modules have been installed, but they are still listed as missing?" : "PHP moduly jsou nainstalovány, ale stále se tváří jako chybějící?",
"Please ask your server administrator to restart the web server." : "Požádejte svého správce systému o restart webového serveru.",
- "PostgreSQL >= 9 required" : "Je vyžadováno PostgreSQL >= 9",
+ "PostgreSQL >= 9 required" : "Je vyžadováno PostgreSQL verze 9 a novější",
"Please upgrade your database version" : "Aktualizujte verzi své databáze",
- "Please change the permissions to 0770 so that the directory cannot be listed by other users." : "Změňte prosím práva na 0770, aby adresář nemohl být otevřen ostatními uživateli.",
- "Your data directory is readable by other users" : "Váš datový adresář mohou číst ostatní užovatelé",
- "Your data directory must be an absolute path" : "Váš datový adresář musí být absolutní cesta",
+ "Please change the permissions to 0770 so that the directory cannot be listed by other users." : "Změňte práva na 0770, aby obsah adresáře nemohl být vypisován ostatními uživateli.",
+ "Your data directory is readable by other users" : "Váš datový adresář mohou číst ostatní uživatelé",
+ "Your data directory must be an absolute path" : "Je třeba, aby váš datový adresář byl zadán jako úplný popis umístění",
"Check the value of \"datadirectory\" in your configuration" : "Zkontrolujte hodnotu „datadirectory“ ve svém nastavení",
- "Your data directory is invalid" : "Váš datový adresář je neplatný",
- "Ensure there is a file called \".ocdata\" in the root of the data directory." : "Ujistěte se, že v kořenovém adresáři je soubor s názvem \".ocdata\".",
+ "Your data directory is invalid" : "Váš datový adresář není platný",
+ "Ensure there is a file called \".ocdata\" in the root of the data directory." : "Ověřte, že v kořeni datového adresáře je soubor s názvem „.ocdata“.",
"Action \"%s\" not supported or implemented." : "Akce „%s“ není podporována nebo implementována.",
- "Authentication failed, wrong token or provider ID given" : "Autentizace selhala, předán chybný token nebo id poskytovatele",
- "Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloudový poskytovatel federace s ID: \"%s\" neexistuje",
- "Could not obtain lock type %d on \"%s\"." : "Nelze získat zámek typu %d na \"%s\".",
+ "Authentication failed, wrong token or provider ID given" : "Ověření se nezdařilo, předán chybný token nebo identifikátor poskytovatele",
+ "Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Pro dokončení požadavku chybí parametry. Konkrétně: „%s“",
+ "ID \"%s\" already used by cloud federation provider \"%s\"" : "Identifikátor „%s“ je už použitý poskytovatelem federování cloudu „%s“",
+ "Cloud Federation Provider with ID: \"%s\" does not exist." : "Poskytovatel sdružování cloudů s identifikátorem: „%s“ neexistuje",
+ "Could not obtain lock type %d on \"%s\"." : "Nedaří získat zámek typu %d na „%s“.",
"Storage unauthorized. %s" : "Úložiště neověřeno. %s",
- "Storage incomplete configuration. %s" : "Nekompletní konfigurace úložiště. %s",
+ "Storage incomplete configuration. %s" : "Neúplné nastavení pro úložiště. %s",
"Storage connection error. %s" : "Chyba připojení úložiště. %s",
"Storage is temporarily not available" : "Úložiště je dočasně nedostupné",
"Storage connection timeout. %s" : "Překročen časový limit připojování k úložišti. %s",
@@ -242,6 +249,9 @@ OC.L10N.register(
"Encryption" : "Šifrování",
"Tips & tricks" : "Tipy a triky",
"DB Error: \"%s\"" : "Chyba databáze: „%s“",
+ "Offending command was: \"%s\"" : "Proviňující se příkaz byl: „%s“",
+ "Offending command was: \"%s\", name: %s, password: %s" : "Proviňující se příkaz byl: „%s“, název: %s, heslo: %s",
+ "Setting permissions for %s failed, because the permissions exceed permissions granted to %s" : "Nastavení oprávnění pro %s se nezdařilo, protože oprávnění překročila oprávnění udělená pro %s",
"Setting permissions for %s failed, because the item was not found" : "Nastavení oprávnění pro %s se nezdařilo, protože položka nebyla nalezena",
"Cannot clear expiration date. Shares are required to have an expiration date." : "Datum skončení platnosti nelze odebrat. Je třeba, aby sdílení měla datum skončení platnosti.",
"Cannot increase permissions of %s" : "Nelze zvýšit oprávnění %s",
diff --git a/lib/l10n/cs.json b/lib/l10n/cs.json
index 55b48b1ea1c..b96f07e78f0 100644
--- a/lib/l10n/cs.json
+++ b/lib/l10n/cs.json
@@ -1,16 +1,18 @@
{ "translations": {
- "Cannot write into \"config\" directory!" : "Nelze zapisovat do složky „config“!",
- "This can usually be fixed by giving the webserver write access to the config directory" : "To lze obvykle vyřešit povolením zápisu webovému serveru do konfiguračního adresáře",
+ "Cannot write into \"config\" directory!" : "Nedaří se zapisovat do adresáře „config“!",
+ "This can usually be fixed by giving the webserver write access to the config directory" : "Toto obvykle lze vyřešit udělením oprávnění k zápisu do adresáře s nastaveními pro účet, pod kterým je provozován webový server",
"See %s" : "Viz %s",
- "This can usually be fixed by giving the webserver write access to the config directory. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do konfiguračního adresáře. Viz %s",
- "The files of the app %$1s were not replaced correctly. Make sure it is a version compatible with the server." : "Soubory aplikace %$1s nebyly řádně nahrazeny. Ujistěte se, že je to verze kompatibilní se serverem.",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Nebo, pokud chcete mít soubor config.php pouze pro čtení, nastavte v něm volbu „config_is_read_only“ na hodnotu true.",
+ "This can usually be fixed by giving the webserver write access to the config directory. See %s" : "Toto obvykle lze vyřešit udělením oprávnění k zápisu do kořenové složky webu pro účet, pod kterým je provozován webový server. Viz %s",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it. See %s" : "Nebo, pokud chcete mít soubor config.php pouze pro čtení, nastavte v něm volbu „config_is_read_only“ na hodnotu true. Viz %s",
+ "The files of the app %$1s were not replaced correctly. Make sure it is a version compatible with the server." : "Soubory aplikace %$1s nebyly řádně nahrazeny. Ověřte, že je to verze kompatibilní se serverem.",
"Sample configuration detected" : "Bylo zjištěno setrvání u předváděcího nastavení",
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "Pravděpodobně byla zkopírována konfigurační nastavení ze vzorových souborů. Toto není podporováno a může poškodit vaši instalaci. Nahlédněte prosím do dokumentace před prováděním změn v souboru config.php",
"%1$s and %2$s" : "%1$s a %2$s",
"%1$s, %2$s and %3$s" : "%1$s, %2$s a %3$s",
"%1$s, %2$s, %3$s and %4$s" : "%1$s, %2$s, %3$s a %4$s",
"%1$s, %2$s, %3$s, %4$s and %5$s" : "%1$s, %2$s, %3$s, %4$s a %5$s",
- "Education Edition" : "Edice pro výuku",
+ "Education Edition" : "Vydání pro vzdělávací instituce",
"Enterprise bundle" : "Enterprise balíček",
"Groupware bundle" : "Balíček groupware",
"Social sharing bundle" : "Balíček sociálního sdílení",
@@ -49,15 +51,15 @@
"in a few seconds" : "během několika sekund",
"seconds ago" : "před pár sekundami",
"Module with ID: %s does not exist. Please enable it in your apps settings or contact your administrator." : "Modul s ID: %s neexistuje. Povolte ho v nastavení aplikací, nebo kontaktujte vašeho administrátora.",
- "File name is a reserved word" : "Jméno souboru je rezervované slovo",
- "File name contains at least one invalid character" : "Jméno souboru obsahuje nejméně jeden neplatný znak",
- "File name is too long" : "Jméno souboru je moc dlouhé",
- "Dot files are not allowed" : "Jména souborů začínající tečkou nejsou povolena",
- "Empty filename is not allowed" : "Prázdné jméno souboru není povoleno",
- "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikace \"%s\" nemůže být nainstalována protože soubor appinfo nelze přečíst.",
- "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikaci \"%s\" nelze nainstalovat, protože není kompatibilní s touto verzí serveru.",
+ "File name is a reserved word" : "Název souboru je rezervované slovo",
+ "File name contains at least one invalid character" : "Název souboru obsahuje nejméně jeden neplatný znak",
+ "File name is too long" : "Název souboru je příliš dlouhý",
+ "Dot files are not allowed" : "Názvy souborů, začínající na tečku nejsou povolené",
+ "Empty filename is not allowed" : "Je třeba vyplnit název souboru",
+ "App \"%s\" cannot be installed because appinfo file cannot be read." : "Aplikace „%s“ nemůže být nainstalována protože soubor appinfo nelze přečíst.",
+ "App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Aplikaci „%s“ nelze nainstalovat, protože není kompatibilní s touto verzí serveru.",
"__language_name__" : "Česky",
- "This is an automatically sent email, please do not reply." : "Toto je automaticky odesílaný e-mail, prosím, neodpovídejte.",
+ "This is an automatically sent email, please do not reply." : "Toto je automaticky odesílaný e-mail, neodpovídejte na něj.",
"Help" : "Nápověda",
"Apps" : "Aplikace",
"Settings" : "Nastavení",
@@ -77,16 +79,16 @@
"Personal info" : "Osobní informace",
"Mobile & desktop" : "Mobilní a desktop",
"Unlimited" : "Neomezeně",
- "Verifying" : "Ověření",
+ "Verifying" : "Ověřuje se",
"Verifying …" : "Ověřování…",
"Verify" : "Ověřit",
- "%s enter the database username and name." : "%s zadejte uživatelské jméno a jméno do databáze.",
+ "%s enter the database username and name." : "%s zadejte databázové uživatelské jméno a jméno.",
"%s enter the database username." : "Zadejte uživatelské jméno %s databáze.",
"%s enter the database name." : "Zadejte název databáze pro %s databáze.",
"%s you may not use dots in the database name" : "V názvu databáze %s není možné používat tečky.",
"Oracle connection could not be established" : "Spojení s Oracle nemohlo být navázáno",
- "Oracle username and/or password not valid" : "Uživatelské jméno či heslo Oracle není platné",
- "PostgreSQL username and/or password not valid" : "Uživatelské jméno či heslo PostgreSQL není platné",
+ "Oracle username and/or password not valid" : "Uživatelské jméno nebo heslo do Oracle není platné",
+ "PostgreSQL username and/or password not valid" : "Uživatelské jméno nebo heslo do PostgreSQL není platné",
"You need to enter details of an existing account." : "Je třeba zadat podrobnosti existujícího účtu.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X není podporován a %s nebude na této platformě správně fungovat. Používejte pouze na vlastní nebezpečí!",
"For the best results, please consider using a GNU/Linux server instead." : "Místo toho zvažte pro nejlepší funkčnost použití GNU/Linux serveru.",
@@ -94,42 +96,45 @@
"Please remove the open_basedir setting within your php.ini or switch to 64-bit PHP." : "Odstraňte z php.ini nastavení volby open_basedir nebo přejděte na 64-bitové PHP.",
"Set an admin username." : "Zadejte uživatelské jméno správce.",
"Set an admin password." : "Zadejte heslo správce.",
- "Can't create or write into the data directory %s" : "Nelze vytvořit nebo zapisovat do datového adresáře %s",
+ "Can't create or write into the data directory %s" : "Nedaří se vytvořit nebo zapisovat do datového adresáře %s",
"Invalid Federated Cloud ID" : "Neplatné sdružené cloud ID",
- "Sharing %s failed, because the backend does not allow shares from type %i" : "Sdílení %s selhalo, podpůrná vrstva nepodporuje typ sdílení %i",
- "Sharing %s failed, because the file does not exist" : "Sdílení %s selhalo, protože soubor neexistuje",
+ "Sharing %s failed, because the backend does not allow shares from type %i" : "Sdílení %s se nezdařilo, podpůrná vrstva nepodporuje typ sdílení %i",
+ "Sharing %s failed, because the file does not exist" : "Sdílení %s se nezdařilo, protože soubor neexistuje",
"You are not allowed to share %s" : "Nemáte povoleno sdílet %s",
- "Sharing %s failed, because you can not share with yourself" : "Sdílení %s selhalo, protože nemůžete sdílet sami se sebou",
+ "Sharing %s failed, because you can not share with yourself" : "Sdílení %s se nezdařilo, protože nemůžete sdílet sami se sebou",
"Sharing %s failed, because the user %s does not exist" : "Sdílení položky %s se nezdařilo, protože uživatel %s neexistuje",
- "Sharing %s failed, because the user %s is not a member of any groups that %s is a member of" : "Sdílení položky %s selhalo, protože uživatel %s není členem žádné skupiny společné s uživatelem %s",
- "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s selhalo, protože položka již je s uživatelem %s sdílena",
- "Sharing %s failed, because this item is already shared with user %s" : "Sdílení položky %s selhalo, protože ta je již s uživatelem %s sdílena",
- "Sharing %s failed, because the group %s does not exist" : "Sdílení položky %s selhalo, protože skupina %s neexistuje",
- "Sharing %s failed, because %s is not a member of the group %s" : "Sdílení položky %s selhalo, protože uživatel %s není členem skupiny %s",
+ "Sharing %s failed, because the user %s is not a member of any groups that %s is a member of" : "Sdílení položky %s se nezdařilo, protože uživatel %s není členem žádné skupiny společné s uživatelem %s",
+ "Sharing %s failed, because this item is already shared with %s" : "Sdílení položky %s se nezdařilo, protože položka už je s uživatelem %s sdílena",
+ "Sharing %s failed, because this item is already shared with user %s" : "Sdílení položky %s se nezdařilo, protože ta je už s uživatelem %s sdílena",
+ "Sharing %s failed, because the group %s does not exist" : "Sdílení položky %s se nezdařilo, protože skupina %s neexistuje",
+ "Sharing %s failed, because %s is not a member of the group %s" : "Sdílení položky %s se nezdařilo, protože uživatel %s není členem skupiny %s",
"You need to provide a password to create a public link, only protected links are allowed" : "Pro vytvoření veřejného odkazu je nutné zadat heslo, jsou povoleny pouze chráněné odkazy",
- "Sharing %s failed, because sharing with links is not allowed" : "Sdílení položky %s selhalo, protože sdílení pomocí linků není povoleno",
+ "Sharing %s failed, because sharing with links is not allowed" : "Sdílení položky %s se nezdařilo, protože sdílení pomocí odkazů není povoleno",
"Not allowed to create a federated share with the same user" : "Není povoleno vytvořit propojené sdílení s tím samým uživatelem",
- "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Sdílení %s selhalo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný.",
+ "Sharing %s failed, could not find %s, maybe the server is currently unreachable." : "Sdílení %s se nezdařilo, %s se nepodařilo nalézt, server pravděpodobně právě není dostupný.",
"Share type %s is not valid for %s" : "Sdílení typu %s není korektní pro %s",
- "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Nelze nastavit datum vypršení platnosti. Sdílení nemůže vypršet později než za %s po zveřejnění",
- "Cannot set expiration date. Expiration date is in the past" : "Nelze nastavit datum vypršení platnosti. Datum vypršení je v minulosti",
+ "Cannot set expiration date. Shares cannot expire later than %s after they have been shared" : "Nedaří se nastavit datum skončení platnosti. Sdílení nemůže vypršet později než za %s po zveřejnění",
+ "Cannot set expiration date. Expiration date is in the past" : "Takové datum skončení platnosti nelze nastavit – je třeba, aby bylo v budoucnosti a ne minulosti…",
"Sharing backend %s must implement the interface OCP\\Share_Backend" : "Úložiště pro sdílení %s musí implementovat rozhraní OCP\\Share_Backend",
"Sharing backend %s not found" : "Úložiště sdílení %s nenalezeno",
"Sharing backend for %s not found" : "Úložiště sdílení pro %s nenalezeno",
- "Sharing failed, because the user %s is the original sharer" : "Sdílení položky selhalo, protože uživatel %s je originálním vlastníkem",
- "Sharing %s failed, because the permissions exceed permissions granted to %s" : "Sdílení položky %s selhalo, protože jsou k tomu nutná vyšší oprávnění, než jaká byla %s povolena.",
- "Sharing %s failed, because resharing is not allowed" : "Sdílení položky %s selhalo, protože znovu-sdílení není povoleno",
+ "Sharing failed, because the user %s is the original sharer" : "Sdílení položky se nezdařilo, protože uživatel %s je původním vlastníkem",
+ "Sharing %s failed, because the permissions exceed permissions granted to %s" : "Sdílení položky %s se nezdařilo, protože jsou k tomu nutná vyšší oprávnění, než jaká byla %s povolena.",
+ "Sharing %s failed, because resharing is not allowed" : "Sdílení položky %s se nezdařilo, protože znovu-sdílení není povoleno",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Sdílení položky %s selhalo, protože úložiště sdílení %s nenalezla zdroj",
"Sharing %s failed, because the file could not be found in the file cache" : "Sdílení položky %s selhalo, protože soubor nebyl nalezen ve vyrovnávací paměti",
- "Open »%s«" : "Otevřít »%s«",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s vám nasdílel(a) „%2$s“ a chce přidat:",
+ "%1$s shared »%2$s« with you and wants to add" : "%1$s vám nasdílel(a) „%2$s“ a chce přidat",
+ "»%s« added a note to a file shared with you" : "„%s“ přidal(a) poznámku k souboru, který je s vámi sdílený",
+ "Open »%s«" : "Otevřít „%s“",
"%1$s via %2$s" : "%1$s prostřednictvím %2$s",
"Can’t increase permissions of %s" : "Nelze zvýšit oprávnění %s",
"Files can’t be shared with delete permissions" : "Soubory nelze sdílet s oprávněními k odstranění",
"Files can’t be shared with create permissions" : "Soubory nelze sdílet s oprávněními k vytváření",
"Expiration date is in the past" : "Datum skončení platnosti je v minulosti",
"Can’t set expiration date more than %s days in the future" : "Nelze nastavit datum vypršení platnosti více než %s dní v budoucnu",
- "%s shared »%s« with you" : "%s s vámi sdílí »%s«",
- "%s shared »%s« with you." : "%s s vámi sdílel(a) »%s»",
+ "%s shared »%s« with you" : "%s s vámi sdílí „%s“",
+ "%s shared »%s« with you." : "%s s vámi sdílel(a) „%s“",
"Click the button below to open it." : "Pro otevření kliknětena tlačítko níže.",
"%s via %s" : "%s pomocí %s",
"The requested share does not exist anymore" : "Požadované sdílení už neexistuje",
@@ -179,16 +184,16 @@
"Oct." : "říjen",
"Nov." : "listopad",
"Dec." : "prosinec",
- "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Pouze následující znaky jsou povoleny pro uživatelské jméno: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"",
+ "Only the following characters are allowed in a username: \"a-z\", \"A-Z\", \"0-9\", and \"_.@-'\"" : "Pouze následující znaky jsou povoleny pro uživatelské jméno: „a-z“, „A-Z“, „0-9“, a „_.@-'“",
"A valid username must be provided" : "Je třeba zadat platné uživatelské jméno",
"Username contains whitespace at the beginning or at the end" : "Uživatelské jméno obsahuje mezery na svém začátku nebo konci",
- "Username must not consist of dots only" : "Uživatelské jméno se nesmí skládat ze samých teček",
+ "Username must not consist of dots only" : "Uživatelské jméno se nemůže skládat ze samých teček",
"A valid password must be provided" : "Je třeba zadat platné heslo",
"The username is already being used" : "Uživatelské jméno už je využíváno",
"Could not create user" : "Nepodařilo se vytvořit uživatele",
"User disabled" : "Uživatel zakázán",
"Login canceled by app" : "Přihlášení zrušeno aplikací",
- "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci \"%s\" nelze nainstalovat, protože nejsou splněny následující závislosti: %s",
+ "App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Aplikaci „%s“ nelze nainstalovat, protože nejsou splněny následující závislosti: %s",
"a safe home for all your data" : "bezpečný domov pro všechna vaše data",
"File is currently busy, please try again later" : "Soubor je používán, zkuste to později",
"Can't read file" : "Nelze přečíst soubor",
@@ -196,40 +201,42 @@
"Authentication error" : "Chyba ověření",
"Token expired. Please reload page." : "Platnost tokenu skončila. Načtěte stránku znovu.",
"No database drivers (sqlite, mysql, or postgresql) installed." : "Nejsou instalovány ovladače databází (sqlite, mysql nebo postresql).",
- "Cannot write into \"config\" directory" : "Nelze zapisovat do adresáře \"config\"",
- "Cannot write into \"apps\" directory" : "Nelze zapisovat do adresáře \"apps\"",
- "This can usually be fixed by giving the webserver write access to the apps directory or disabling the appstore in the config file. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do adresáře apps nebo zakázáním appstore v konfiguračním souboru. Viz %s",
+ "Cannot write into \"config\" directory" : "Nelze zapisovat do adresáře „config“",
+ "Cannot write into \"apps\" directory" : "Nedaří se zapisovat do adresáře „apps“",
+ "This can usually be fixed by giving the webserver write access to the apps directory or disabling the appstore in the config file. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do adresáře apps nebo zakázáním appstore v souboru s nastaveními. Viz %s",
"Cannot create \"data\" directory" : "Nelze vytvořit datový adresář",
- "This can usually be fixed by giving the webserver write access to the root directory. See %s" : "To lze obvykle vyřešit povolením zápisu webovému serveru do kořenového adresáře. Viz %s",
- "Permissions can usually be fixed by giving the webserver write access to the root directory. See %s." : "Oprávnění lze obvykle napravit povolením zápisu webovému serveru do kořenového adresáře. Viz %s.",
+ "This can usually be fixed by giving the webserver write access to the root directory. See %s" : "Toto obvykle lze vyřešit udělením oprávnění k zápisu do kořenové složky webu pro účet, pod kterým je provozován webový server. Viz %s",
+ "Permissions can usually be fixed by giving the webserver write access to the root directory. See %s." : "Oprávnění lze obvykle napravit umožněním zápisu do kořene webu pro účet, pod kterým je provozován webový server. Viz %s.",
"Setting locale to %s failed" : "Nastavení jazyka na %s se nezdařilo",
- "Please install one of these locales on your system and restart your webserver." : "Prosím nainstalujte alespoň jeden z těchto jazyků do svého systému a restartujte webový server.",
+ "Please install one of these locales on your system and restart your webserver." : "Do svého systému nainstalujte alespoň jeden z těchto jazyků a restartujte webový server.",
"Please ask your server administrator to install the module." : "Požádejte svého správce systému o instalaci tohoto modulu.",
"PHP module %s not installed." : "PHP modul %s není nainstalován.",
- "PHP setting \"%s\" is not set to \"%s\"." : "PHP hodnota „%s“ není nastavena na „%s“.",
- "Adjusting this setting in php.ini will make Nextcloud run again" : "Změna tohoto nastavení v php.ini umožní Nextcloudu opět běžet",
- "mbstring.func_overload is set to \"%s\" instead of the expected value \"0\"" : "mbstring.func_overload je nastaven na \"%s\" místo očekávané hodnoty \"0\"",
- "To fix this issue set <code>mbstring.func_overload</code> to <code>0</code> in your php.ini" : "Pro nápravu nastavte <code>mbstring.func_overload</code> na <code>0</code> v souboru php.ini",
- "libxml2 2.7.0 is at least required. Currently %s is installed." : "Je požadováno minimálně libxml2 2.7.0. Aktuálně je nainstalována verze %s.",
- "To fix this issue update your libxml2 version and restart your web server." : "Pro opravu tohoto problému aktualizujte libxml2 a restartujte web server.",
+ "PHP setting \"%s\" is not set to \"%s\"." : "Hodnota PHP nastavení „%s“ není nastavená na „%s“.",
+ "Adjusting this setting in php.ini will make Nextcloud run again" : "Úprava tohoto nastavení v php.ini umožní Nextcloud opět zprovoznit",
+ "mbstring.func_overload is set to \"%s\" instead of the expected value \"0\"" : "mbstring.func_overload je nastaven na „%s“ namísto očekávané hodnoty „0“",
+ "To fix this issue set <code>mbstring.func_overload</code> to <code>0</code> in your php.ini" : "Pro nápravu nastavte v souboru php.ini parametr <code>mbstring.func_overload</code> na <code>0</code>",
+ "libxml2 2.7.0 is at least required. Currently %s is installed." : "Je požadována verze softwarové knihovny libxml2 minimálně 2.7.0. Nyní je nainstalována verze %s.",
+ "To fix this issue update your libxml2 version and restart your web server." : "Pro opravu tohoto problému aktualizujte knihovnu libxml2 a restartujte webový server.",
"PHP is apparently set up to strip inline doc blocks. This will make several core apps inaccessible." : "PHP je patrně nastaveno tak, aby odstraňovalo bloky komentářů. Toto bude mít za následek znepřístupnění mnoha důležitých aplikací.",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Toto je pravděpodobně způsobeno aplikacemi pro urychlení načítání jako jsou Zend OPcache nebo eAccelerator.",
"PHP modules have been installed, but they are still listed as missing?" : "PHP moduly jsou nainstalovány, ale stále se tváří jako chybějící?",
"Please ask your server administrator to restart the web server." : "Požádejte svého správce systému o restart webového serveru.",
- "PostgreSQL >= 9 required" : "Je vyžadováno PostgreSQL >= 9",
+ "PostgreSQL >= 9 required" : "Je vyžadováno PostgreSQL verze 9 a novější",
"Please upgrade your database version" : "Aktualizujte verzi své databáze",
- "Please change the permissions to 0770 so that the directory cannot be listed by other users." : "Změňte prosím práva na 0770, aby adresář nemohl být otevřen ostatními uživateli.",
- "Your data directory is readable by other users" : "Váš datový adresář mohou číst ostatní užovatelé",
- "Your data directory must be an absolute path" : "Váš datový adresář musí být absolutní cesta",
+ "Please change the permissions to 0770 so that the directory cannot be listed by other users." : "Změňte práva na 0770, aby obsah adresáře nemohl být vypisován ostatními uživateli.",
+ "Your data directory is readable by other users" : "Váš datový adresář mohou číst ostatní uživatelé",
+ "Your data directory must be an absolute path" : "Je třeba, aby váš datový adresář byl zadán jako úplný popis umístění",
"Check the value of \"datadirectory\" in your configuration" : "Zkontrolujte hodnotu „datadirectory“ ve svém nastavení",
- "Your data directory is invalid" : "Váš datový adresář je neplatný",
- "Ensure there is a file called \".ocdata\" in the root of the data directory." : "Ujistěte se, že v kořenovém adresáři je soubor s názvem \".ocdata\".",
+ "Your data directory is invalid" : "Váš datový adresář není platný",
+ "Ensure there is a file called \".ocdata\" in the root of the data directory." : "Ověřte, že v kořeni datového adresáře je soubor s názvem „.ocdata“.",
"Action \"%s\" not supported or implemented." : "Akce „%s“ není podporována nebo implementována.",
- "Authentication failed, wrong token or provider ID given" : "Autentizace selhala, předán chybný token nebo id poskytovatele",
- "Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloudový poskytovatel federace s ID: \"%s\" neexistuje",
- "Could not obtain lock type %d on \"%s\"." : "Nelze získat zámek typu %d na \"%s\".",
+ "Authentication failed, wrong token or provider ID given" : "Ověření se nezdařilo, předán chybný token nebo identifikátor poskytovatele",
+ "Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Pro dokončení požadavku chybí parametry. Konkrétně: „%s“",
+ "ID \"%s\" already used by cloud federation provider \"%s\"" : "Identifikátor „%s“ je už použitý poskytovatelem federování cloudu „%s“",
+ "Cloud Federation Provider with ID: \"%s\" does not exist." : "Poskytovatel sdružování cloudů s identifikátorem: „%s“ neexistuje",
+ "Could not obtain lock type %d on \"%s\"." : "Nedaří získat zámek typu %d na „%s“.",
"Storage unauthorized. %s" : "Úložiště neověřeno. %s",
- "Storage incomplete configuration. %s" : "Nekompletní konfigurace úložiště. %s",
+ "Storage incomplete configuration. %s" : "Neúplné nastavení pro úložiště. %s",
"Storage connection error. %s" : "Chyba připojení úložiště. %s",
"Storage is temporarily not available" : "Úložiště je dočasně nedostupné",
"Storage connection timeout. %s" : "Překročen časový limit připojování k úložišti. %s",
@@ -240,6 +247,9 @@
"Encryption" : "Šifrování",
"Tips & tricks" : "Tipy a triky",
"DB Error: \"%s\"" : "Chyba databáze: „%s“",
+ "Offending command was: \"%s\"" : "Proviňující se příkaz byl: „%s“",
+ "Offending command was: \"%s\", name: %s, password: %s" : "Proviňující se příkaz byl: „%s“, název: %s, heslo: %s",
+ "Setting permissions for %s failed, because the permissions exceed permissions granted to %s" : "Nastavení oprávnění pro %s se nezdařilo, protože oprávnění překročila oprávnění udělená pro %s",
"Setting permissions for %s failed, because the item was not found" : "Nastavení oprávnění pro %s se nezdařilo, protože položka nebyla nalezena",
"Cannot clear expiration date. Shares are required to have an expiration date." : "Datum skončení platnosti nelze odebrat. Je třeba, aby sdílení měla datum skončení platnosti.",
"Cannot increase permissions of %s" : "Nelze zvýšit oprávnění %s",
diff --git a/lib/l10n/fi.js b/lib/l10n/fi.js
index e39907f5641..6c05cad2b92 100644
--- a/lib/l10n/fi.js
+++ b/lib/l10n/fi.js
@@ -199,6 +199,7 @@ OC.L10N.register(
"Your data directory must be an absolute path" : "Data-hakemiston tulee olla absoluuttinen polku",
"Check the value of \"datadirectory\" in your configuration" : "Tarkista \"datadirectory\"-arvo asetuksistasi",
"Your data directory is invalid" : "Datahakemistosi on virheellinen",
+ "Action \"%s\" not supported or implemented." : "Toiminto \"%s\" ei ole tuettu tai sitä ei ole toteutettu.",
"Could not obtain lock type %d on \"%s\"." : "Lukitustapaa %d ei saatu kohteelle \"%s\".",
"Storage unauthorized. %s" : "Tallennustila ei ole valtuutettu. %s",
"Storage incomplete configuration. %s" : "Tallennustilan puutteellinen määritys. %s",
diff --git a/lib/l10n/fi.json b/lib/l10n/fi.json
index 84859c2b4d8..0c035e1b936 100644
--- a/lib/l10n/fi.json
+++ b/lib/l10n/fi.json
@@ -197,6 +197,7 @@
"Your data directory must be an absolute path" : "Data-hakemiston tulee olla absoluuttinen polku",
"Check the value of \"datadirectory\" in your configuration" : "Tarkista \"datadirectory\"-arvo asetuksistasi",
"Your data directory is invalid" : "Datahakemistosi on virheellinen",
+ "Action \"%s\" not supported or implemented." : "Toiminto \"%s\" ei ole tuettu tai sitä ei ole toteutettu.",
"Could not obtain lock type %d on \"%s\"." : "Lukitustapaa %d ei saatu kohteelle \"%s\".",
"Storage unauthorized. %s" : "Tallennustila ei ole valtuutettu. %s",
"Storage incomplete configuration. %s" : "Tallennustilan puutteellinen määritys. %s",
diff --git a/lib/l10n/ja.js b/lib/l10n/ja.js
index e60c32ba08f..4081167240a 100644
--- a/lib/l10n/ja.js
+++ b/lib/l10n/ja.js
@@ -12,7 +12,7 @@ OC.L10N.register(
"%1$s, %2$s and %3$s" : "%1$s と %2$s、%3$s",
"%1$s, %2$s, %3$s and %4$s" : "%1$s と %2$s、%3$s、%4$s",
"%1$s, %2$s, %3$s, %4$s and %5$s" : "%1$s と %2$s、%3$s、%4$s、%5$s",
- "Education Edition" : "Education Edition",
+ "Education Edition" : "教育向けエディション",
"Enterprise bundle" : "エンタープライズ バンドル",
"Groupware bundle" : "グループウェア バンドル",
"Social sharing bundle" : "SNS バンドル",
diff --git a/lib/l10n/ja.json b/lib/l10n/ja.json
index 67921cb812e..e0668b274d0 100644
--- a/lib/l10n/ja.json
+++ b/lib/l10n/ja.json
@@ -10,7 +10,7 @@
"%1$s, %2$s and %3$s" : "%1$s と %2$s、%3$s",
"%1$s, %2$s, %3$s and %4$s" : "%1$s と %2$s、%3$s、%4$s",
"%1$s, %2$s, %3$s, %4$s and %5$s" : "%1$s と %2$s、%3$s、%4$s、%5$s",
- "Education Edition" : "Education Edition",
+ "Education Edition" : "教育向けエディション",
"Enterprise bundle" : "エンタープライズ バンドル",
"Groupware bundle" : "グループウェア バンドル",
"Social sharing bundle" : "SNS バンドル",
diff --git a/lib/l10n/nl.js b/lib/l10n/nl.js
index a4832f7a627..985a18a183e 100644
--- a/lib/l10n/nl.js
+++ b/lib/l10n/nl.js
@@ -72,11 +72,14 @@ OC.L10N.register(
"Change" : "Wijzigen",
"Delete" : "Verwijderen",
"Share" : "Delen",
+ "Overview" : "Overzicht",
"Basic settings" : "Basis-instellingen",
"Sharing" : "Delen",
"Security" : "Beveiliging",
+ "Groupware" : "Groupware",
"Additional settings" : "Aanvullende instellingen",
"Personal info" : "Persoonlijke informatie",
+ "Mobile & desktop" : "Mobiel & desktop",
"Unlimited" : "Ongelimiteerd",
"Verifying" : "Verifiëren",
"Verifying …" : "Verifiëren...",
@@ -122,7 +125,11 @@ OC.L10N.register(
"Sharing %s failed, because resharing is not allowed" : "Delen van %s is mislukt, omdat her-delen niet is toegestaan",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Delen van %s is mislukt, omdat de gedeelde backend voor %s de bron niet kon vinden",
"Sharing %s failed, because the file could not be found in the file cache" : "Delen van %s is mislukt, omdat het bestand niet in de bestand cache kon worden gevonden",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s deelde »%2$s« met jou en wil toevoegen:",
+ "%1$s shared »%2$s« with you and wants to add" : "%1$s deelde »%2$s« met jou en wil toevoegen",
+ "»%s« added a note to a file shared with you" : "»%s« voegde een notitie toe aan een bestand dat met jou is gedeeld",
"Open »%s«" : "Open »%s«",
+ "%1$s via %2$s" : "%1$s via %2$s",
"Can’t increase permissions of %s" : "Kan niet meer rechten geven aan %s",
"Files can’t be shared with delete permissions" : "Bestanden kunnen niet worden gedeeld met verwijder permissies",
"Files can’t be shared with create permissions" : "Bestanden kunnen niet worden gedeeld met 'creëer' permissies",
@@ -224,6 +231,11 @@ OC.L10N.register(
"Check the value of \"datadirectory\" in your configuration" : "Controleer de waarde van \"datadirectory\" in je configuratie",
"Your data directory is invalid" : "Je data folder is ongeldig",
"Ensure there is a file called \".ocdata\" in the root of the data directory." : "Zorg dat er een bestand genaamd \".ocdata\" in de hoofddirectory aanwezig is.",
+ "Action \"%s\" not supported or implemented." : "Actie \"%s\" niet ondersteund of geïmplementeerd.",
+ "Authentication failed, wrong token or provider ID given" : "Authenticatie mislukt, ongeldig token of provider ID opgegeven",
+ "Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Er ontbreken parameters om de aanvraag uit te voeren. Ontbrekende parameters: \"%s\"",
+ "ID \"%s\" already used by cloud federation provider \"%s\"" : "ID \"%s\" wordt al gebruikt door cloud federatieprovider \"%s\"",
+ "Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud Federationprovider met ID: \"%s\" bestaat niet.",
"Could not obtain lock type %d on \"%s\"." : "Kon geen lock type %d krijgen op \"%s\".",
"Storage unauthorized. %s" : "Opslag niet toegestaan. %s",
"Storage incomplete configuration. %s" : "Incomplete opslag configuratie. %s",
diff --git a/lib/l10n/nl.json b/lib/l10n/nl.json
index 849a57ec3bb..c3230928c3b 100644
--- a/lib/l10n/nl.json
+++ b/lib/l10n/nl.json
@@ -70,11 +70,14 @@
"Change" : "Wijzigen",
"Delete" : "Verwijderen",
"Share" : "Delen",
+ "Overview" : "Overzicht",
"Basic settings" : "Basis-instellingen",
"Sharing" : "Delen",
"Security" : "Beveiliging",
+ "Groupware" : "Groupware",
"Additional settings" : "Aanvullende instellingen",
"Personal info" : "Persoonlijke informatie",
+ "Mobile & desktop" : "Mobiel & desktop",
"Unlimited" : "Ongelimiteerd",
"Verifying" : "Verifiëren",
"Verifying …" : "Verifiëren...",
@@ -120,7 +123,11 @@
"Sharing %s failed, because resharing is not allowed" : "Delen van %s is mislukt, omdat her-delen niet is toegestaan",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Delen van %s is mislukt, omdat de gedeelde backend voor %s de bron niet kon vinden",
"Sharing %s failed, because the file could not be found in the file cache" : "Delen van %s is mislukt, omdat het bestand niet in de bestand cache kon worden gevonden",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s deelde »%2$s« met jou en wil toevoegen:",
+ "%1$s shared »%2$s« with you and wants to add" : "%1$s deelde »%2$s« met jou en wil toevoegen",
+ "»%s« added a note to a file shared with you" : "»%s« voegde een notitie toe aan een bestand dat met jou is gedeeld",
"Open »%s«" : "Open »%s«",
+ "%1$s via %2$s" : "%1$s via %2$s",
"Can’t increase permissions of %s" : "Kan niet meer rechten geven aan %s",
"Files can’t be shared with delete permissions" : "Bestanden kunnen niet worden gedeeld met verwijder permissies",
"Files can’t be shared with create permissions" : "Bestanden kunnen niet worden gedeeld met 'creëer' permissies",
@@ -222,6 +229,11 @@
"Check the value of \"datadirectory\" in your configuration" : "Controleer de waarde van \"datadirectory\" in je configuratie",
"Your data directory is invalid" : "Je data folder is ongeldig",
"Ensure there is a file called \".ocdata\" in the root of the data directory." : "Zorg dat er een bestand genaamd \".ocdata\" in de hoofddirectory aanwezig is.",
+ "Action \"%s\" not supported or implemented." : "Actie \"%s\" niet ondersteund of geïmplementeerd.",
+ "Authentication failed, wrong token or provider ID given" : "Authenticatie mislukt, ongeldig token of provider ID opgegeven",
+ "Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Er ontbreken parameters om de aanvraag uit te voeren. Ontbrekende parameters: \"%s\"",
+ "ID \"%s\" already used by cloud federation provider \"%s\"" : "ID \"%s\" wordt al gebruikt door cloud federatieprovider \"%s\"",
+ "Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud Federationprovider met ID: \"%s\" bestaat niet.",
"Could not obtain lock type %d on \"%s\"." : "Kon geen lock type %d krijgen op \"%s\".",
"Storage unauthorized. %s" : "Opslag niet toegestaan. %s",
"Storage incomplete configuration. %s" : "Incomplete opslag configuratie. %s",
diff --git a/lib/l10n/pl.js b/lib/l10n/pl.js
index 8a526c5c30b..40951298554 100644
--- a/lib/l10n/pl.js
+++ b/lib/l10n/pl.js
@@ -4,7 +4,9 @@ OC.L10N.register(
"Cannot write into \"config\" directory!" : "Nie można zapisać do katalogu \"config\"!",
"This can usually be fixed by giving the webserver write access to the config directory" : "Można to zwykle rozwiązać przez dodanie serwerowi www uprawnień zapisu do katalogu config.",
"See %s" : "Zobacz %s",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Lub, jeśli wolisz zachować plik config.php tylko do odczytu, ustaw w nim opcję \"config_is_read_only\" na true.",
"This can usually be fixed by giving the webserver write access to the config directory. See %s" : "Zwykle można to rozwiązać nadając serwerowi www uprawnienia do zapisu w katalogu konfiguracji. Zobacz %s",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it. See %s" : "Lub, jeśli wolisz zachować plik config.php tylko do odczytu, ustaw w nim opcję \"config_is_read_only\" na true. Patrz %s",
"The files of the app %$1s were not replaced correctly. Make sure it is a version compatible with the server." : "Pliki aplikacji %1$s nie zostały zastąpione prawidłowo. Upewnij się, że to jest wersja kompatybilna z serwerem.",
"Sample configuration detected" : "Wykryto przykładową konfigurację",
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "Wykryto skopiowanie przykładowej konfiguracji. To może popsuć Twoją instalację i nie jest wspierane. Proszę przeczytać dokumentację przed dokonywaniem zmian w config.php",
@@ -27,6 +29,7 @@ OC.L10N.register(
"Following platforms are supported: %s" : "Obsługiwane są następujące platformy: %s",
"Server version %s or higher is required." : "Wersja serwera %s lub wyższa jest wymagana.",
"Server version %s or lower is required." : "Wersja serwera %s lub niższa jest wymagana.",
+ "Logged in user must be an admin" : "Zalogowany użytkownik musi być administratorem",
"Unknown filetype" : "Nieznany typ pliku",
"Invalid image" : "Błędne zdjęcie",
"Avatar image is not square" : "Obraz awataru nie jest kwadratowy",
@@ -63,11 +66,15 @@ OC.L10N.register(
"Create" : "Utwórz",
"Change" : "Zmień",
"Delete" : "Usuń",
+ "Share" : "Udział",
+ "Overview" : "Przegląd",
"Basic settings" : "Ustawienia podstawowe",
"Sharing" : "Udostępnianie",
"Security" : "Bepieczeństwo",
+ "Groupware" : "Praca grupowa",
"Additional settings" : "Ustawienia dodatkowe",
"Personal info" : "Informacje Osobiste",
+ "Mobile & desktop" : "Mobilne i stacjonarne",
"Unlimited" : "Nielimitowane",
"Verifying" : "Weryfikacja",
"Verifying …" : "Weryfikacja…",
@@ -113,7 +120,11 @@ OC.L10N.register(
"Sharing %s failed, because resharing is not allowed" : "Współdzielenie %s nie powiodło się, ponieważ ponowne współdzielenie nie jest dozwolone",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Współdzielenie %s nie powiodło się, ponieważ zaplecze współdzielenia dla %s nie mogło znaleźć jego źródła",
"Sharing %s failed, because the file could not be found in the file cache" : "Współdzielenie %s nie powiodło się, ponieważ plik nie może zostać odnaleziony w buforze plików",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s współdzieli »%2$s« z Tobą i chce dodać: ",
+ "%1$s shared »%2$s« with you and wants to add" : " %1$s współdzieli »%2$s« z Tobą i chce dodać",
+ "»%s« added a note to a file shared with you" : "»%s« dodał notatkę do pliku współdzielonego z Tobą",
"Open »%s«" : "Otwórz »%s«",
+ "%1$s via %2$s" : "%1$s przez %2$s",
"Can’t increase permissions of %s" : "Nie można zwiększyć praw dla 1%s",
"Files can’t be shared with delete permissions" : "Pliki nie mogą zostać udostępnione z prawem do usuwania",
"Files can’t be shared with create permissions" : "Pliki nie mogą zostać udostępnione z prawem do tworzenia",
@@ -215,16 +226,35 @@ OC.L10N.register(
"Check the value of \"datadirectory\" in your configuration" : "Sprawdź wartość \"datadirectory\" w swojej konfiguracji",
"Your data directory is invalid" : "Twój katalog z danymi jest nieprawidłowy",
"Ensure there is a file called \".ocdata\" in the root of the data directory." : "Upewnij się, że istnieje plik \".ocdata\" w katalogu z danymi, data/",
+ "Action \"%s\" not supported or implemented." : "Akcja \"%s\" jest niewspierana lub niezaimplementowana.",
+ "Authentication failed, wrong token or provider ID given" : "Uwierzytelnienie nie powiodło się, podano nieprawidłowy token lub ID dostawcy",
+ "Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Brakujące parametry dla ukończenia żądania. Brakujące parametry: \"%s\"",
+ "ID \"%s\" already used by cloud federation provider \"%s\"" : "ID \"%s\" jest już używane przez Cloud Federation Provider \"%s\"",
+ "Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud Federation Provider o ID: \"%s\" nie istnieje.",
"Could not obtain lock type %d on \"%s\"." : "Nie można uzyskać blokady typu %d na \"%s\".",
"Storage unauthorized. %s" : "Magazyn nieautoryzowany. %s",
"Storage incomplete configuration. %s" : "Niekompletna konfiguracja magazynu. %s",
"Storage connection error. %s" : "Błąd połączenia z magazynem. %s",
"Storage is temporarily not available" : "Magazyn jest tymczasowo niedostępny",
"Storage connection timeout. %s" : "Limit czasu połączenia do magazynu został przekroczony. %s",
+ "Personal" : "Osobiste",
+ "Admin" : "Administrator",
"APCu" : "APCu",
"Redis" : "Redis",
"Encryption" : "Szyfrowanie",
"Tips & tricks" : "Porady i wskazówki",
+ "DB Error: \"%s\"" : "Błąd bazy danych: \"%s\"",
+ "Offending command was: \"%s\"" : "Błędne polecenie to: \"%s\"",
+ "Offending command was: \"%s\", name: %s, password: %s" : "Błędne polecenie to: \"%s\", nazwa: %s, hasło: %s",
+ "Setting permissions for %s failed, because the permissions exceed permissions granted to %s" : "Ustawienie uprawnień dla %s nie powiodło się, ponieważ uprawnienia wykraczają poza przydzielone %s",
+ "Setting permissions for %s failed, because the item was not found" : "Ustawienie uprawnień dla %s nie powiodło się, ponieważ element nie został znaleziony",
+ "Cannot clear expiration date. Shares are required to have an expiration date." : "Nie można wyczyścić daty wygaśnięcia. Współudziały muszą posiadać datę wygaśnięcia.",
+ "Cannot increase permissions of %s" : "Nie można zwiększyć uprawnienia %s",
+ "Files can't be shared with delete permissions" : "Pliki nie mogą być współdzielone z uprawnieniami kasowania",
+ "Files can't be shared with create permissions" : "Pliki nie mogą być współdzielone z uprawnieniami tworzenia",
+ "Cannot set expiration date more than %s days in the future" : "Nie można utworzyć daty wygaśnięcia na %s dni do przodu",
+ "No app name specified" : "Nie określono nazwy aplikacji",
+ "App '%s' could not be installed!" : "Aplikacja '%s' nie mogła zostać zainstalowana!",
"Sync clients" : "Synchronizuj z klientami"
},
"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);");
diff --git a/lib/l10n/pl.json b/lib/l10n/pl.json
index 511115dd20b..864e51306a9 100644
--- a/lib/l10n/pl.json
+++ b/lib/l10n/pl.json
@@ -2,7 +2,9 @@
"Cannot write into \"config\" directory!" : "Nie można zapisać do katalogu \"config\"!",
"This can usually be fixed by giving the webserver write access to the config directory" : "Można to zwykle rozwiązać przez dodanie serwerowi www uprawnień zapisu do katalogu config.",
"See %s" : "Zobacz %s",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it." : "Lub, jeśli wolisz zachować plik config.php tylko do odczytu, ustaw w nim opcję \"config_is_read_only\" na true.",
"This can usually be fixed by giving the webserver write access to the config directory. See %s" : "Zwykle można to rozwiązać nadając serwerowi www uprawnienia do zapisu w katalogu konfiguracji. Zobacz %s",
+ "Or, if you prefer to keep config.php file read only, set the option \"config_is_read_only\" to true in it. See %s" : "Lub, jeśli wolisz zachować plik config.php tylko do odczytu, ustaw w nim opcję \"config_is_read_only\" na true. Patrz %s",
"The files of the app %$1s were not replaced correctly. Make sure it is a version compatible with the server." : "Pliki aplikacji %1$s nie zostały zastąpione prawidłowo. Upewnij się, że to jest wersja kompatybilna z serwerem.",
"Sample configuration detected" : "Wykryto przykładową konfigurację",
"It has been detected that the sample configuration has been copied. This can break your installation and is unsupported. Please read the documentation before performing changes on config.php" : "Wykryto skopiowanie przykładowej konfiguracji. To może popsuć Twoją instalację i nie jest wspierane. Proszę przeczytać dokumentację przed dokonywaniem zmian w config.php",
@@ -25,6 +27,7 @@
"Following platforms are supported: %s" : "Obsługiwane są następujące platformy: %s",
"Server version %s or higher is required." : "Wersja serwera %s lub wyższa jest wymagana.",
"Server version %s or lower is required." : "Wersja serwera %s lub niższa jest wymagana.",
+ "Logged in user must be an admin" : "Zalogowany użytkownik musi być administratorem",
"Unknown filetype" : "Nieznany typ pliku",
"Invalid image" : "Błędne zdjęcie",
"Avatar image is not square" : "Obraz awataru nie jest kwadratowy",
@@ -61,11 +64,15 @@
"Create" : "Utwórz",
"Change" : "Zmień",
"Delete" : "Usuń",
+ "Share" : "Udział",
+ "Overview" : "Przegląd",
"Basic settings" : "Ustawienia podstawowe",
"Sharing" : "Udostępnianie",
"Security" : "Bepieczeństwo",
+ "Groupware" : "Praca grupowa",
"Additional settings" : "Ustawienia dodatkowe",
"Personal info" : "Informacje Osobiste",
+ "Mobile & desktop" : "Mobilne i stacjonarne",
"Unlimited" : "Nielimitowane",
"Verifying" : "Weryfikacja",
"Verifying …" : "Weryfikacja…",
@@ -111,7 +118,11 @@
"Sharing %s failed, because resharing is not allowed" : "Współdzielenie %s nie powiodło się, ponieważ ponowne współdzielenie nie jest dozwolone",
"Sharing %s failed, because the sharing backend for %s could not find its source" : "Współdzielenie %s nie powiodło się, ponieważ zaplecze współdzielenia dla %s nie mogło znaleźć jego źródła",
"Sharing %s failed, because the file could not be found in the file cache" : "Współdzielenie %s nie powiodło się, ponieważ plik nie może zostać odnaleziony w buforze plików",
+ "%1$s shared »%2$s« with you and wants to add:" : "%1$s współdzieli »%2$s« z Tobą i chce dodać: ",
+ "%1$s shared »%2$s« with you and wants to add" : " %1$s współdzieli »%2$s« z Tobą i chce dodać",
+ "»%s« added a note to a file shared with you" : "»%s« dodał notatkę do pliku współdzielonego z Tobą",
"Open »%s«" : "Otwórz »%s«",
+ "%1$s via %2$s" : "%1$s przez %2$s",
"Can’t increase permissions of %s" : "Nie można zwiększyć praw dla 1%s",
"Files can’t be shared with delete permissions" : "Pliki nie mogą zostać udostępnione z prawem do usuwania",
"Files can’t be shared with create permissions" : "Pliki nie mogą zostać udostępnione z prawem do tworzenia",
@@ -213,16 +224,35 @@
"Check the value of \"datadirectory\" in your configuration" : "Sprawdź wartość \"datadirectory\" w swojej konfiguracji",
"Your data directory is invalid" : "Twój katalog z danymi jest nieprawidłowy",
"Ensure there is a file called \".ocdata\" in the root of the data directory." : "Upewnij się, że istnieje plik \".ocdata\" w katalogu z danymi, data/",
+ "Action \"%s\" not supported or implemented." : "Akcja \"%s\" jest niewspierana lub niezaimplementowana.",
+ "Authentication failed, wrong token or provider ID given" : "Uwierzytelnienie nie powiodło się, podano nieprawidłowy token lub ID dostawcy",
+ "Parameters missing in order to complete the request. Missing Parameters: \"%s\"" : "Brakujące parametry dla ukończenia żądania. Brakujące parametry: \"%s\"",
+ "ID \"%s\" already used by cloud federation provider \"%s\"" : "ID \"%s\" jest już używane przez Cloud Federation Provider \"%s\"",
+ "Cloud Federation Provider with ID: \"%s\" does not exist." : "Cloud Federation Provider o ID: \"%s\" nie istnieje.",
"Could not obtain lock type %d on \"%s\"." : "Nie można uzyskać blokady typu %d na \"%s\".",
"Storage unauthorized. %s" : "Magazyn nieautoryzowany. %s",
"Storage incomplete configuration. %s" : "Niekompletna konfiguracja magazynu. %s",
"Storage connection error. %s" : "Błąd połączenia z magazynem. %s",
"Storage is temporarily not available" : "Magazyn jest tymczasowo niedostępny",
"Storage connection timeout. %s" : "Limit czasu połączenia do magazynu został przekroczony. %s",
+ "Personal" : "Osobiste",
+ "Admin" : "Administrator",
"APCu" : "APCu",
"Redis" : "Redis",
"Encryption" : "Szyfrowanie",
"Tips & tricks" : "Porady i wskazówki",
+ "DB Error: \"%s\"" : "Błąd bazy danych: \"%s\"",
+ "Offending command was: \"%s\"" : "Błędne polecenie to: \"%s\"",
+ "Offending command was: \"%s\", name: %s, password: %s" : "Błędne polecenie to: \"%s\", nazwa: %s, hasło: %s",
+ "Setting permissions for %s failed, because the permissions exceed permissions granted to %s" : "Ustawienie uprawnień dla %s nie powiodło się, ponieważ uprawnienia wykraczają poza przydzielone %s",
+ "Setting permissions for %s failed, because the item was not found" : "Ustawienie uprawnień dla %s nie powiodło się, ponieważ element nie został znaleziony",
+ "Cannot clear expiration date. Shares are required to have an expiration date." : "Nie można wyczyścić daty wygaśnięcia. Współudziały muszą posiadać datę wygaśnięcia.",
+ "Cannot increase permissions of %s" : "Nie można zwiększyć uprawnienia %s",
+ "Files can't be shared with delete permissions" : "Pliki nie mogą być współdzielone z uprawnieniami kasowania",
+ "Files can't be shared with create permissions" : "Pliki nie mogą być współdzielone z uprawnieniami tworzenia",
+ "Cannot set expiration date more than %s days in the future" : "Nie można utworzyć daty wygaśnięcia na %s dni do przodu",
+ "No app name specified" : "Nie określono nazwy aplikacji",
+ "App '%s' could not be installed!" : "Aplikacja '%s' nie mogła zostać zainstalowana!",
"Sync clients" : "Synchronizuj z klientami"
},"pluralForm" :"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"
} \ No newline at end of file
diff --git a/lib/l10n/sl.js b/lib/l10n/sl.js
index 3c90a1f7a3a..dd4f276c280 100644
--- a/lib/l10n/sl.js
+++ b/lib/l10n/sl.js
@@ -41,11 +41,18 @@ OC.L10N.register(
"App \"%s\" cannot be installed because appinfo file cannot be read." : "Programa \\\"%s\\\" ni mogoče namestiti, ker ni mogoče brati datoteke appinfo.",
"App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Programa »%s« ni mogoče namestiti, ker ni združljiv z nameščeno različico strežnika.",
"__language_name__" : "Slovenščina",
+ "Help" : "Pomoč",
"Apps" : "Programi",
+ "Settings" : "Nastavitve",
+ "Log out" : "Odjava",
"Users" : "Uporabniki",
"Unknown user" : "Neznan uporabnik",
+ "Overview" : "Splošni pregled",
"Basic settings" : "Osnovne nastavitve",
+ "Sharing" : "Souporaba",
"Security" : "Varnost",
+ "Additional settings" : "Dodatne nastavitve",
+ "Personal info" : "Osebni podatki",
"%s enter the database username and name." : "%s - vnos uporabniškega imena in imena podatkovne zbirke.",
"%s enter the database username." : "%s - vnos uporabniškega imena podatkovne zbirke.",
"%s enter the database name." : "%s - vnos imena podatkovne zbirke.",
@@ -98,7 +105,7 @@ OC.L10N.register(
"User disabled" : "Uporabnik je onemogočen",
"Login canceled by app" : "Aplikacija je prijavo prekinila.",
"App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Programa \"%s\" ni mogoče namestiti zaradi nerešenih odvisnosti: %s",
- "a safe home for all your data" : "varen dom za vse vaše podatke",
+ "a safe home for all your data" : "Varno okolje za vse vaše podatke!",
"File is currently busy, please try again later" : "Datoteka je trenutno v uporabi. Poskusite znova kasneje.",
"Can't read file" : "Datoteke ni mogoče prebrati.",
"Application is not enabled" : "Program ni omogočen",
@@ -129,7 +136,9 @@ OC.L10N.register(
"Storage unauthorized. %s" : "Dostop do shrambe ni overjen. %s",
"Storage incomplete configuration. %s" : "Nepopolna nastavitev shrambe. %s",
"Storage connection error. %s" : "Napaka povezave do shrambe. %s",
+ "Storage is temporarily not available" : "Shramba trenutno ni na voljo",
"Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s",
+ "Personal" : "Osebno",
"Tips & tricks" : "Triki in nasveti"
},
"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);");
diff --git a/lib/l10n/sl.json b/lib/l10n/sl.json
index 86ebbe50369..8654eed0508 100644
--- a/lib/l10n/sl.json
+++ b/lib/l10n/sl.json
@@ -39,11 +39,18 @@
"App \"%s\" cannot be installed because appinfo file cannot be read." : "Programa \\\"%s\\\" ni mogoče namestiti, ker ni mogoče brati datoteke appinfo.",
"App \"%s\" cannot be installed because it is not compatible with this version of the server." : "Programa »%s« ni mogoče namestiti, ker ni združljiv z nameščeno različico strežnika.",
"__language_name__" : "Slovenščina",
+ "Help" : "Pomoč",
"Apps" : "Programi",
+ "Settings" : "Nastavitve",
+ "Log out" : "Odjava",
"Users" : "Uporabniki",
"Unknown user" : "Neznan uporabnik",
+ "Overview" : "Splošni pregled",
"Basic settings" : "Osnovne nastavitve",
+ "Sharing" : "Souporaba",
"Security" : "Varnost",
+ "Additional settings" : "Dodatne nastavitve",
+ "Personal info" : "Osebni podatki",
"%s enter the database username and name." : "%s - vnos uporabniškega imena in imena podatkovne zbirke.",
"%s enter the database username." : "%s - vnos uporabniškega imena podatkovne zbirke.",
"%s enter the database name." : "%s - vnos imena podatkovne zbirke.",
@@ -96,7 +103,7 @@
"User disabled" : "Uporabnik je onemogočen",
"Login canceled by app" : "Aplikacija je prijavo prekinila.",
"App \"%s\" cannot be installed because the following dependencies are not fulfilled: %s" : "Programa \"%s\" ni mogoče namestiti zaradi nerešenih odvisnosti: %s",
- "a safe home for all your data" : "varen dom za vse vaše podatke",
+ "a safe home for all your data" : "Varno okolje za vse vaše podatke!",
"File is currently busy, please try again later" : "Datoteka je trenutno v uporabi. Poskusite znova kasneje.",
"Can't read file" : "Datoteke ni mogoče prebrati.",
"Application is not enabled" : "Program ni omogočen",
@@ -127,7 +134,9 @@
"Storage unauthorized. %s" : "Dostop do shrambe ni overjen. %s",
"Storage incomplete configuration. %s" : "Nepopolna nastavitev shrambe. %s",
"Storage connection error. %s" : "Napaka povezave do shrambe. %s",
+ "Storage is temporarily not available" : "Shramba trenutno ni na voljo",
"Storage connection timeout. %s" : "Povezava do shrambe je časovno potekla. %s",
+ "Personal" : "Osebno",
"Tips & tricks" : "Triki in nasveti"
},"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"
} \ No newline at end of file
diff --git a/lib/l10n/sv.js b/lib/l10n/sv.js
index bcef177aba8..cbbe01b8443 100644
--- a/lib/l10n/sv.js
+++ b/lib/l10n/sv.js
@@ -65,11 +65,18 @@ OC.L10N.register(
"Log out" : "Logga ut",
"Users" : "Användare",
"Unknown user" : "Okänd användare",
+ "Create" : "Skapa",
+ "Change" : "Ändra",
+ "Delete" : "Radera",
+ "Share" : "Dela",
+ "Overview" : "Översikt",
"Basic settings" : "Generella inställningar",
"Sharing" : "Delning",
"Security" : "Säkerhet",
+ "Groupware" : "Grupprogram",
"Additional settings" : "Övriga inställningar",
"Personal info" : "Personlig information",
+ "Mobile & desktop" : "Mobil & desktop",
"Unlimited" : "Obegränsad",
"Verifying" : "Verifierar",
"Verifying …" : "Verifierar ...",
@@ -227,6 +234,7 @@ OC.L10N.register(
"Redis" : "Redis",
"Encryption" : "Kryptering",
"Tips & tricks" : "Tips & tricks",
+ "Cannot set expiration date more than %s days in the future" : "Kan inte sätta ett utgångsdatum längre fram än %s dagar",
"Sync clients" : "Synkklienter"
},
"nplurals=2; plural=(n != 1);");
diff --git a/lib/l10n/sv.json b/lib/l10n/sv.json
index 1e90ff6a00d..f6cef3d3a77 100644
--- a/lib/l10n/sv.json
+++ b/lib/l10n/sv.json
@@ -63,11 +63,18 @@
"Log out" : "Logga ut",
"Users" : "Användare",
"Unknown user" : "Okänd användare",
+ "Create" : "Skapa",
+ "Change" : "Ändra",
+ "Delete" : "Radera",
+ "Share" : "Dela",
+ "Overview" : "Översikt",
"Basic settings" : "Generella inställningar",
"Sharing" : "Delning",
"Security" : "Säkerhet",
+ "Groupware" : "Grupprogram",
"Additional settings" : "Övriga inställningar",
"Personal info" : "Personlig information",
+ "Mobile & desktop" : "Mobil & desktop",
"Unlimited" : "Obegränsad",
"Verifying" : "Verifierar",
"Verifying …" : "Verifierar ...",
@@ -225,6 +232,7 @@
"Redis" : "Redis",
"Encryption" : "Kryptering",
"Tips & tricks" : "Tips & tricks",
+ "Cannot set expiration date more than %s days in the future" : "Kan inte sätta ett utgångsdatum längre fram än %s dagar",
"Sync clients" : "Synkklienter"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/lib/l10n/zh_CN.js b/lib/l10n/zh_CN.js
index 76654275c63..42ee025ef11 100644
--- a/lib/l10n/zh_CN.js
+++ b/lib/l10n/zh_CN.js
@@ -76,6 +76,7 @@ OC.L10N.register(
"Security" : "安全",
"Additional settings" : "其他设置",
"Personal info" : "个人信息",
+ "Mobile & desktop" : "移动 & 桌面",
"Unlimited" : "无限制",
"Verifying" : "验证",
"Verifying …" : "验证...",
@@ -223,6 +224,7 @@ OC.L10N.register(
"Check the value of \"datadirectory\" in your configuration" : "请检查配置文件中 \"datadirectory\" 的值",
"Your data directory is invalid" : "您的数据目录无效",
"Ensure there is a file called \".ocdata\" in the root of the data directory." : "请确定在根目录下有一个名为\".ocdata\"的文件。",
+ "Action \"%s\" not supported or implemented." : "操作 \"%s\" 不支持或未实现.",
"Could not obtain lock type %d on \"%s\"." : "无法在 \"%s\" 上获取锁类型 %d.",
"Storage unauthorized. %s" : "存储认证失败. %s",
"Storage incomplete configuration. %s" : "存储未完成配置. %s",
@@ -230,12 +232,15 @@ OC.L10N.register(
"Storage is temporarily not available" : "存储暂时不可用",
"Storage connection timeout. %s" : "存储连接超时. %s",
"Personal" : "个人",
+ "Admin" : "管理员",
"APCu" : "APCu",
"Redis" : "Redis",
"Encryption" : "加密",
"Tips & tricks" : "小提示",
"DB Error: \"%s\"" : "数据库错误:\"%s\"",
+ "Cannot increase permissions of %s" : "无法增加 %s 的权限",
"No app name specified" : "没有指定的 App 名称",
+ "App '%s' could not be installed!" : "应用 '%s' 无法被安装!",
"Sync clients" : "同步客户"
},
"nplurals=1; plural=0;");
diff --git a/lib/l10n/zh_CN.json b/lib/l10n/zh_CN.json
index a8b91d21d03..7f95b6c314c 100644
--- a/lib/l10n/zh_CN.json
+++ b/lib/l10n/zh_CN.json
@@ -74,6 +74,7 @@
"Security" : "安全",
"Additional settings" : "其他设置",
"Personal info" : "个人信息",
+ "Mobile & desktop" : "移动 & 桌面",
"Unlimited" : "无限制",
"Verifying" : "验证",
"Verifying …" : "验证...",
@@ -221,6 +222,7 @@
"Check the value of \"datadirectory\" in your configuration" : "请检查配置文件中 \"datadirectory\" 的值",
"Your data directory is invalid" : "您的数据目录无效",
"Ensure there is a file called \".ocdata\" in the root of the data directory." : "请确定在根目录下有一个名为\".ocdata\"的文件。",
+ "Action \"%s\" not supported or implemented." : "操作 \"%s\" 不支持或未实现.",
"Could not obtain lock type %d on \"%s\"." : "无法在 \"%s\" 上获取锁类型 %d.",
"Storage unauthorized. %s" : "存储认证失败. %s",
"Storage incomplete configuration. %s" : "存储未完成配置. %s",
@@ -228,12 +230,15 @@
"Storage is temporarily not available" : "存储暂时不可用",
"Storage connection timeout. %s" : "存储连接超时. %s",
"Personal" : "个人",
+ "Admin" : "管理员",
"APCu" : "APCu",
"Redis" : "Redis",
"Encryption" : "加密",
"Tips & tricks" : "小提示",
"DB Error: \"%s\"" : "数据库错误:\"%s\"",
+ "Cannot increase permissions of %s" : "无法增加 %s 的权限",
"No app name specified" : "没有指定的 App 名称",
+ "App '%s' could not be installed!" : "应用 '%s' 无法被安装!",
"Sync clients" : "同步客户"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/lib/private/AppFramework/Utility/SimpleContainer.php b/lib/private/AppFramework/Utility/SimpleContainer.php
index e96f24ed284..47a6f95f747 100644
--- a/lib/private/AppFramework/Utility/SimpleContainer.php
+++ b/lib/private/AppFramework/Utility/SimpleContainer.php
@@ -66,13 +66,7 @@ class SimpleContainer extends Container implements IContainer {
try {
$parameters[] = $this->query($resolveName);
- } catch (\Exception $e) {
- if (class_exists('PHPUnit_Framework_AssertionFailedError', false) &&
- $e instanceof \PHPUnit_Framework_AssertionFailedError) {
- // Easier debugging of "Your test case is not allowed to access the database."
- throw $e;
- }
-
+ } catch (QueryException $e) {
// Service not found, use the default value when available
if ($parameter->isDefaultValueAvailable()) {
$parameters[] = $parameter->getDefaultValue();
diff --git a/lib/private/Authentication/Exceptions/InvalidProviderException.php b/lib/private/Authentication/Exceptions/InvalidProviderException.php
new file mode 100644
index 00000000000..6cdd0947509
--- /dev/null
+++ b/lib/private/Authentication/Exceptions/InvalidProviderException.php
@@ -0,0 +1,38 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OC\Authentication\Exceptions;
+
+use Exception;
+use Throwable;
+
+class InvalidProviderException extends Exception {
+
+ public function __construct(string $providerId, Throwable $previous = null) {
+ parent::__construct("The provider '$providerId' does not exist'", 0, $previous);
+ }
+
+}
diff --git a/lib/private/Authentication/Token/DefaultTokenProvider.php b/lib/private/Authentication/Token/DefaultTokenProvider.php
index 8c2d8c33a97..ad45303fa7c 100644
--- a/lib/private/Authentication/Token/DefaultTokenProvider.php
+++ b/lib/private/Authentication/Token/DefaultTokenProvider.php
@@ -184,7 +184,7 @@ class DefaultTokenProvider implements IProvider {
throw new InvalidTokenException();
}
- if ($token->getExpires() !== null && $token->getExpires() < $this->time->getTime()) {
+ if ((int)$token->getExpires() !== 0 && $token->getExpires() < $this->time->getTime()) {
throw new ExpiredTokenException($token);
}
diff --git a/lib/private/Authentication/Token/PublicKeyTokenProvider.php b/lib/private/Authentication/Token/PublicKeyTokenProvider.php
index 73bd7a711dc..7e98ee939ce 100644
--- a/lib/private/Authentication/Token/PublicKeyTokenProvider.php
+++ b/lib/private/Authentication/Token/PublicKeyTokenProvider.php
@@ -80,7 +80,7 @@ class PublicKeyTokenProvider implements IProvider {
throw new InvalidTokenException();
}
- if ($token->getExpires() !== null && $token->getExpires() !== 0 && $token->getExpires() < $this->time->getTime()) {
+ if ((int)$token->getExpires() !== 0 && $token->getExpires() < $this->time->getTime()) {
throw new ExpiredTokenException($token);
}
@@ -94,7 +94,7 @@ class PublicKeyTokenProvider implements IProvider {
throw new InvalidTokenException();
}
- if ($token->getExpires() !== null && $token->getExpires() < $this->time->getTime()) {
+ if ((int)$token->getExpires() !== 0 && $token->getExpires() < $this->time->getTime()) {
throw new ExpiredTokenException($token);
}
@@ -287,10 +287,10 @@ class PublicKeyTokenProvider implements IProvider {
$dbToken->setUid($uid);
$dbToken->setLoginName($loginName);
- $config = [
+ $config = array_merge([
'digest_alg' => 'sha512',
'private_key_bits' => 2048,
- ];
+ ], $this->config->getSystemValue('openssl', []));
// Generate new key
$res = openssl_pkey_new($config);
diff --git a/lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php b/lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php
index ce03eb09661..d8299a335a3 100644
--- a/lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php
+++ b/lib/private/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDao.php
@@ -93,4 +93,13 @@ class ProviderUserAssignmentDao {
}
+ public function deleteAll(string $providerId) {
+ $qb = $this->conn->getQueryBuilder();
+
+ $deleteQuery = $qb->delete(self::TABLE_NAME)
+ ->where($qb->expr()->eq('provider_id', $qb->createNamedParameter($providerId)));
+
+ $deleteQuery->execute();
+ }
+
}
diff --git a/lib/private/Authentication/TwoFactorAuth/Manager.php b/lib/private/Authentication/TwoFactorAuth/Manager.php
index 6fa41897e1e..71cc5874e5d 100644
--- a/lib/private/Authentication/TwoFactorAuth/Manager.php
+++ b/lib/private/Authentication/TwoFactorAuth/Manager.php
@@ -100,12 +100,6 @@ class Manager {
* @return boolean
*/
public function isTwoFactorAuthenticated(IUser $user): bool {
- $twoFactorEnabled = ((int) $this->config->getUserValue($user->getUID(), 'core', 'two_factor_auth_disabled', 0)) === 0;
-
- if (!$twoFactorEnabled) {
- return false;
- }
-
$providerStates = $this->providerRegistry->getProviderStates($user);
$providers = $this->providerLoader->getProviders($user);
$fixedStates = $this->fixMissingProviderStates($providerStates, $providers, $user);
@@ -113,25 +107,7 @@ class Manager {
$providerIds = array_keys($enabled);
$providerIdsWithoutBackupCodes = array_diff($providerIds, [self::BACKUP_CODES_PROVIDER_ID]);
- return $twoFactorEnabled && !empty($providerIdsWithoutBackupCodes);
- }
-
- /**
- * Disable 2FA checks for the given user
- *
- * @param IUser $user
- */
- public function disableTwoFactorAuthentication(IUser $user) {
- $this->config->setUserValue($user->getUID(), 'core', 'two_factor_auth_disabled', 1);
- }
-
- /**
- * Enable all 2FA checks for the given user
- *
- * @param IUser $user
- */
- public function enableTwoFactorAuthentication(IUser $user) {
- $this->config->deleteUserValue($user->getUID(), 'core', 'two_factor_auth_disabled');
+ return !empty($providerIdsWithoutBackupCodes);
}
/**
diff --git a/lib/private/Authentication/TwoFactorAuth/ProviderManager.php b/lib/private/Authentication/TwoFactorAuth/ProviderManager.php
new file mode 100644
index 00000000000..234085b062d
--- /dev/null
+++ b/lib/private/Authentication/TwoFactorAuth/ProviderManager.php
@@ -0,0 +1,98 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OC\Authentication\TwoFactorAuth;
+
+use OC\Authentication\Exceptions\InvalidProviderException;
+use OCP\Authentication\TwoFactorAuth\IActivatableByAdmin;
+use OCP\Authentication\TwoFactorAuth\IDeactivableByAdmin;
+use OCP\Authentication\TwoFactorAuth\IDeactivatableByAdmin;
+use OCP\Authentication\TwoFactorAuth\IProvider;
+use OCP\Authentication\TwoFactorAuth\IRegistry;
+use OCP\IUser;
+
+class ProviderManager {
+
+ /** @var ProviderLoader */
+ private $providerLoader;
+
+ /** @var IRegistry */
+ private $providerRegistry;
+
+ public function __construct(ProviderLoader $providerLoader, IRegistry $providerRegistry) {
+ $this->providerLoader = $providerLoader;
+ $this->providerRegistry = $providerRegistry;
+ }
+
+ private function getProvider(string $providerId, IUser $user): IProvider {
+ $providers = $this->providerLoader->getProviders($user);
+
+ if (!isset($providers[$providerId])) {
+ throw new InvalidProviderException($providerId);
+ }
+
+ return $providers[$providerId];
+ }
+
+ /**
+ * Try to enable the provider with the given id for the given user
+ *
+ * @param IUser $user
+ *
+ * @return bool whether the provider supports this operation
+ */
+ public function tryEnableProviderFor(string $providerId, IUser $user): bool {
+ $provider = $this->getProvider($providerId, $user);
+
+ if ($provider instanceof IActivatableByAdmin) {
+ $provider->enableFor($user);
+ $this->providerRegistry->enableProviderFor($provider, $user);
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * Try to disable the provider with the given id for the given user
+ *
+ * @param IUser $user
+ *
+ * @return bool whether the provider supports this operation
+ */
+ public function tryDisableProviderFor(string $providerId, IUser $user): bool {
+ $provider = $this->getProvider($providerId, $user);
+
+ if ($provider instanceof IDeactivatableByAdmin) {
+ $provider->disableFor($user);
+ $this->providerRegistry->disableProviderFor($provider, $user);
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+}
diff --git a/lib/private/Authentication/TwoFactorAuth/Registry.php b/lib/private/Authentication/TwoFactorAuth/Registry.php
index 0cfb052440e..2fc90e5d6d9 100644
--- a/lib/private/Authentication/TwoFactorAuth/Registry.php
+++ b/lib/private/Authentication/TwoFactorAuth/Registry.php
@@ -52,4 +52,7 @@ class Registry implements IRegistry {
$this->assignmentDao->persist($provider->getId(), $user->getUID(), 0);
}
+ public function cleanUp(string $providerId) {
+ $this->assignmentDao->deleteAll($providerId);
+ }
}
diff --git a/lib/private/L10N/Factory.php b/lib/private/L10N/Factory.php
index cc2de174509..1c56949c40d 100644
--- a/lib/private/L10N/Factory.php
+++ b/lib/private/L10N/Factory.php
@@ -245,6 +245,25 @@ class Factory implements IFactory {
}
/**
+ * find the matching lang from the locale
+ *
+ * @param string $app
+ * @param string $locale
+ * @return null|string
+ */
+ public function findLanguageFromLocale(string $app = 'core', string $locale = null) {
+ if ($this->languageExists($app, $locale)) {
+ return $locale;
+ }
+
+ // Try to split e.g: fr_FR => fr
+ $locale = explode('_', $locale)[0];
+ if ($this->languageExists($app, $locale)) {
+ return $locale;
+ }
+ }
+
+ /**
* Find all available languages for an app
*
* @param string|null $app App id or null for core
diff --git a/lib/private/Template/IconsCacher.php b/lib/private/Template/IconsCacher.php
index 070c7c3da51..f3660442dc5 100644
--- a/lib/private/Template/IconsCacher.php
+++ b/lib/private/Template/IconsCacher.php
@@ -47,7 +47,7 @@ class IconsCacher {
protected $urlGenerator;
/** @var string */
- private $iconVarRE = '/--(icon-[a-zA-Z0-9-]+): url\(["\']([a-zA-Z0-9-_\~\/\.\?\=]+)[^;]+;/m';
+ private $iconVarRE = '/--(icon-[a-zA-Z0-9-]+):\s?url\(["\']([a-zA-Z0-9-_\~\/\.\?\=]+)[^;]+;/m';
/** @var string */
private $fileName = 'icons-vars.css';
diff --git a/lib/private/TemplateLayout.php b/lib/private/TemplateLayout.php
index 0bd57c4139b..316e122e2c9 100644
--- a/lib/private/TemplateLayout.php
+++ b/lib/private/TemplateLayout.php
@@ -139,9 +139,12 @@ class TemplateLayout extends \OC_Template {
}
// Send the language and the locale to our layouts
$lang = \OC::$server->getL10NFactory()->findLanguage();
+ $locale = \OC::$server->getL10NFactory()->findLocale($lang);
+ $localeLang = \OC::$server->getL10NFactory()->findLanguageFromLocale('lib', $locale);
+
$lang = str_replace('_', '-', $lang);
$this->assign('language', $lang);
- $this->assign('locale', \OC::$server->getL10NFactory()->findLocale($lang));
+ $this->assign('locale', $locale);
if(\OC::$server->getSystemConfig()->getValue('installed', false)) {
if (empty(self::$versionHash)) {
@@ -159,7 +162,7 @@ class TemplateLayout extends \OC_Template {
if ($this->config->getSystemValue('installed', false) && $renderAs != 'error') {
if (\OC::$server->getContentSecurityPolicyNonceManager()->browserSupportsCspV3()) {
$jsConfigHelper = new JSConfigHelper(
- \OC::$server->getL10N('lib'),
+ \OC::$server->getL10N('lib', $localeLang ?: $lang),
\OC::$server->query(Defaults::class),
\OC::$server->getAppManager(),
\OC::$server->getSession(),
diff --git a/lib/private/legacy/user.php b/lib/private/legacy/user.php
index ebb1ff2215b..e006a59771a 100644
--- a/lib/private/legacy/user.php
+++ b/lib/private/legacy/user.php
@@ -166,7 +166,7 @@ class OC_User {
$uid = $backend->getCurrentUserId();
$run = true;
- OC_Hook::emit("OC_User", "pre_login", array("run" => &$run, "uid" => $uid));
+ OC_Hook::emit("OC_User", "pre_login", array("run" => &$run, "uid" => $uid, 'backend' => $backend));
if ($uid) {
if (self::getUser() !== $uid) {
diff --git a/lib/public/Authentication/TwoFactorAuth/IActivatableByAdmin.php b/lib/public/Authentication/TwoFactorAuth/IActivatableByAdmin.php
new file mode 100644
index 00000000000..101beb98db1
--- /dev/null
+++ b/lib/public/Authentication/TwoFactorAuth/IActivatableByAdmin.php
@@ -0,0 +1,51 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OCP\Authentication\TwoFactorAuth;
+
+use OCP\IUser;
+
+/**
+ * Marks a 2FA provider as activatable by the administrator. This means that an
+ * admin can activate this provider without user interaction. The provider,
+ * therefore, must not require any user-provided configuration.
+ *
+ * @since 15.0.0
+ */
+interface IActivatableByAdmin extends IProvider {
+
+ /**
+ * Enable this provider for the given user.
+ *
+ * @param IUser $user the user to active this provider for
+ *
+ * @return void
+ *
+ * @since 15.0.0
+ */
+ public function enableFor(IUser $user);
+
+}
diff --git a/lib/public/Authentication/TwoFactorAuth/IDeactivatableByAdmin.php b/lib/public/Authentication/TwoFactorAuth/IDeactivatableByAdmin.php
new file mode 100644
index 00000000000..c08a7c617c1
--- /dev/null
+++ b/lib/public/Authentication/TwoFactorAuth/IDeactivatableByAdmin.php
@@ -0,0 +1,51 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace OCP\Authentication\TwoFactorAuth;
+
+use OCP\IUser;
+
+/**
+ * Marks a 2FA provider as activale by the administrator. This means that an
+ * admin can activate this provider without user interaction. The provider,
+ * therefore, must not require any user-provided configuration.
+ *
+ * @since 15.0.0
+ */
+interface IDeactivatableByAdmin extends IProvider {
+
+ /**
+ * Disable this provider for the given user.
+ *
+ * @param IUser $user the user to active this provider for
+ *
+ * @return void
+ *
+ * @since 15.0.0
+ */
+ public function disableFor(IUser $user);
+
+}
diff --git a/lib/public/Authentication/TwoFactorAuth/IRegistry.php b/lib/public/Authentication/TwoFactorAuth/IRegistry.php
index 5013892d402..5d97c57bcf2 100644
--- a/lib/public/Authentication/TwoFactorAuth/IRegistry.php
+++ b/lib/public/Authentication/TwoFactorAuth/IRegistry.php
@@ -62,4 +62,19 @@ interface IRegistry {
* @since 14.0.0
*/
public function disableProviderFor(IProvider $provider, IUser $user);
+
+ /**
+ * Cleans up all entries of the provider with the given id. This is only
+ * necessary in edge-cases where an admin disabled and/or uninstalled a
+ * provider app. Invoking this method will make sure outdated provider
+ * associations are removed so that users can log in.
+ *
+ * @since 15.0.0
+ *
+ * @param string $providerId
+ *
+ * @return void
+ */
+ public function cleanUp(string $providerId);
+
}
diff --git a/lib/public/Federation/ICloudFederationProviderManager.php b/lib/public/Federation/ICloudFederationProviderManager.php
index f1e932388bf..ce961c45696 100644
--- a/lib/public/Federation/ICloudFederationProviderManager.php
+++ b/lib/public/Federation/ICloudFederationProviderManager.php
@@ -67,7 +67,7 @@ interface ICloudFederationProviderManager {
*
* @param string $resourceType
* @return ICloudFederationProvider
- * @throws Exceptions\ProviderDoesNotExistsException;
+ * @throws Exceptions\ProviderDoesNotExistsException
*
* @since 14.0.0
*/
diff --git a/lib/public/L10N/IFactory.php b/lib/public/L10N/IFactory.php
index 1bc231e4e2e..a11977f8c03 100644
--- a/lib/public/L10N/IFactory.php
+++ b/lib/public/L10N/IFactory.php
@@ -54,6 +54,16 @@ interface IFactory {
public function findLocale($lang = null);
/**
+ * find the matching lang from the locale
+ *
+ * @param string $app
+ * @param string $locale
+ * @return null|string
+ * @since 14.0.1
+ */
+ public function findLanguageFromLocale(string $app = 'core', string $locale = null);
+
+ /**
* Find all available languages for an app
*
* @param string|null $app App id or null for core
diff --git a/settings/Controller/CheckSetupController.php b/settings/Controller/CheckSetupController.php
index 9169808456f..851644a27d9 100644
--- a/settings/Controller/CheckSetupController.php
+++ b/settings/Controller/CheckSetupController.php
@@ -55,6 +55,7 @@ use OCP\ILogger;
use OCP\IRequest;
use OCP\IURLGenerator;
use OCP\Lock\ILockingProvider;
+use OCP\Security\ISecureRandom;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\EventDispatcher\GenericEvent;
@@ -86,6 +87,8 @@ class CheckSetupController extends Controller {
private $dateTimeFormatter;
/** @var MemoryInfo */
private $memoryInfo;
+ /** @var ISecureRandom */
+ private $secureRandom;
public function __construct($AppName,
IRequest $request,
@@ -100,7 +103,8 @@ class CheckSetupController extends Controller {
IDBConnection $db,
ILockingProvider $lockingProvider,
IDateTimeFormatter $dateTimeFormatter,
- MemoryInfo $memoryInfo) {
+ MemoryInfo $memoryInfo,
+ ISecureRandom $secureRandom) {
parent::__construct($AppName, $request);
$this->config = $config;
$this->clientService = $clientService;
@@ -114,6 +118,7 @@ class CheckSetupController extends Controller {
$this->lockingProvider = $lockingProvider;
$this->dateTimeFormatter = $dateTimeFormatter;
$this->memoryInfo = $memoryInfo;
+ $this->secureRandom = $secureRandom;
}
/**
@@ -167,20 +172,17 @@ class CheckSetupController extends Controller {
}
/**
- * Whether /dev/urandom is available to the PHP controller
+ * Whether PHP can generate "secure" pseudorandom integers
*
* @return bool
*/
- private function isUrandomAvailable() {
- if(@file_exists('/dev/urandom')) {
- $file = fopen('/dev/urandom', 'rb');
- if($file) {
- fclose($file);
- return true;
- }
+ private function isRandomnessSecure() {
+ try {
+ $this->secureRandom->generate(1);
+ } catch (\Exception $ex) {
+ return false;
}
-
- return false;
+ return true;
}
/**
@@ -543,7 +545,7 @@ Raw output
* @return array
*/
protected function getAppDirsWithDifferentOwner(): array {
- $currentUser = posix_getpwuid(posix_getuid());
+ $currentUser = posix_getuid();
$appDirsWithDifferentOwner = [[]];
foreach (OC::$APPSROOTS as $appRoot) {
@@ -561,11 +563,11 @@ Raw output
/**
* Tests if the directories for one apps directory are writable by the current user.
*
- * @param array $currentUser The current user
+ * @param int $currentUser The current user
* @param array $appRoot The app root config
* @return string[] The none writable directory paths inside the app root
*/
- private function getAppDirsWithDifferentOwnerForAppRoot(array $currentUser, array $appRoot): array {
+ private function getAppDirsWithDifferentOwnerForAppRoot(int $currentUser, array $appRoot): array {
$appDirsWithDifferentOwner = [];
$appsPath = $appRoot['path'];
$appsDir = new DirectoryIterator($appRoot['path']);
@@ -573,7 +575,7 @@ Raw output
foreach ($appsDir as $fileInfo) {
if ($fileInfo->isDir() && !$fileInfo->isDot()) {
$absAppPath = $appsPath . DIRECTORY_SEPARATOR . $fileInfo->getFilename();
- $appDirUser = posix_getpwuid(fileowner($absAppPath));
+ $appDirUser = fileowner($absAppPath);
if ($appDirUser !== $currentUser) {
$appDirsWithDifferentOwner[] = $absAppPath;
}
@@ -601,7 +603,7 @@ Raw output
'serverHasInternetConnection' => $this->isInternetConnectionWorking(),
'isMemcacheConfigured' => $this->isMemcacheConfigured(),
'memcacheDocs' => $this->urlGenerator->linkToDocs('admin-performance'),
- 'isUrandomAvailable' => $this->isUrandomAvailable(),
+ 'isRandomnessSecure' => $this->isRandomnessSecure(),
'securityDocs' => $this->urlGenerator->linkToDocs('admin-security'),
'isUsedTlsLibOutdated' => $this->isUsedTlsLibOutdated(),
'phpSupported' => $this->isPhpSupported(),
diff --git a/settings/l10n/bg.js b/settings/l10n/bg.js
index b3b30c7116b..4d5564991fb 100644
--- a/settings/l10n/bg.js
+++ b/settings/l10n/bg.js
@@ -1,6 +1,14 @@
OC.L10N.register(
"settings",
{
+ "{actor} changed your password" : "{actor} промени паролата ви",
+ "You changed your password" : "Променихте паролата си",
+ "Your password was reset by an administrator" : "Паролата ви е променена от администратора",
+ "{actor} changed your email address" : "{actor} промени имейл адреса ви",
+ "You changed your email address" : "Променихте имейл адреса си",
+ "Your email address was changed by an administrator" : "Имейл адреса ви е променена от администратора",
+ "Security" : "Сигурност",
+ "Your <strong>password</strong> or <strong>email</strong> was modified" : "Вашата <strong>парола</strong> или <strong>имейл адрес</strong> е променен",
"Couldn't remove app." : "Приложението не бе премахнато.",
"Couldn't update app." : "Приложението не бе обновено.",
"Wrong password" : "Грешна парола",
@@ -13,9 +21,17 @@ OC.L10N.register(
"You need to set your user email before being able to send test emails." : "Трябва да зададете своя имейл за да можете да изпращате тестови имейли.",
"Invalid mail address" : "невалиден адрес на електронна поща",
"Settings saved" : "Настройките са запазени",
- "Unable to change full name" : "Неуспешна промяна на пълното име.",
+ "Unable to change full name" : "Неуспешна промяна на име.",
"Unable to change email address" : "Неуспешна промяна на адрес на електронна поща",
+ "%1$s changed your password on %2$s." : "%1$s промени вашата парола за %2$s.",
+ "Your password on %s was changed." : "Вашата парола за %s беше променена.",
+ "Password changed for %s" : "Паролата на %s е променена",
+ "If you did not request this, please contact an administrator." : "Моля, свържете се с администратор ако промяната не е извършена от вас.",
"Your %s account was created" : "Вашия %s профил бе създаден",
+ "Welcome aboard" : "Добре дошли",
+ "Welcome aboard %s" : "Добре дошли %s",
+ "Your username is: %s" : "Потребителско име: %s",
+ "Set your password" : "Задайте парола",
"Email sent" : "Имейлът е изпратен",
"Internet Explorer" : "Internet Explorer",
"Edge" : "Edge",
@@ -27,7 +43,7 @@ OC.L10N.register(
"iPad iOS" : "iPad iOS",
"iOS Client" : "iOS клиент",
"Android Client" : "Android клиент",
- "This session" : "Текуща сесия",
+ "This session" : "Текущата сесия",
"Copy" : "Копиране",
"Copied!" : "Копирано!",
"Not supported!" : "Не се поддържа!",
@@ -38,36 +54,46 @@ OC.L10N.register(
"Local" : "Локално",
"Contacts" : "Контакти",
"Public" : "Публичен",
- "Very weak password" : "Много слаба парола",
- "Weak password" : "Слаба парола",
+ "Very weak password" : "Много проста парола",
+ "Weak password" : "Проста парола",
"So-so password" : "Не особено добра парола",
"Good password" : "Добра парола",
- "Strong password" : "Сигурна парола",
- "Select a profile picture" : "Избиране на профилна снимка",
+ "Strong password" : "Сложна парола",
+ "Select a profile picture" : "Избор на снимка за профила",
+ "Week starts on {fdow}" : "Първи ден от седмицата е {fdow}",
"Groups" : "Групи",
- "Visit website" : "Посещаване на интернет страница",
+ "Visit website" : "Уеб страницата",
"Developer documentation" : "Документация за разработчици",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Приложението не може да бъде инсталирано, защото следните зависимости не са удовлетворени:",
"Enable" : "Включване",
+ "Settings" : "Настройки",
"Email" : "Имейл",
"Group admin for" : "Групов администратор за",
"Language" : "Език",
"Unlimited" : "Неограничено",
"Default quota" : "Стандартна квота",
+ "Default language" : "Стандартен език",
+ "All languages" : "Всички езици",
+ "Your apps" : "Вашите приложения",
+ "Active apps" : "Включени приложения",
+ "Disabled apps" : "Изключени приложения",
"Admins" : "Администратори",
"Everyone" : "Всички",
+ "New user" : "Нов потребител",
"Common Name" : "Познато Име",
"Valid until" : "Валиден до",
"Issued By" : "Издаден от",
"Valid until %s" : "Валиден до %s",
"Import root certificate" : "Импортиране на основен сертификат",
+ "Documentation" : "Документация",
"Forum" : "Форум",
"None" : "Няма",
- "Login" : "Вход",
+ "Login" : "Вписване",
"Plain" : "Обикновен",
"NT LAN Manager" : "NT LAN Manager",
"SSL/TLS" : "SSL/TLS",
"STARTTLS" : "STARTTLS",
+ "Email server" : "Имейл сървър",
"Open documentation" : "Отвори документацията",
"Send mode" : "Режим на изпращане",
"Encryption" : "Криптиране",
@@ -81,7 +107,7 @@ OC.L10N.register(
"SMTP Username" : "SMTP потребител",
"SMTP Password" : "SMTP парола",
"Store credentials" : "Запазвай креденциите",
- "Test email settings" : "Настройки на проверяващия имейл",
+ "Test email settings" : "Проверка на имейл настройките",
"Send email" : "Изпрати имейл",
"Enable encryption" : "Включване на криптиране",
"Select default encryption module:" : "Избор на модул за криптиране по подразбиране:",
@@ -94,51 +120,66 @@ OC.L10N.register(
"Allow users to share via link" : "Разреши потребителите да споделят с връзка",
"Allow public uploads" : "Разреши общодостъпно качване",
"Enforce password protection" : "Изискай защита с парола.",
- "Set default expiration date" : "Заложи стандартна дата на изтичане",
+ "Set default expiration date" : "Задайте стандартен срок на валидност",
"Expire after " : "Изтечи след",
"days" : "дена",
"Enforce expiration date" : "Изисквай дата на изтичане",
- "Allow resharing" : "Разреши пресподеляне.",
+ "Allow resharing" : "Може да споделя повторно",
"Restrict users to only share with users in their groups" : "Ограничи потребителите, така че да могат да споделят само с други потребители в своите групи.",
"Exclude groups from sharing" : "Забрани групи да споделят",
"These groups will still be able to receive shares, but not to initiate them." : "Тези групи ще могат да получават споделения, но няма да могат самите те да споделят.",
- "Profile picture" : "Аватар",
- "Upload new" : "Качи нов",
+ "Personal" : "Лични",
+ "Administration" : "Административни",
+ "Follow us on Google+" : "Следвайте ни в Google+",
+ "Follow us on Twitter" : "Следвайте ни в Twitter",
+ "Profile picture" : "Снимка за профила",
+ "Upload new" : "Качи нова",
+ "Select from Files" : "Избери от файловете",
"Remove image" : "Премахни изображението",
"png or jpg, max. 20 MB" : "png или jpg, макс. 20 MB",
"Cancel" : "Отказ",
- "Full name" : "Пълно име",
+ "Choose as profile picture" : "Готово",
+ "Details" : "Подробности",
+ "You are a member of the following groups:" : "Членувате в следните групи:",
+ "You are using <strong>%s</strong>" : "Ползвате <strong>%s</strong>",
+ "You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Ползвате <strong>%s</strong> от <strong>%s</strong> (<strong>%s %%</strong>)",
+ "Full name" : "Име",
"No display name set" : "Няма настроено екранно име",
"Your email address" : "Вашият имейл адрес",
- "No email address set" : "Няма настроен адрес на електронна поща",
+ "No email address set" : "Не е въведен имейл адрес",
"Phone number" : "Тел. номер",
- "Your phone number" : "Вашия тел. номер",
+ "Your phone number" : "Вашият тел. номер",
"Address" : "Адрес",
- "Your postal address" : "Вашия пощенски код",
+ "Your postal address" : "Вашият пощенски код",
"Website" : "Уеб страница",
"Twitter" : "Twitter",
"Help translate" : "Помогнете с превода",
"Password" : "Парола",
"Current password" : "Текуща парола",
"New password" : "Нова парола",
- "Change password" : "Промяна на паролата",
+ "Change password" : "Промени паролата",
+ "Devices & sessions" : "Устройства и сесии",
"Web, desktop and mobile clients currently logged in to your account." : "Уеб, настолни и мобилни клиенти, които в момента са вписани чрез вашия акаунт.",
"Device" : "Устройство",
"Last activity" : "Последна активност",
"App name" : "Име на приложението",
+ "Create new app password" : "Създай парола за приложението",
+ "Use the credentials below to configure your app or device." : "Ползвайте данните по-долу за да настроите вашето приложение или устройство.",
"Username" : "Потребител",
- "Done" : "Завършен",
+ "Done" : "Готово",
+ "Enabled apps" : "Включени приложения",
"Group already exists." : "Групата вече съществува.",
"Unable to add group." : "Неуспешно добавяне на група.",
- "Unable to delete group." : "Неуспешно изтриване на група",
- "A user with that name already exists." : "Потребител с това име вече съществува",
+ "Unable to delete group." : "Неуспешно изтриване на група.",
+ "A user with that name already exists." : "Потребител с това име вече съществува.",
"Unable to create user." : "Неуспешно създаване на потребител.",
"Unable to delete user." : "Неуспешно изтриване на потребител.",
- "Your full name has been changed." : "Вашето пълно име е променено.",
+ "Your full name has been changed." : "Вашето име е променено.",
"Forbidden" : "Забранено",
"Invalid user" : "Невалиден протребител",
"Unable to change mail address" : "Неуспешна промяна на адрес на електронна поща",
"Email saved" : "Имейлът е запазен",
+ "Are you really sure you want add {domain} as trusted domain?" : "Наистина ли желаете да добавите {domain} в списъка със сигурни домейни?",
"Add trusted domain" : "Добавяне на сигурен домейн",
"All" : "Всички",
"Update to %s" : "Обнови до %s",
@@ -158,9 +199,11 @@ OC.L10N.register(
"never" : "никога",
"deleted {userName}" : "{userName} е изтрит",
"Changing the password will result in data loss, because data recovery is not available for this user" : "Промяна на паролата ще доведе до загуба на данни, защото не е налично възстановяване за този потребител.",
- "A valid username must be provided" : "Трябва да бъде зададено валидно потребителско име",
- "A valid password must be provided" : "Трябва да бъде зададена валидна парола",
- "A valid email must be provided" : "Трябва да бъде зададена валидна електронна поща",
+ "A valid username must be provided" : "Трябва да въведете валидно потребителско име",
+ "Error creating user: {message}" : "Грешка при създаване на потребител: {message}",
+ "A valid password must be provided" : "Трябва да въведете валидна парола",
+ "A valid email must be provided" : "Трябва да въведете валиден имейл адрес",
+ "Personal info" : "Лични данни",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Това може да се дължи на кеш/акселератор като Zend OPache или eAccelerator.",
"System locale can not be set to a one which supports UTF-8." : "Системните настройки за местоположение не могат да бъдат промени на такива, подържащи UTF-8.",
"This is particularly recommended when using the desktop client for file synchronisation." : "Препоръчително, особено ако ползвате клиента за настолен компютър.",
@@ -168,17 +211,26 @@ OC.L10N.register(
"Performance tuning" : "Настройване на производителност",
"Improving the config.php" : "Подобряване на config.php",
"Theming" : "Промяна на облика",
+ "View in store" : "Страница в магазина",
"This app has an update available." : "Това приложение има налично обновление.",
"by %s" : "от %s",
"Documentation:" : "Документация:",
+ "Admin documentation" : "Документация за администратори",
"Report a bug" : "Докладване на грешка",
- "Show description …" : "Покажи описание ...",
- "Hide description …" : "Скрии описание ...",
+ "Show description …" : "Покажи описанието ...",
+ "Hide description …" : "Скрий описанието ...",
"Enable only for specific groups" : "Включи само за определени групи",
"Online documentation" : "Онлайн документация",
"Commercial support" : "Платена поддръжка",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Ползвате <strong>%s</strong> от <strong>%s</strong>",
- "You are member of the following groups:" : "Член сте на следните групи:",
+ "You are member of the following groups:" : "Членувате в следните групи:",
+ "Get the apps to sync your files" : "Приложения за синхронизиране на файлове",
+ "Desktop client" : "Клиент за настолни компютри",
+ "Android app" : "Android приложение",
+ "iOS app" : "iOS приложениер",
+ "Follow us on Google+!" : "Следвайте ни в Google+!",
+ "Follow us on Twitter!" : "Следвайте ни в Twitter!",
+ "Check out our blog!" : "Прегледайте нашия блог!",
"Show storage location" : "Покажи мястото на хранилището",
"Show email address" : "Покажи адреса на електронната поща",
"Send email to new user" : "Изпращай писмо към нов потребител",
@@ -191,7 +243,7 @@ OC.L10N.register(
"Quota" : "Квота",
"Storage location" : "Дисково пространство",
"Last login" : "Последно вписване",
- "change full name" : "промени пълното име",
+ "change full name" : "промени име",
"set new password" : "сложи нова парола",
"change email address" : "Смени адреса на елетронната поща",
"Default" : "Стандарт"
diff --git a/settings/l10n/bg.json b/settings/l10n/bg.json
index b2598183c05..287ae6ab4ad 100644
--- a/settings/l10n/bg.json
+++ b/settings/l10n/bg.json
@@ -1,4 +1,12 @@
{ "translations": {
+ "{actor} changed your password" : "{actor} промени паролата ви",
+ "You changed your password" : "Променихте паролата си",
+ "Your password was reset by an administrator" : "Паролата ви е променена от администратора",
+ "{actor} changed your email address" : "{actor} промени имейл адреса ви",
+ "You changed your email address" : "Променихте имейл адреса си",
+ "Your email address was changed by an administrator" : "Имейл адреса ви е променена от администратора",
+ "Security" : "Сигурност",
+ "Your <strong>password</strong> or <strong>email</strong> was modified" : "Вашата <strong>парола</strong> или <strong>имейл адрес</strong> е променен",
"Couldn't remove app." : "Приложението не бе премахнато.",
"Couldn't update app." : "Приложението не бе обновено.",
"Wrong password" : "Грешна парола",
@@ -11,9 +19,17 @@
"You need to set your user email before being able to send test emails." : "Трябва да зададете своя имейл за да можете да изпращате тестови имейли.",
"Invalid mail address" : "невалиден адрес на електронна поща",
"Settings saved" : "Настройките са запазени",
- "Unable to change full name" : "Неуспешна промяна на пълното име.",
+ "Unable to change full name" : "Неуспешна промяна на име.",
"Unable to change email address" : "Неуспешна промяна на адрес на електронна поща",
+ "%1$s changed your password on %2$s." : "%1$s промени вашата парола за %2$s.",
+ "Your password on %s was changed." : "Вашата парола за %s беше променена.",
+ "Password changed for %s" : "Паролата на %s е променена",
+ "If you did not request this, please contact an administrator." : "Моля, свържете се с администратор ако промяната не е извършена от вас.",
"Your %s account was created" : "Вашия %s профил бе създаден",
+ "Welcome aboard" : "Добре дошли",
+ "Welcome aboard %s" : "Добре дошли %s",
+ "Your username is: %s" : "Потребителско име: %s",
+ "Set your password" : "Задайте парола",
"Email sent" : "Имейлът е изпратен",
"Internet Explorer" : "Internet Explorer",
"Edge" : "Edge",
@@ -25,7 +41,7 @@
"iPad iOS" : "iPad iOS",
"iOS Client" : "iOS клиент",
"Android Client" : "Android клиент",
- "This session" : "Текуща сесия",
+ "This session" : "Текущата сесия",
"Copy" : "Копиране",
"Copied!" : "Копирано!",
"Not supported!" : "Не се поддържа!",
@@ -36,36 +52,46 @@
"Local" : "Локално",
"Contacts" : "Контакти",
"Public" : "Публичен",
- "Very weak password" : "Много слаба парола",
- "Weak password" : "Слаба парола",
+ "Very weak password" : "Много проста парола",
+ "Weak password" : "Проста парола",
"So-so password" : "Не особено добра парола",
"Good password" : "Добра парола",
- "Strong password" : "Сигурна парола",
- "Select a profile picture" : "Избиране на профилна снимка",
+ "Strong password" : "Сложна парола",
+ "Select a profile picture" : "Избор на снимка за профила",
+ "Week starts on {fdow}" : "Първи ден от седмицата е {fdow}",
"Groups" : "Групи",
- "Visit website" : "Посещаване на интернет страница",
+ "Visit website" : "Уеб страницата",
"Developer documentation" : "Документация за разработчици",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Приложението не може да бъде инсталирано, защото следните зависимости не са удовлетворени:",
"Enable" : "Включване",
+ "Settings" : "Настройки",
"Email" : "Имейл",
"Group admin for" : "Групов администратор за",
"Language" : "Език",
"Unlimited" : "Неограничено",
"Default quota" : "Стандартна квота",
+ "Default language" : "Стандартен език",
+ "All languages" : "Всички езици",
+ "Your apps" : "Вашите приложения",
+ "Active apps" : "Включени приложения",
+ "Disabled apps" : "Изключени приложения",
"Admins" : "Администратори",
"Everyone" : "Всички",
+ "New user" : "Нов потребител",
"Common Name" : "Познато Име",
"Valid until" : "Валиден до",
"Issued By" : "Издаден от",
"Valid until %s" : "Валиден до %s",
"Import root certificate" : "Импортиране на основен сертификат",
+ "Documentation" : "Документация",
"Forum" : "Форум",
"None" : "Няма",
- "Login" : "Вход",
+ "Login" : "Вписване",
"Plain" : "Обикновен",
"NT LAN Manager" : "NT LAN Manager",
"SSL/TLS" : "SSL/TLS",
"STARTTLS" : "STARTTLS",
+ "Email server" : "Имейл сървър",
"Open documentation" : "Отвори документацията",
"Send mode" : "Режим на изпращане",
"Encryption" : "Криптиране",
@@ -79,7 +105,7 @@
"SMTP Username" : "SMTP потребител",
"SMTP Password" : "SMTP парола",
"Store credentials" : "Запазвай креденциите",
- "Test email settings" : "Настройки на проверяващия имейл",
+ "Test email settings" : "Проверка на имейл настройките",
"Send email" : "Изпрати имейл",
"Enable encryption" : "Включване на криптиране",
"Select default encryption module:" : "Избор на модул за криптиране по подразбиране:",
@@ -92,51 +118,66 @@
"Allow users to share via link" : "Разреши потребителите да споделят с връзка",
"Allow public uploads" : "Разреши общодостъпно качване",
"Enforce password protection" : "Изискай защита с парола.",
- "Set default expiration date" : "Заложи стандартна дата на изтичане",
+ "Set default expiration date" : "Задайте стандартен срок на валидност",
"Expire after " : "Изтечи след",
"days" : "дена",
"Enforce expiration date" : "Изисквай дата на изтичане",
- "Allow resharing" : "Разреши пресподеляне.",
+ "Allow resharing" : "Може да споделя повторно",
"Restrict users to only share with users in their groups" : "Ограничи потребителите, така че да могат да споделят само с други потребители в своите групи.",
"Exclude groups from sharing" : "Забрани групи да споделят",
"These groups will still be able to receive shares, but not to initiate them." : "Тези групи ще могат да получават споделения, но няма да могат самите те да споделят.",
- "Profile picture" : "Аватар",
- "Upload new" : "Качи нов",
+ "Personal" : "Лични",
+ "Administration" : "Административни",
+ "Follow us on Google+" : "Следвайте ни в Google+",
+ "Follow us on Twitter" : "Следвайте ни в Twitter",
+ "Profile picture" : "Снимка за профила",
+ "Upload new" : "Качи нова",
+ "Select from Files" : "Избери от файловете",
"Remove image" : "Премахни изображението",
"png or jpg, max. 20 MB" : "png или jpg, макс. 20 MB",
"Cancel" : "Отказ",
- "Full name" : "Пълно име",
+ "Choose as profile picture" : "Готово",
+ "Details" : "Подробности",
+ "You are a member of the following groups:" : "Членувате в следните групи:",
+ "You are using <strong>%s</strong>" : "Ползвате <strong>%s</strong>",
+ "You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Ползвате <strong>%s</strong> от <strong>%s</strong> (<strong>%s %%</strong>)",
+ "Full name" : "Име",
"No display name set" : "Няма настроено екранно име",
"Your email address" : "Вашият имейл адрес",
- "No email address set" : "Няма настроен адрес на електронна поща",
+ "No email address set" : "Не е въведен имейл адрес",
"Phone number" : "Тел. номер",
- "Your phone number" : "Вашия тел. номер",
+ "Your phone number" : "Вашият тел. номер",
"Address" : "Адрес",
- "Your postal address" : "Вашия пощенски код",
+ "Your postal address" : "Вашият пощенски код",
"Website" : "Уеб страница",
"Twitter" : "Twitter",
"Help translate" : "Помогнете с превода",
"Password" : "Парола",
"Current password" : "Текуща парола",
"New password" : "Нова парола",
- "Change password" : "Промяна на паролата",
+ "Change password" : "Промени паролата",
+ "Devices & sessions" : "Устройства и сесии",
"Web, desktop and mobile clients currently logged in to your account." : "Уеб, настолни и мобилни клиенти, които в момента са вписани чрез вашия акаунт.",
"Device" : "Устройство",
"Last activity" : "Последна активност",
"App name" : "Име на приложението",
+ "Create new app password" : "Създай парола за приложението",
+ "Use the credentials below to configure your app or device." : "Ползвайте данните по-долу за да настроите вашето приложение или устройство.",
"Username" : "Потребител",
- "Done" : "Завършен",
+ "Done" : "Готово",
+ "Enabled apps" : "Включени приложения",
"Group already exists." : "Групата вече съществува.",
"Unable to add group." : "Неуспешно добавяне на група.",
- "Unable to delete group." : "Неуспешно изтриване на група",
- "A user with that name already exists." : "Потребител с това име вече съществува",
+ "Unable to delete group." : "Неуспешно изтриване на група.",
+ "A user with that name already exists." : "Потребител с това име вече съществува.",
"Unable to create user." : "Неуспешно създаване на потребител.",
"Unable to delete user." : "Неуспешно изтриване на потребител.",
- "Your full name has been changed." : "Вашето пълно име е променено.",
+ "Your full name has been changed." : "Вашето име е променено.",
"Forbidden" : "Забранено",
"Invalid user" : "Невалиден протребител",
"Unable to change mail address" : "Неуспешна промяна на адрес на електронна поща",
"Email saved" : "Имейлът е запазен",
+ "Are you really sure you want add {domain} as trusted domain?" : "Наистина ли желаете да добавите {domain} в списъка със сигурни домейни?",
"Add trusted domain" : "Добавяне на сигурен домейн",
"All" : "Всички",
"Update to %s" : "Обнови до %s",
@@ -156,9 +197,11 @@
"never" : "никога",
"deleted {userName}" : "{userName} е изтрит",
"Changing the password will result in data loss, because data recovery is not available for this user" : "Промяна на паролата ще доведе до загуба на данни, защото не е налично възстановяване за този потребител.",
- "A valid username must be provided" : "Трябва да бъде зададено валидно потребителско име",
- "A valid password must be provided" : "Трябва да бъде зададена валидна парола",
- "A valid email must be provided" : "Трябва да бъде зададена валидна електронна поща",
+ "A valid username must be provided" : "Трябва да въведете валидно потребителско име",
+ "Error creating user: {message}" : "Грешка при създаване на потребител: {message}",
+ "A valid password must be provided" : "Трябва да въведете валидна парола",
+ "A valid email must be provided" : "Трябва да въведете валиден имейл адрес",
+ "Personal info" : "Лични данни",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Това може да се дължи на кеш/акселератор като Zend OPache или eAccelerator.",
"System locale can not be set to a one which supports UTF-8." : "Системните настройки за местоположение не могат да бъдат промени на такива, подържащи UTF-8.",
"This is particularly recommended when using the desktop client for file synchronisation." : "Препоръчително, особено ако ползвате клиента за настолен компютър.",
@@ -166,17 +209,26 @@
"Performance tuning" : "Настройване на производителност",
"Improving the config.php" : "Подобряване на config.php",
"Theming" : "Промяна на облика",
+ "View in store" : "Страница в магазина",
"This app has an update available." : "Това приложение има налично обновление.",
"by %s" : "от %s",
"Documentation:" : "Документация:",
+ "Admin documentation" : "Документация за администратори",
"Report a bug" : "Докладване на грешка",
- "Show description …" : "Покажи описание ...",
- "Hide description …" : "Скрии описание ...",
+ "Show description …" : "Покажи описанието ...",
+ "Hide description …" : "Скрий описанието ...",
"Enable only for specific groups" : "Включи само за определени групи",
"Online documentation" : "Онлайн документация",
"Commercial support" : "Платена поддръжка",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Ползвате <strong>%s</strong> от <strong>%s</strong>",
- "You are member of the following groups:" : "Член сте на следните групи:",
+ "You are member of the following groups:" : "Членувате в следните групи:",
+ "Get the apps to sync your files" : "Приложения за синхронизиране на файлове",
+ "Desktop client" : "Клиент за настолни компютри",
+ "Android app" : "Android приложение",
+ "iOS app" : "iOS приложениер",
+ "Follow us on Google+!" : "Следвайте ни в Google+!",
+ "Follow us on Twitter!" : "Следвайте ни в Twitter!",
+ "Check out our blog!" : "Прегледайте нашия блог!",
"Show storage location" : "Покажи мястото на хранилището",
"Show email address" : "Покажи адреса на електронната поща",
"Send email to new user" : "Изпращай писмо към нов потребител",
@@ -189,7 +241,7 @@
"Quota" : "Квота",
"Storage location" : "Дисково пространство",
"Last login" : "Последно вписване",
- "change full name" : "промени пълното име",
+ "change full name" : "промени име",
"set new password" : "сложи нова парола",
"change email address" : "Смени адреса на елетронната поща",
"Default" : "Стандарт"
diff --git a/settings/l10n/cs.js b/settings/l10n/cs.js
index 9683e61162e..9500ee38b1a 100644
--- a/settings/l10n/cs.js
+++ b/settings/l10n/cs.js
@@ -2,14 +2,14 @@ OC.L10N.register(
"settings",
{
"{actor} changed your password" : "{actor} změnil(a) vaše heslo",
- "You changed your password" : "Změnil(a) jste vaše heslo",
- "Your password was reset by an administrator" : "Vaše heslo bylo resetováno administrátorem",
+ "You changed your password" : "Změnili jste své heslo",
+ "Your password was reset by an administrator" : "Vaše heslo bylo resetováno správcem",
"{actor} changed your email address" : "{actor} změnil(a) vaši e-mailovou adresu",
- "You changed your email address" : "Změnil(a) jste vaši e-mailovou adresu",
- "Your email address was changed by an administrator" : "Vaše e-mailová adresa byla změněna administrátorem",
+ "You changed your email address" : "Změnili jste svou e-mailovou adresu",
+ "Your email address was changed by an administrator" : "Vaše e-mailová adresa byla změněna správcem",
"Security" : "Zabezpečení",
- "You successfully logged in using two-factor authentication (%1$s)" : "Úspěšně jste se přihlásili pomocí dvoufázové autentizace (%1$s)",
- "A login attempt using two-factor authentication failed (%1$s)" : "Pokus o přihlášení s použitím dvoufázové autentizace selhal (%1$s)",
+ "You successfully logged in using two-factor authentication (%1$s)" : "Úspěšně jste se přihlásili pomocí dvoufázového ověření (%1$s)",
+ "A login attempt using two-factor authentication failed (%1$s)" : "Pokus o přihlášení s použitím dvoufázové autentizace se nezdařil (%1$s)",
"Your <strong>password</strong> or <strong>email</strong> was modified" : "Vaše <strong>heslo</strong> nebo <strong>e-mail</strong> bylo změněno",
"Couldn't remove app." : "Nepodařilo se odebrat aplikaci.",
"Couldn't update app." : "Nelze aktualizovat aplikaci.",
@@ -18,12 +18,12 @@ OC.L10N.register(
"No user supplied" : "Nebyl uveden uživatel",
"Unable to change password" : "Změna hesla se nezdařila",
"Authentication error" : "Chyba přihlášení",
- "Please provide an admin recovery password; otherwise, all user data will be lost." : "Zadejte prosím administrátorské heslo pro obnovu, jinak budou všechna uživatelská data ztracena.",
- "Wrong admin recovery password. Please check the password and try again." : "Chybné administrátorské heslo pro obnovu. Překontrolujte správnost hesla a zkuste to znovu.",
- "Backend doesn't support password change, but the user's encryption key was updated." : "Backend nepodporuje změnu hesla, ale uživatelův šifrovací klíč byl aktualizován.",
+ "Please provide an admin recovery password; otherwise, all user data will be lost." : "Zadejte správcovské heslo pro obnovu, jinak budou všechna uživatelská data ztracena.",
+ "Wrong admin recovery password. Please check the password and try again." : "Chybné správcovské heslo pro obnovu. Překontrolujte správnost hesla a zkuste to znovu.",
+ "Backend doesn't support password change, but the user's encryption key was updated." : "Podpůrná vrstva nepodporuje změnu hesla, ale uživatelův šifrovací klíč byl aktualizován.",
"installing and updating apps via the app store or Federated Cloud Sharing" : "Instalovat a aktualizovat aplikace pomocí obchodu nebo Sdíleného Cloudového Úložiště",
"Federated Cloud Sharing" : "Propojené cloudové sdílení",
- "cURL is using an outdated %s version (%s). Please update your operating system or features such as %s will not work reliably." : "cURL používá zastaralou %s verzi (%s). Aktualizujte prosím svůj operační systém, jinak funkce jako %s nemusí spolehlivě pracovat.",
+ "cURL is using an outdated %s version (%s). Please update your operating system or features such as %s will not work reliably." : "cURL používá zastaralou %s verzi (%s). Aktualizujte svůj operační systém, jinak funkce jako %s nemusí spolehlivě pracovat.",
"Invalid SMTP password." : "Neplatné heslo SMTP.",
"Email setting test" : "Zkouška nastavení e-mailu",
"Well done, %s!" : "Úspěšně nastaveno, %s!",
@@ -36,15 +36,15 @@ OC.L10N.register(
"Unable to change full name" : "Nelze změnit celé jméno",
"Unable to change email address" : "Nepodařilo se změnit e-mailovou adresu",
"In order to verify your Twitter account, post the following tweet on Twitter (please make sure to post it without any line breaks):" : "Pokud chcete ověřit váš Twitter účet, napište následující tweet (ujistěte se, že ho zasíláte bez zalomení řádků):",
- "In order to verify your Website, store the following content in your web-root at '.well-known/CloudIdVerificationCode.txt' (please make sure that the complete text is in one line):" : "Pro verifikaci vašich webových stránek uložte následující obsah v kořenovém adresáři webové prezentace v umístění '.well-known/CloudIdVerificationCode.txt' (ujistěte se, že byl text vložen jako jediný řádek)",
+ "In order to verify your Website, store the following content in your web-root at '.well-known/CloudIdVerificationCode.txt' (please make sure that the complete text is in one line):" : "Pro ověřování vašich webových stránek uložte následující obsah v kořenovém adresáři webové prezentace v umístění '.well-known/CloudIdVerificationCode.txt' (ujistěte se, že byl text vložen jako jediný řádek)",
"%1$s changed your password on %2$s." : "%1$s změnil(a) vaše heslo na %2$s.",
"Your password on %s was changed." : "Vaše heslo na %s bylo změněno.",
- "Your password on %s was reset by an administrator." : "Vaše heslo na %s bylo resetováno administrátorem.",
+ "Your password on %s was reset by an administrator." : "Vaše heslo na %s bylo resetováno správcem.",
"Password for %1$s changed on %2$s" : "Heslo pro %1$s na %2$s změněno ",
"Password changed for %s" : "Změna hesla pro %s",
- "If you did not request this, please contact an administrator." : "Pokud jste o toto nežádali, prosím, kontaktujte administrátora.",
+ "If you did not request this, please contact an administrator." : "Pokud jste o toto nežádali, obraťte se na správce.",
"Your email address on %s was changed." : "Vaše e-mailová adresa na %s byla změněna.",
- "Your email address on %s was changed by an administrator." : "Vaše e-mailová adresa na %s byla změněna administrátorem.",
+ "Your email address on %s was changed by an administrator." : "Vaše e-mailová adresa na %s byla změněna správcem.",
"Email address for %1$s changed on %2$s" : "E-mailová adresa pro %1$s se na %2$s změnila",
"Email address changed for %s" : "E-mailová adresa pro %s byla změněna",
"The new email address is %s" : "Nová e-mailová adresa je %s",
@@ -57,12 +57,12 @@ OC.L10N.register(
"Go to %s" : "Jít na %s",
"Install Client" : "Nainstalovat klienta",
"Logged in user must be a subadmin" : "Je třeba, aby přihlášený uživatel byl dílčím správcem",
- "Migration in progress. Please wait until the migration is finished" : "Migrace probíhá. Počkejte prosím než bude dokončena",
- "Migration started …" : "Migrace spuštěna ...",
+ "Migration in progress. Please wait until the migration is finished" : "Migrace probíhá. Počkejte než bude dokončena",
+ "Migration started …" : "Migrace spuštěna…",
"Not saved" : "Neuloženo",
"Sending…" : "Odesílání…",
"Email sent" : "E-mail odeslán",
- "Allow filesystem access" : "Povolit přístup k souborovému systému",
+ "Allow filesystem access" : "Umožnit přístup k souborovému systému",
"Disconnect" : "Odpojit",
"Revoke" : "Odvolat",
"Internet Explorer" : "Internet Explorer",
@@ -81,7 +81,7 @@ OC.L10N.register(
"Copied!" : "Zkopírováno!",
"Not supported!" : "Nepodporováno!",
"Press ⌘-C to copy." : "Zkopírujete stisknutím ⌘-C.",
- "Press Ctrl-C to copy." : "Zmáčknout Ctrl-C pro kopírování.",
+ "Press Ctrl-C to copy." : "Zkopírujete stisknutím Ctrl-C.",
"Error while loading browser sessions and device tokens" : "Chyba při načítání sezení prohlížeče a tokenů přístroje",
"Error while creating device token" : "Chyba při vytváření tokenů přístroje",
"Error while deleting the token" : "Chyba při mazání tokenu",
@@ -102,7 +102,7 @@ OC.L10N.register(
"Weak password" : "Slabé heslo",
"So-so password" : "Středně silné heslo",
"Good password" : "Dobré heslo",
- "Strong password" : "Silné heslo",
+ "Strong password" : "Odolné heslo",
"An error occured while changing your language. Please reload the page and try again." : "Při změně jazyka došlo k chybě. Znovu načtěte stránku a zkuste to ještě jednou.",
"An error occured while changing your locale. Please reload the page and try again." : "Došlo k chybě při změně místních a jazykových nastavení. Načtěte stránku znovu a zopakujte pokus.",
"Select a profile picture" : "Vyberte profilový obrázek",
@@ -117,6 +117,7 @@ OC.L10N.register(
"Developer documentation" : "Vývojářská dokumentace",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Tato aplikace nemá nastavenou žádnou minimální verzi Nextcloudu. To se v budoucnu projeví jako chyba.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Tuto aplikaci nelze nainstalovat, protože nejsou splněny následující závislosti:",
+ "{license}-licensed" : "licencováno pod {license}",
"Disable all" : "Zakázat vše",
"Enable all" : "Povolit vše",
"Download and enable" : "Stáhnout a povolit",
@@ -137,6 +138,7 @@ OC.L10N.register(
"Unlimited" : "Neomezeně",
"Default quota" : "Výchozí kvóta",
"Default language" : "Výchozí jazyk",
+ "Password change is disabled because the master key is disabled" : "Změna hesla je vypnutá protože je vypnutý hlavní klíč",
"Common languages" : "Běžné jazyky",
"All languages" : "Všechny jazyky",
"You did not enter the password in time" : "Nezadali jste heslo včas",
@@ -149,7 +151,9 @@ OC.L10N.register(
"Disabled apps" : "Zakázané aplikace",
"Updates" : "Aktualizace",
"App bundles" : "Balíčky aplikací",
- "Please confirm the group removal " : "Potvrďte prosím odstranění skupiny",
+ "Default quota:" : "Výchozí kvóta:",
+ "You are about to remove the group {group}. The users will NOT be deleted." : "Chystáte se smazat skupinu {group}. Uživatelé NEbudou smazáni.",
+ "Please confirm the group removal " : "Potvrďte odstranění skupiny",
"Remove group" : "Odebrat skupinu",
"Admins" : "Správci",
"Disabled users" : "Zakázaní uživatelé",
@@ -161,7 +165,7 @@ OC.L10N.register(
"Issued By" : "Vydal",
"Valid until %s" : "Platný do %s",
"Import root certificate" : "Import kořenového certifikátu",
- "Administrator documentation" : "Dokumentace administrátora",
+ "Administrator documentation" : "Dokumentace pro správu",
"Documentation" : "Dokumentace",
"Forum" : "Fórum",
"None" : "Žádné",
@@ -190,44 +194,48 @@ OC.L10N.register(
"Server-side encryption" : "Šifrování na straně serveru",
"Server-side encryption makes it possible to encrypt files which are uploaded to this server. This comes with limitations like a performance penalty, so enable this only if needed." : "Šifrování na straně serveru umožňuje zašifrovat soubory, které jsou na tento server nahrávány. To přináší omezení jako třeba výkonnostní omezení, takže to povolte jen pokud je třeba.",
"Enable server-side encryption" : "Povolit šifrování na straně serveru",
- "Please read carefully before activating server-side encryption: " : "Pročtěte prosím důkladně před aktivací šifrování dat na serveru:",
+ "Please read carefully before activating server-side encryption: " : "Pročtěte důkladně před zapnutím šifrování dat na serveru:",
"Once encryption is enabled, all files uploaded to the server from that point forward will be encrypted at rest on the server. It will only be possible to disable encryption at a later date if the active encryption module supports that function, and all pre-conditions (e.g. setting a recover key) are met." : "Poté co je zapnuto šifrování, jsou od toho bodu všechny nahrávané soubory šifrovány serverem. Vypnout šifrování bude možné pouze později, až bude šifrovací modul tuto možnost podporovat a po splnění všech nutných podmínek (tzn. nastavení klíčů pro obnovení).",
"Encryption alone does not guarantee security of the system. Please see documentation for more information about how the encryption app works, and the supported use cases." : "Šifrování samotné ještě negarantuje bezpečnost systému. Přečtěte si prosím dokumentaci, chcete-li se dozvědět více informací o tom, jak aplikace pro šifrování funguje a jaké jsou podporované případy použití.",
"Be aware that encryption always increases the file size." : "Mějte na paměti, že šifrování vždy navýší velikost souboru.",
"It is always good to create regular backups of your data, in case of encryption make sure to backup the encryption keys along with your data." : "Je vždy dobré vytvářet pravidelné zálohy svých dat, v případě zapnutého šifrování také zajistěte zálohu šifrovacích klíčů společně se zálohou dat.",
"This is the final warning: Do you really want to enable encryption?" : "Toto je poslední varování: Opravdu si přejete zapnout šifrování?",
"Enable encryption" : "Povolit šifrování",
- "No encryption module loaded, please enable an encryption module in the app menu." : "Není načten žádný šifrovací modul, povolte ho prosím v menu aplikací.",
+ "No encryption module loaded, please enable an encryption module in the app menu." : "Není načten žádný šifrovací modul, povolte ho v nabídce aplikace.",
"Select default encryption module:" : "Vybrat výchozí šifrovací modul:",
- "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please enable the \"Default encryption module\" and run 'occ encryption:migrate'" : "Musíte přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Povolte prosím \"Default encryption module\" a spusťte příkaz 'occ encryption:migrate'",
- "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Musíte přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou.",
+ "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please enable the \"Default encryption module\" and run 'occ encryption:migrate'" : "Je třeba přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Povolte prosím „Default encryption module“ a spusťte příkaz 'occ encryption:migrate'",
+ "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Je třeba přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou.",
"Start migration" : "Spustit migraci",
"Security & setup warnings" : "Upozornění zabezpečení a nastavení",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Pro optimální zabezpečení a výkon instance je důležitě, aby vše bylo správně nakonfigurováno. Abychom vám v tom pomohli, automaticky ověřujeme některá nastavení. Pro více informací nahlédněte do sekce Tipy a Triky a do dokumentace.",
- "All checks passed." : "Všechny testy byly úspěšné.",
- "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Prosím, důkladně si přečtěte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">průvodce instalací ↗</a>a zkontrolujte, že v <a href=\"%s\">logu</a> nejsou žádné chyby ani žádná varování.",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Pro zabezpečení a optimální výkon instance Nextcloud je důležitě, aby vše bylo správně nastaveno. Jako pomoc, instance samotná automaticky ověřuje některá nastavení. Více informací je k nalezení v dokumentaci, sekci Tipy a Triky.",
+ "All checks passed." : "Všechny testy proběhly úspěšně.",
+ "There are some errors regarding your setup." : "Jsou zde nějaké chyby ohledně vašeho nastavení.",
+ "There are some warnings regarding your setup." : "Jsou zde nějaká varování ohledně vašeho nastavení.",
+ "Checking for system and security issues." : "Kontrola systému a problémů se zabezpečením.",
+ "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Důkladně si přečtěte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">průvodce instalací ↗</a>a zkontrolujte, že v <a href=\"%s\">záznamu událostí</a> nejsou žádné chyby ani varování.",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "Zkontrolujte zabezpečení svého Nextcloud přes <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">náš skener zabezpečení ↗</a>.",
"Version" : "Verze",
"Background jobs" : "Úkoly na pozadí",
- "Last job ran %s." : "Poslední úkol proběhl: %s.",
- "Last job execution ran %s. Something seems wrong." : "Poslední úkol proběhl: %s. Vypadá to, že něco není v pořádku.",
- "Background job didn’t run yet!" : "Úkol na pozadí ještě neběžel",
- "For optimal performance it's important to configure background jobs correctly. For bigger instances 'Cron' is the recommended setting. Please see the documentation for more information." : "Pro optimální výkon je důležité nakonfigurovat úkoly běžící na pozadí. Pro větší instance je doporučenou metodou 'cron'. Více informací naleznete v dokumentaci.",
- "Execute one task with each page loaded" : "Spustit jednu úlohu s každým načtením stránky",
+ "Last job ran %s." : "Poslední úloha byla vykonána: %s.",
+ "Last job execution ran %s. Something seems wrong." : "Minulá úloha byla vykonána: %s. Zdá se, že něco není v pořádku.",
+ "Background job didn’t run yet!" : "Úloha na pozadí ještě nebyla spuštěná!",
+ "For optimal performance it's important to configure background jobs correctly. For bigger instances 'Cron' is the recommended setting. Please see the documentation for more information." : "Pro optimální výkon je důležité správně nastavit úlohy spouštěné na pozadí. Pro větší instance je doporučenou metodou použití systémového plánovače (cron). Více informací naleznete v dokumentaci.",
+ "Execute one task with each page loaded" : "Spustit jednu úlohu s načtením každé stránky",
"cron.php is registered at a webcron service to call cron.php every 15 minutes over HTTP." : "cron.php je registrován u služby webcron, aby volal cron.php jednou za 15 minut přes HTTP.",
"Use system cron service to call the cron.php file every 15 minutes." : "Použít systémovou službu cron pro volání cron.php každých 15 minut.",
- "The cron.php needs to be executed by the system user \"%s\"." : "cron.php musí být spuštěn s právy systémového uživatele \"%s\".",
- "To run this you need the PHP POSIX extension. See {linkstart}PHP documentation{linkend} for more details." : "Pro spuštění je potřeba PHP POSIX rozšíření. Více informací lze nalézt v {linkstart}PHP dokumentaci{linkend}.",
+ "The cron.php needs to be executed by the system user \"%s\"." : "Je třeba, aby cron.php bylo spouštěno s právy systémového uživatele „%s“.",
+ "To run this you need the PHP POSIX extension. See {linkstart}PHP documentation{linkend} for more details." : "Pro spuštění je potřeba PHP POSIX rozšíření. Více informací lze nalézt v {linkstart}dokumentaci k PHP{linkend}.",
"Sharing" : "Sdílení",
- "As admin you can fine-tune the sharing behavior. Please see the documentation for more information." : "Jako administrátor můžete upravit chování sdílení. Více informací naleznete v dokumentaci.",
- "Allow apps to use the Share API" : "Povolit aplikacím používat API sdílení",
- "Allow users to share via link" : "Povolit uživatelům sdílení pomocí odkazů",
- "Allow public uploads" : "Povolit veřejné nahrávání souborů",
+ "As admin you can fine-tune the sharing behavior. Please see the documentation for more information." : "Jako správce můžete upravit chování sdílení. Více informací naleznete v dokumentaci.",
+ "Allow apps to use the Share API" : "Umožnit aplikacím používat API sdílení",
+ "Allow users to share via link" : "Umožnit uživatelům sdílet pomocí odkazů",
+ "Allow public uploads" : "Umožnit veřejné nahrávání souborů",
"Always ask for a password" : "Vždy se zeptat na heslo",
"Enforce password protection" : "Vynutit ochranu heslem",
- "Set default expiration date" : "Nastavit výchozí datum vypršení platnosti",
+ "Set default expiration date" : "Nastavit výchozí datum skončení platnosti",
"Expire after " : "Platnost skončí po",
"days" : "dnech",
- "Enforce expiration date" : "Vynutit datum vypršení",
+ "Enforce expiration date" : "Vynutit datum skončení platnosti",
"Allow resharing" : "Povolit znovu-sdílení",
"Allow sharing with groups" : "Povolit sdílení se skupinami",
"Restrict users to only share with users in their groups" : "Povolit sdílení pouze mezi uživateli v rámci skupiny",
@@ -239,12 +247,13 @@ OC.L10N.register(
"Default share permissions" : "Výchozí oprávnění sdílení",
"Personal" : "Osobní",
"Administration" : "Správa",
- "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Vyvíjeno {communityopen}Nextcloud komunitou{linkclose}, {githubopen}zdrojový kód{linkclose} je licencován pod {licenseopen}AGPL{linkclose}.",
- "Follow us on Google+" : "Sledujte nás na Google+",
- "Like our Facebook page" : "Stejně jako naše stránky na Facebooku",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Vyvíjeno {communityopen}komunitou Nextcloud{linkclose}, {githubopen}zdrojové kódy{linkclose} jsou licencovány pod {licenseopen}AGPL{linkclose}.",
+ "Follow us on Google+" : "Následujte nás na Google+",
+ "Like our Facebook page" : "Lajkujte naše stránky na Facebooku",
"Follow us on Twitter" : "Sledujte nás na Twitteru",
+ "Follow us on Mastodon" : "Sledujte nás na Mastodon",
"Check out our blog" : "Podívejte se na náš blog",
- "Subscribe to our newsletter" : "Odebírejte náš newsletter",
+ "Subscribe to our newsletter" : "Odebírejte náš zpravodaj",
"Profile picture" : "Profilový obrázek",
"Upload new" : "Nahrát nový",
"Select from Files" : "Vybrat ze Souborů",
@@ -272,69 +281,69 @@ OC.L10N.register(
"Twitter" : "Twitter",
"Twitter handle @…" : "Přezdívka na Twitteru @…",
"Help translate" : "Pomoci s překladem",
- "Locale" : "Lokalizace",
+ "Locale" : "Místní a jazyková nastavení",
"Password" : "Heslo",
- "Current password" : "Současné heslo",
+ "Current password" : "stávající heslo",
"New password" : "Nové heslo",
"Change password" : "Změnit heslo",
"Devices & sessions" : "Zařízení a sezení",
- "Web, desktop and mobile clients currently logged in to your account." : "Weboví, desktopoví a mobilní klienti aktuálně přihlášeni k vašemu účtu.",
+ "Web, desktop and mobile clients currently logged in to your account." : "Weboví, desktopoví a mobilní klienti aktuálně přihlášení k vašemu účtu.",
"Device" : "Přístroj",
"Last activity" : "Poslední aktivita",
- "App name" : "Jméno aplikace",
+ "App name" : "Název aplikace",
"Create new app password" : "Vytvořit nové heslo aplikace",
- "Use the credentials below to configure your app or device." : "Použijte údaje níže pro nastavení aplikace nebo zařízení.",
+ "Use the credentials below to configure your app or device." : "Pro nastavení aplikace nebo zařízení použijte níže uvedené údaje.",
"For security reasons this password will only be shown once." : "Toto heslo bude z bezpečnostních důvodů zobrazeno pouze jedenkrát.",
"Username" : "Uživatelské jméno",
"Done" : "Dokončeno",
"Enabled apps" : "Povolené aplikace",
- "A problem occurred, please check your log files (Error: %s)" : "Došlo k chybě, zkontrolujte prosím log (Chyba: %s)",
+ "A problem occurred, please check your log files (Error: %s)" : "Došlo k chybě, zkontrolujte záznam událostí (Chyba: %s)",
"Migration Completed" : "Migrace dokončena",
"Group already exists." : "Skupina už existuje.",
- "Unable to add group." : "Nelze přidat skupinu.",
+ "Unable to add group." : "Skupinu se nedaří přidat.",
"Unable to delete group." : "Nelze smazat skupinu.",
"No valid group selected" : "Není vybrána platná skupina",
- "A user with that name already exists." : "Uživatel tohoto jména již existuje.",
+ "A user with that name already exists." : "Uživatel tohoto jména už existuje.",
"To send a password link to the user an email address is required." : "Pro zaslání odkazu na heslo uživateli je nutná e-mailová adresa.",
- "Unable to create user." : "Nelze vytvořit uživatele.",
- "Unable to delete user." : "Nelze smazat uživatele.",
+ "Unable to create user." : "Uživatele se nedaří vytvořit.",
+ "Unable to delete user." : "Uživatele se nedaří smazat.",
"Error while enabling user." : "Chyba při povolování uživatele.",
"Error while disabling user." : "Chyba při zakazování uživatele.",
"Your full name has been changed." : "Vaše celé jméno bylo změněno.",
"Forbidden" : "Zakázáno",
"Invalid user" : "Neplatný uživatel",
- "Unable to change mail address" : "Nelze změnit e-mailovou adresu",
+ "Unable to change mail address" : "E-mailovou adresu se nedaří změnit",
"Email saved" : "E-mail uložen",
"%1$s changed your email address on %2$s." : "%1$s změnil(a) vaši e-mailovou adresu na %2s.",
"Password confirmation is required" : "Je vyžadováno potvrzení hesla",
- "Are you really sure you want add {domain} as trusted domain?" : "Jste si jisti, že chcete přidat {domain} mezi důvěryhodné domény?",
+ "Are you really sure you want add {domain} as trusted domain?" : "Opravdu chcete přidat {domain} mezi důvěryhodné domény?",
"Add trusted domain" : "Přidat důvěryhodnou doménu",
"All" : "Vše",
"Update to %s" : "Aktualizovat na %s",
"_You have %n app update pending_::_You have %n app updates pending_" : ["K dispozici je jedna aktualizace","K dispozici je pár aktualizací","K dispozici je mnoho aktualizací","K dispozici je celkem %naktualizací"],
"No apps found for your version" : "Nebyly nalezeny aplikace pro vaši verzi",
- "Official apps are developed by and within the community. They offer central functionality and are ready for production use." : "Oficiální aplikace jsou vyvíjeny komunitou. Poskytují klíčovou funkcionalitu a jsou připravené na produkční nasazení.",
+ "Official apps are developed by and within the community. They offer central functionality and are ready for production use." : "Oficiální aplikace jsou vyvíjeny komunitou. Poskytují klíčové funkce a jsou připravené na produkční nasazení.",
"Approved apps are developed by trusted developers and have passed a cursory security check. They are actively maintained in an open code repository and their maintainers deem them to be stable for casual to normal use." : "Schválené aplikace jsou vyvíjeny důvěryhodnými vývojáři a prošly zběžným bezpečnostním prověřením. Jsou aktivně udržovány v repozitáři s otevřeným kódem a jejich správci je považují za stabilní pro občasné až normální použití.",
"This app is not checked for security issues and is new or known to be unstable. Install at your own risk." : "U této aplikace nebyla provedena kontrola na bezpečnostní problémy. Aplikace je nová nebo nestabilní. Instalujte pouze na vlastní nebezpečí.",
- "Disabling app …" : "Zakazuji aplikaci…",
+ "Disabling app …" : "Zakazování aplikace…",
"Error while disabling app" : "Chyba při zakazování aplikace",
"Disable" : "Zakázat",
- "Enabling app …" : "Povolování aplikace …",
+ "Enabling app …" : "Povolování aplikace…",
"Error while enabling app" : "Chyba při povolování aplikace",
"Error: Could not disable broken app" : "Chyba: nezdařilo se vypnout rozbitou aplikaci",
"Error while disabling broken app" : "Chyba při vypínání rozbité aplikace",
"Updating...." : "Aktualizace…",
"Error while updating app" : "Chyba při aktualizaci aplikace",
"Updated" : "Aktualizováno",
- "Removing …" : "Odstraňování …",
+ "Removing …" : "Odstraňování…",
"Error while removing app" : "Chyba při odebírání aplikace",
"Remove" : "Odstranit",
"Approved" : "Potvrzeno",
"Experimental" : "Experimentální",
"No apps found for {query}" : "Nebyly nalezeny žádné aplikace pro {query}",
- "Unable to delete {objName}" : "Nelze smazat {objName}",
- "Error creating group: {message}" : "Chyba vytvoření skupiny: {message}",
- "A valid group name must be provided" : "Musíte zadat platný název skupiny",
+ "Unable to delete {objName}" : "Nedaří se smazat {objName}",
+ "Error creating group: {message}" : "Chyba při vytváření skupiny: {message}",
+ "A valid group name must be provided" : "Je třeba zadat platný název skupiny",
"deleted {groupName}" : "smazána {groupName}",
"undo" : "vrátit zpět",
"never" : "nikdy",
@@ -343,24 +352,24 @@ OC.L10N.register(
"Unable to add user to group {group}" : "Nelze přidat uživatele do skupiny {group}",
"Unable to remove user from group {group}" : "Nelze odebrat uživatele ze skupiny {group}",
"Add group" : "Přidat skupinu",
- "Invalid quota value \"{val}\"" : "Neplatná hodnota kvóty \"{val}\"",
+ "Invalid quota value \"{val}\"" : "Neplatná hodnota kvóty „{val}“",
"no group" : "není ve skupině",
"Password successfully changed" : "Heslo úspěšně změněno",
"Changing the password will result in data loss, because data recovery is not available for this user" : "Změna hesla bude mít za následek ztrátu dat, protože jejich obnova není pro tohoto uživatele dostupná.",
"Could not change the users email" : "Nelze změnit e-mail uživatele",
"Error while changing status of {user}" : "Chyba při změně stavu {user}",
- "A valid username must be provided" : "Musíte zadat platné uživatelské jméno",
+ "A valid username must be provided" : "Je třeba zadat platné uživatelské jméno",
"Error creating user: {message}" : "Chyba vytvoření uživatele: {message}",
- "A valid password must be provided" : "Musíte zadat platné heslo",
- "A valid email must be provided" : "Musíte zadat platný e-mail",
+ "A valid password must be provided" : "Je třeba zadat platné heslo",
+ "A valid email must be provided" : "Je třeba zadat platný e-mail",
"__language_name__" : "čeština",
"Verifying" : "Ověřování",
"Personal info" : "Osobní údaje",
"Sync clients" : "Synchronizační klienti",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "Pro optimální zabezpečení a výkon instance je důležitě, aby vše bylo správně nakonfigurováno. Abychom vám v tom pomohli, automaticky ověřujeme některá nastavení. Pro více informací nahlédněte do sekce Tipy a Triky a do dokumentace.",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "Pro optimální zabezpečení a výkon instance je důležitě, aby vše bylo správně nastaveno. Abychom vám v tom pomohli, automaticky ověřujeme některá nastavení. Pro více informací nahlédněte do sekce Tipy a Triky a do dokumentace.",
"php does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "php není nejspíše správně nastaveno pro dotazování na proměnné hodnoty systému. Test s getenv(\"PATH\") vrací pouze prázdnou odpověď.",
- "Please check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation documentation ↗</a> for php configuration notes and the php configuration of your server, especially when using php-fpm." : "Zkontrolujte prosím konfiguraci php podle <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">instalační dokumentace ↗</a>, hlavně při použití php-fpm.",
- "The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Konfigurace je nastavena pouze pro čtení. Toto znemožňuje některá nastavení přes webové rozhraní. Dále musí být pro každou změnu povolen zápis do konfiguračního souboru ručně.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation documentation ↗</a> for php configuration notes and the php configuration of your server, especially when using php-fpm." : "Zkontrolujte nastavení php podle <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">instalační dokumentace ↗</a>, hlavně při použití php-fpm.",
+ "The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Konfigurace je nastavena pouze pro čtení. Toto znemožňuje některá nastavení přes webové rozhraní. Dále musí být pro každou změnu povolen zápis do souboru s nastaveními ručně.",
"PHP is apparently setup to strip inline doc blocks. This will make several core apps inaccessible." : "PHP je patrně nastaveno tak, aby odstraňovalo bloky komentářů. Toto bude mít za následek znepřístupnění mnoha důležitých aplikací.",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Toto je pravděpodobně způsobeno aplikacemi pro urychlení načítání jako jsou Zend OPcache nebo eAccelerator.",
"Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Vaše databáze neběží s úrovní izolace transakcí \"READ COMMITTED\". Toto může způsobit problémy při paralelním spouštění více akcí současně.",
@@ -370,7 +379,7 @@ OC.L10N.register(
"System locale can not be set to a one which supports UTF-8." : "Není možné nastavit znakovou sadu, která podporuje UTF-8.",
"This means that there might be problems with certain characters in file names." : "To znamená, že se mohou vyskytnout problémy s určitými znaky v názvech souborů.",
"We strongly suggest installing the required packages on your system to support one of the following locales: %s." : "Velmi doporučujeme nainstalovat požadované balíčky do systému, pro podporu jednoho z následujících národních prostředí: %s.",
- "If your installation is not installed in the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problém s generováním správné URL. Pro zabránění těmto chybám nastavte prosím správnou cestu ve svém config.php souboru v hodnotě \"overwrite.cli.url\" (Je doporučena tato: \"%s\")",
+ "If your installation is not installed in the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problém s generováním správné URL. Pro zabránění těmto chybám nastavte prosím správnou cestu ve svém config.php souboru v hodnotě „overwrite.cli.url“ (Je doporučena tato: „%s“)",
"It was not possible to execute the cronjob via CLI. The following technical errors have appeared:" : "Nebylo možné spustit službu cron v CLI. Došlo k následujícím technickým chybám:",
"Please double check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Prosím překontrolujte <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">instalační pokyny ↗</a> a najděte jakékoliv chyby a varování v <a href=\"%s\">logu</a>.",
"cron.php is registered at a webcron service to call cron.php every 15 minutes over http." : "cron.php je zaregistrován službou webcron a volá cron.php každých 15 minut přes http.",
@@ -394,8 +403,8 @@ OC.L10N.register(
"Documentation:" : "Dokumentace:",
"Admin documentation" : "Dokumentace pro administrátory",
"Report a bug" : "Nahlásit chybu",
- "Show description …" : "Zobrazit popis ...",
- "Hide description …" : "Skrýt popis ...",
+ "Show description …" : "Zobrazit popis…",
+ "Hide description …" : "Skrýt popis…",
"This app has no maximum Nextcloud version assigned. This will be an error in the future." : "Tato aplikace nemá nastavenou žádnou maximální verzi Nextcloudu. To se v budoucnu projeví jako chyba.",
"Enable only for specific groups" : "Povolit pouze pro vybrané skupiny",
"Online documentation" : "Online dokumentace",
@@ -411,8 +420,9 @@ OC.L10N.register(
"Show First Run Wizard again" : "Znovu zobrazit průvodce prvním spuštěním",
"Web, desktop, mobile clients and app specific passwords that currently have access to your account." : "Weboví, desktopoví a mobilní klienti a hesla v aplikacích, která aktuálně mají přístup k vašemu účtu.",
"App passwords" : "Hesla aplikace",
+ "Here you can generate individual passwords for apps so you don’t have to give out your password. You can revoke them individually too." : "Zde je možné vytvořit hesla pro jednotlivé aplikace, abyste v nich nemuseli používat své osobní heslo. Tím aplikacím můžete také jednotlivě rušit.",
"Follow us on Google+!" : "Následujte nás na Google+!",
- "Like our facebook page!" : "Označte naši facebookovou stránku jako \"To se mi líbí\"!",
+ "Like our facebook page!" : "Označte naši facebookovou stránku jako „To se mi líbí“!",
"Follow us on Twitter!" : "Následujte nás na Twitteru!",
"Check out our blog!" : "Podívejte se na náš blog!",
"Subscribe to our newsletter!" : "Přihlaste se k odběru našeho zpravodaje!",
@@ -428,7 +438,7 @@ OC.L10N.register(
"Enter the recovery password in order to recover the users files during password change" : "Zadejte heslo obnovy pro obnovení souborů uživatele při změně hesla",
"Group name" : "Název skupiny",
"Disabled" : "Zakázaní",
- "Please enter storage quota (ex: \"512 MB\" or \"12 GB\")" : "Zvolte prosím kvótu pro úložiště (např. \"512 MB\" nebo \"12 GB\")",
+ "Please enter storage quota (ex: \"512 MB\" or \"12 GB\")" : "Zvolte prosím kvótu pro úložiště (např. „512 MB“ nebo „12 GB“)",
"Other" : "Jiný",
"Quota" : "Kvóta",
"Storage location" : "Úložiště dat",
@@ -451,8 +461,8 @@ OC.L10N.register(
"Transactional file locking is disabled, this might lead to issues with race conditions. Enable 'filelocking.enabled' in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation ↗</a> for more information." : "Transakční zamykání souborů je vypnuto, což by mohlo vést k problémům se souběhem úloh. Povolte 'filelocking.enabled' v config.php, abyste se těmto problémům vyhnuli. Pro více informací si prohlédněte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci ↗</a>.",
"This means that there might be problems with certain characters in filenames." : "To znamená, že se mohou vyskytnout problémy s určitými znaky v názvech souborů.",
"It is strongly proposed to install the required packages on your system to support one of the following locales: %s." : "Velmi doporučujeme nainstalovat požadované balíčky do systému, pro podporu jednoho z následujících národních prostředí: %s.",
- "If your installation is not installed at the root of the domain and uses system Cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problém s generováním správné URL. Pro zabránění těmto chybám nastavte prosím správnou cestu ve svém config.php souboru v hodnotě \"overwrite.cli.url\" (Je doporučena tato: \"%s\")",
- "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebylo možné spustit službu cron v CLI. Došlo k následujícím technickým chybám:",
- "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation ↗</a>." : "Chcete-li migrovat do jiné databáze, použijte nástroj příkazového řádku: 'occ db:convert-type', nebo si projděte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci ↗</a>."
+ "If your installation is not installed at the root of the domain and uses system Cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problémy s vytvářením správné URL. Pro zabránění těmto chybám nastavte správný popis umístění ve svém souboru config.php v hodnotě „overwrite.cli.url“ (Je doporučena tato: „%s“)",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebylo možné spustit službu plánovače cron v CLI. Došlo k následujícím technickým chybám:",
+ "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation ↗</a>." : "Pokud chcete-li převést do jiné databáze, použijte nástroj pro příkazový řádek: „occ db:convert-type“, nebo si projděte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci ↗</a>."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/settings/l10n/cs.json b/settings/l10n/cs.json
index c26523f5fc5..0025044f40f 100644
--- a/settings/l10n/cs.json
+++ b/settings/l10n/cs.json
@@ -1,13 +1,13 @@
{ "translations": {
"{actor} changed your password" : "{actor} změnil(a) vaše heslo",
- "You changed your password" : "Změnil(a) jste vaše heslo",
- "Your password was reset by an administrator" : "Vaše heslo bylo resetováno administrátorem",
+ "You changed your password" : "Změnili jste své heslo",
+ "Your password was reset by an administrator" : "Vaše heslo bylo resetováno správcem",
"{actor} changed your email address" : "{actor} změnil(a) vaši e-mailovou adresu",
- "You changed your email address" : "Změnil(a) jste vaši e-mailovou adresu",
- "Your email address was changed by an administrator" : "Vaše e-mailová adresa byla změněna administrátorem",
+ "You changed your email address" : "Změnili jste svou e-mailovou adresu",
+ "Your email address was changed by an administrator" : "Vaše e-mailová adresa byla změněna správcem",
"Security" : "Zabezpečení",
- "You successfully logged in using two-factor authentication (%1$s)" : "Úspěšně jste se přihlásili pomocí dvoufázové autentizace (%1$s)",
- "A login attempt using two-factor authentication failed (%1$s)" : "Pokus o přihlášení s použitím dvoufázové autentizace selhal (%1$s)",
+ "You successfully logged in using two-factor authentication (%1$s)" : "Úspěšně jste se přihlásili pomocí dvoufázového ověření (%1$s)",
+ "A login attempt using two-factor authentication failed (%1$s)" : "Pokus o přihlášení s použitím dvoufázové autentizace se nezdařil (%1$s)",
"Your <strong>password</strong> or <strong>email</strong> was modified" : "Vaše <strong>heslo</strong> nebo <strong>e-mail</strong> bylo změněno",
"Couldn't remove app." : "Nepodařilo se odebrat aplikaci.",
"Couldn't update app." : "Nelze aktualizovat aplikaci.",
@@ -16,12 +16,12 @@
"No user supplied" : "Nebyl uveden uživatel",
"Unable to change password" : "Změna hesla se nezdařila",
"Authentication error" : "Chyba přihlášení",
- "Please provide an admin recovery password; otherwise, all user data will be lost." : "Zadejte prosím administrátorské heslo pro obnovu, jinak budou všechna uživatelská data ztracena.",
- "Wrong admin recovery password. Please check the password and try again." : "Chybné administrátorské heslo pro obnovu. Překontrolujte správnost hesla a zkuste to znovu.",
- "Backend doesn't support password change, but the user's encryption key was updated." : "Backend nepodporuje změnu hesla, ale uživatelův šifrovací klíč byl aktualizován.",
+ "Please provide an admin recovery password; otherwise, all user data will be lost." : "Zadejte správcovské heslo pro obnovu, jinak budou všechna uživatelská data ztracena.",
+ "Wrong admin recovery password. Please check the password and try again." : "Chybné správcovské heslo pro obnovu. Překontrolujte správnost hesla a zkuste to znovu.",
+ "Backend doesn't support password change, but the user's encryption key was updated." : "Podpůrná vrstva nepodporuje změnu hesla, ale uživatelův šifrovací klíč byl aktualizován.",
"installing and updating apps via the app store or Federated Cloud Sharing" : "Instalovat a aktualizovat aplikace pomocí obchodu nebo Sdíleného Cloudového Úložiště",
"Federated Cloud Sharing" : "Propojené cloudové sdílení",
- "cURL is using an outdated %s version (%s). Please update your operating system or features such as %s will not work reliably." : "cURL používá zastaralou %s verzi (%s). Aktualizujte prosím svůj operační systém, jinak funkce jako %s nemusí spolehlivě pracovat.",
+ "cURL is using an outdated %s version (%s). Please update your operating system or features such as %s will not work reliably." : "cURL používá zastaralou %s verzi (%s). Aktualizujte svůj operační systém, jinak funkce jako %s nemusí spolehlivě pracovat.",
"Invalid SMTP password." : "Neplatné heslo SMTP.",
"Email setting test" : "Zkouška nastavení e-mailu",
"Well done, %s!" : "Úspěšně nastaveno, %s!",
@@ -34,15 +34,15 @@
"Unable to change full name" : "Nelze změnit celé jméno",
"Unable to change email address" : "Nepodařilo se změnit e-mailovou adresu",
"In order to verify your Twitter account, post the following tweet on Twitter (please make sure to post it without any line breaks):" : "Pokud chcete ověřit váš Twitter účet, napište následující tweet (ujistěte se, že ho zasíláte bez zalomení řádků):",
- "In order to verify your Website, store the following content in your web-root at '.well-known/CloudIdVerificationCode.txt' (please make sure that the complete text is in one line):" : "Pro verifikaci vašich webových stránek uložte následující obsah v kořenovém adresáři webové prezentace v umístění '.well-known/CloudIdVerificationCode.txt' (ujistěte se, že byl text vložen jako jediný řádek)",
+ "In order to verify your Website, store the following content in your web-root at '.well-known/CloudIdVerificationCode.txt' (please make sure that the complete text is in one line):" : "Pro ověřování vašich webových stránek uložte následující obsah v kořenovém adresáři webové prezentace v umístění '.well-known/CloudIdVerificationCode.txt' (ujistěte se, že byl text vložen jako jediný řádek)",
"%1$s changed your password on %2$s." : "%1$s změnil(a) vaše heslo na %2$s.",
"Your password on %s was changed." : "Vaše heslo na %s bylo změněno.",
- "Your password on %s was reset by an administrator." : "Vaše heslo na %s bylo resetováno administrátorem.",
+ "Your password on %s was reset by an administrator." : "Vaše heslo na %s bylo resetováno správcem.",
"Password for %1$s changed on %2$s" : "Heslo pro %1$s na %2$s změněno ",
"Password changed for %s" : "Změna hesla pro %s",
- "If you did not request this, please contact an administrator." : "Pokud jste o toto nežádali, prosím, kontaktujte administrátora.",
+ "If you did not request this, please contact an administrator." : "Pokud jste o toto nežádali, obraťte se na správce.",
"Your email address on %s was changed." : "Vaše e-mailová adresa na %s byla změněna.",
- "Your email address on %s was changed by an administrator." : "Vaše e-mailová adresa na %s byla změněna administrátorem.",
+ "Your email address on %s was changed by an administrator." : "Vaše e-mailová adresa na %s byla změněna správcem.",
"Email address for %1$s changed on %2$s" : "E-mailová adresa pro %1$s se na %2$s změnila",
"Email address changed for %s" : "E-mailová adresa pro %s byla změněna",
"The new email address is %s" : "Nová e-mailová adresa je %s",
@@ -55,12 +55,12 @@
"Go to %s" : "Jít na %s",
"Install Client" : "Nainstalovat klienta",
"Logged in user must be a subadmin" : "Je třeba, aby přihlášený uživatel byl dílčím správcem",
- "Migration in progress. Please wait until the migration is finished" : "Migrace probíhá. Počkejte prosím než bude dokončena",
- "Migration started …" : "Migrace spuštěna ...",
+ "Migration in progress. Please wait until the migration is finished" : "Migrace probíhá. Počkejte než bude dokončena",
+ "Migration started …" : "Migrace spuštěna…",
"Not saved" : "Neuloženo",
"Sending…" : "Odesílání…",
"Email sent" : "E-mail odeslán",
- "Allow filesystem access" : "Povolit přístup k souborovému systému",
+ "Allow filesystem access" : "Umožnit přístup k souborovému systému",
"Disconnect" : "Odpojit",
"Revoke" : "Odvolat",
"Internet Explorer" : "Internet Explorer",
@@ -79,7 +79,7 @@
"Copied!" : "Zkopírováno!",
"Not supported!" : "Nepodporováno!",
"Press ⌘-C to copy." : "Zkopírujete stisknutím ⌘-C.",
- "Press Ctrl-C to copy." : "Zmáčknout Ctrl-C pro kopírování.",
+ "Press Ctrl-C to copy." : "Zkopírujete stisknutím Ctrl-C.",
"Error while loading browser sessions and device tokens" : "Chyba při načítání sezení prohlížeče a tokenů přístroje",
"Error while creating device token" : "Chyba při vytváření tokenů přístroje",
"Error while deleting the token" : "Chyba při mazání tokenu",
@@ -100,7 +100,7 @@
"Weak password" : "Slabé heslo",
"So-so password" : "Středně silné heslo",
"Good password" : "Dobré heslo",
- "Strong password" : "Silné heslo",
+ "Strong password" : "Odolné heslo",
"An error occured while changing your language. Please reload the page and try again." : "Při změně jazyka došlo k chybě. Znovu načtěte stránku a zkuste to ještě jednou.",
"An error occured while changing your locale. Please reload the page and try again." : "Došlo k chybě při změně místních a jazykových nastavení. Načtěte stránku znovu a zopakujte pokus.",
"Select a profile picture" : "Vyberte profilový obrázek",
@@ -115,6 +115,7 @@
"Developer documentation" : "Vývojářská dokumentace",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Tato aplikace nemá nastavenou žádnou minimální verzi Nextcloudu. To se v budoucnu projeví jako chyba.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Tuto aplikaci nelze nainstalovat, protože nejsou splněny následující závislosti:",
+ "{license}-licensed" : "licencováno pod {license}",
"Disable all" : "Zakázat vše",
"Enable all" : "Povolit vše",
"Download and enable" : "Stáhnout a povolit",
@@ -135,6 +136,7 @@
"Unlimited" : "Neomezeně",
"Default quota" : "Výchozí kvóta",
"Default language" : "Výchozí jazyk",
+ "Password change is disabled because the master key is disabled" : "Změna hesla je vypnutá protože je vypnutý hlavní klíč",
"Common languages" : "Běžné jazyky",
"All languages" : "Všechny jazyky",
"You did not enter the password in time" : "Nezadali jste heslo včas",
@@ -147,7 +149,9 @@
"Disabled apps" : "Zakázané aplikace",
"Updates" : "Aktualizace",
"App bundles" : "Balíčky aplikací",
- "Please confirm the group removal " : "Potvrďte prosím odstranění skupiny",
+ "Default quota:" : "Výchozí kvóta:",
+ "You are about to remove the group {group}. The users will NOT be deleted." : "Chystáte se smazat skupinu {group}. Uživatelé NEbudou smazáni.",
+ "Please confirm the group removal " : "Potvrďte odstranění skupiny",
"Remove group" : "Odebrat skupinu",
"Admins" : "Správci",
"Disabled users" : "Zakázaní uživatelé",
@@ -159,7 +163,7 @@
"Issued By" : "Vydal",
"Valid until %s" : "Platný do %s",
"Import root certificate" : "Import kořenového certifikátu",
- "Administrator documentation" : "Dokumentace administrátora",
+ "Administrator documentation" : "Dokumentace pro správu",
"Documentation" : "Dokumentace",
"Forum" : "Fórum",
"None" : "Žádné",
@@ -188,44 +192,48 @@
"Server-side encryption" : "Šifrování na straně serveru",
"Server-side encryption makes it possible to encrypt files which are uploaded to this server. This comes with limitations like a performance penalty, so enable this only if needed." : "Šifrování na straně serveru umožňuje zašifrovat soubory, které jsou na tento server nahrávány. To přináší omezení jako třeba výkonnostní omezení, takže to povolte jen pokud je třeba.",
"Enable server-side encryption" : "Povolit šifrování na straně serveru",
- "Please read carefully before activating server-side encryption: " : "Pročtěte prosím důkladně před aktivací šifrování dat na serveru:",
+ "Please read carefully before activating server-side encryption: " : "Pročtěte důkladně před zapnutím šifrování dat na serveru:",
"Once encryption is enabled, all files uploaded to the server from that point forward will be encrypted at rest on the server. It will only be possible to disable encryption at a later date if the active encryption module supports that function, and all pre-conditions (e.g. setting a recover key) are met." : "Poté co je zapnuto šifrování, jsou od toho bodu všechny nahrávané soubory šifrovány serverem. Vypnout šifrování bude možné pouze později, až bude šifrovací modul tuto možnost podporovat a po splnění všech nutných podmínek (tzn. nastavení klíčů pro obnovení).",
"Encryption alone does not guarantee security of the system. Please see documentation for more information about how the encryption app works, and the supported use cases." : "Šifrování samotné ještě negarantuje bezpečnost systému. Přečtěte si prosím dokumentaci, chcete-li se dozvědět více informací o tom, jak aplikace pro šifrování funguje a jaké jsou podporované případy použití.",
"Be aware that encryption always increases the file size." : "Mějte na paměti, že šifrování vždy navýší velikost souboru.",
"It is always good to create regular backups of your data, in case of encryption make sure to backup the encryption keys along with your data." : "Je vždy dobré vytvářet pravidelné zálohy svých dat, v případě zapnutého šifrování také zajistěte zálohu šifrovacích klíčů společně se zálohou dat.",
"This is the final warning: Do you really want to enable encryption?" : "Toto je poslední varování: Opravdu si přejete zapnout šifrování?",
"Enable encryption" : "Povolit šifrování",
- "No encryption module loaded, please enable an encryption module in the app menu." : "Není načten žádný šifrovací modul, povolte ho prosím v menu aplikací.",
+ "No encryption module loaded, please enable an encryption module in the app menu." : "Není načten žádný šifrovací modul, povolte ho v nabídce aplikace.",
"Select default encryption module:" : "Vybrat výchozí šifrovací modul:",
- "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please enable the \"Default encryption module\" and run 'occ encryption:migrate'" : "Musíte přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Povolte prosím \"Default encryption module\" a spusťte příkaz 'occ encryption:migrate'",
- "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Musíte přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou.",
+ "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one. Please enable the \"Default encryption module\" and run 'occ encryption:migrate'" : "Je třeba přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou. Povolte prosím „Default encryption module“ a spusťte příkaz 'occ encryption:migrate'",
+ "You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Je třeba přenést své šifrovací klíče ze staré verze šifrování (ownCloud <= 8.0) na novou.",
"Start migration" : "Spustit migraci",
"Security & setup warnings" : "Upozornění zabezpečení a nastavení",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Pro optimální zabezpečení a výkon instance je důležitě, aby vše bylo správně nakonfigurováno. Abychom vám v tom pomohli, automaticky ověřujeme některá nastavení. Pro více informací nahlédněte do sekce Tipy a Triky a do dokumentace.",
- "All checks passed." : "Všechny testy byly úspěšné.",
- "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Prosím, důkladně si přečtěte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">průvodce instalací ↗</a>a zkontrolujte, že v <a href=\"%s\">logu</a> nejsou žádné chyby ani žádná varování.",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Pro zabezpečení a optimální výkon instance Nextcloud je důležitě, aby vše bylo správně nastaveno. Jako pomoc, instance samotná automaticky ověřuje některá nastavení. Více informací je k nalezení v dokumentaci, sekci Tipy a Triky.",
+ "All checks passed." : "Všechny testy proběhly úspěšně.",
+ "There are some errors regarding your setup." : "Jsou zde nějaké chyby ohledně vašeho nastavení.",
+ "There are some warnings regarding your setup." : "Jsou zde nějaká varování ohledně vašeho nastavení.",
+ "Checking for system and security issues." : "Kontrola systému a problémů se zabezpečením.",
+ "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Důkladně si přečtěte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">průvodce instalací ↗</a>a zkontrolujte, že v <a href=\"%s\">záznamu událostí</a> nejsou žádné chyby ani varování.",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "Zkontrolujte zabezpečení svého Nextcloud přes <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">náš skener zabezpečení ↗</a>.",
"Version" : "Verze",
"Background jobs" : "Úkoly na pozadí",
- "Last job ran %s." : "Poslední úkol proběhl: %s.",
- "Last job execution ran %s. Something seems wrong." : "Poslední úkol proběhl: %s. Vypadá to, že něco není v pořádku.",
- "Background job didn’t run yet!" : "Úkol na pozadí ještě neběžel",
- "For optimal performance it's important to configure background jobs correctly. For bigger instances 'Cron' is the recommended setting. Please see the documentation for more information." : "Pro optimální výkon je důležité nakonfigurovat úkoly běžící na pozadí. Pro větší instance je doporučenou metodou 'cron'. Více informací naleznete v dokumentaci.",
- "Execute one task with each page loaded" : "Spustit jednu úlohu s každým načtením stránky",
+ "Last job ran %s." : "Poslední úloha byla vykonána: %s.",
+ "Last job execution ran %s. Something seems wrong." : "Minulá úloha byla vykonána: %s. Zdá se, že něco není v pořádku.",
+ "Background job didn’t run yet!" : "Úloha na pozadí ještě nebyla spuštěná!",
+ "For optimal performance it's important to configure background jobs correctly. For bigger instances 'Cron' is the recommended setting. Please see the documentation for more information." : "Pro optimální výkon je důležité správně nastavit úlohy spouštěné na pozadí. Pro větší instance je doporučenou metodou použití systémového plánovače (cron). Více informací naleznete v dokumentaci.",
+ "Execute one task with each page loaded" : "Spustit jednu úlohu s načtením každé stránky",
"cron.php is registered at a webcron service to call cron.php every 15 minutes over HTTP." : "cron.php je registrován u služby webcron, aby volal cron.php jednou za 15 minut přes HTTP.",
"Use system cron service to call the cron.php file every 15 minutes." : "Použít systémovou službu cron pro volání cron.php každých 15 minut.",
- "The cron.php needs to be executed by the system user \"%s\"." : "cron.php musí být spuštěn s právy systémového uživatele \"%s\".",
- "To run this you need the PHP POSIX extension. See {linkstart}PHP documentation{linkend} for more details." : "Pro spuštění je potřeba PHP POSIX rozšíření. Více informací lze nalézt v {linkstart}PHP dokumentaci{linkend}.",
+ "The cron.php needs to be executed by the system user \"%s\"." : "Je třeba, aby cron.php bylo spouštěno s právy systémového uživatele „%s“.",
+ "To run this you need the PHP POSIX extension. See {linkstart}PHP documentation{linkend} for more details." : "Pro spuštění je potřeba PHP POSIX rozšíření. Více informací lze nalézt v {linkstart}dokumentaci k PHP{linkend}.",
"Sharing" : "Sdílení",
- "As admin you can fine-tune the sharing behavior. Please see the documentation for more information." : "Jako administrátor můžete upravit chování sdílení. Více informací naleznete v dokumentaci.",
- "Allow apps to use the Share API" : "Povolit aplikacím používat API sdílení",
- "Allow users to share via link" : "Povolit uživatelům sdílení pomocí odkazů",
- "Allow public uploads" : "Povolit veřejné nahrávání souborů",
+ "As admin you can fine-tune the sharing behavior. Please see the documentation for more information." : "Jako správce můžete upravit chování sdílení. Více informací naleznete v dokumentaci.",
+ "Allow apps to use the Share API" : "Umožnit aplikacím používat API sdílení",
+ "Allow users to share via link" : "Umožnit uživatelům sdílet pomocí odkazů",
+ "Allow public uploads" : "Umožnit veřejné nahrávání souborů",
"Always ask for a password" : "Vždy se zeptat na heslo",
"Enforce password protection" : "Vynutit ochranu heslem",
- "Set default expiration date" : "Nastavit výchozí datum vypršení platnosti",
+ "Set default expiration date" : "Nastavit výchozí datum skončení platnosti",
"Expire after " : "Platnost skončí po",
"days" : "dnech",
- "Enforce expiration date" : "Vynutit datum vypršení",
+ "Enforce expiration date" : "Vynutit datum skončení platnosti",
"Allow resharing" : "Povolit znovu-sdílení",
"Allow sharing with groups" : "Povolit sdílení se skupinami",
"Restrict users to only share with users in their groups" : "Povolit sdílení pouze mezi uživateli v rámci skupiny",
@@ -237,12 +245,13 @@
"Default share permissions" : "Výchozí oprávnění sdílení",
"Personal" : "Osobní",
"Administration" : "Správa",
- "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Vyvíjeno {communityopen}Nextcloud komunitou{linkclose}, {githubopen}zdrojový kód{linkclose} je licencován pod {licenseopen}AGPL{linkclose}.",
- "Follow us on Google+" : "Sledujte nás na Google+",
- "Like our Facebook page" : "Stejně jako naše stránky na Facebooku",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Vyvíjeno {communityopen}komunitou Nextcloud{linkclose}, {githubopen}zdrojové kódy{linkclose} jsou licencovány pod {licenseopen}AGPL{linkclose}.",
+ "Follow us on Google+" : "Následujte nás na Google+",
+ "Like our Facebook page" : "Lajkujte naše stránky na Facebooku",
"Follow us on Twitter" : "Sledujte nás na Twitteru",
+ "Follow us on Mastodon" : "Sledujte nás na Mastodon",
"Check out our blog" : "Podívejte se na náš blog",
- "Subscribe to our newsletter" : "Odebírejte náš newsletter",
+ "Subscribe to our newsletter" : "Odebírejte náš zpravodaj",
"Profile picture" : "Profilový obrázek",
"Upload new" : "Nahrát nový",
"Select from Files" : "Vybrat ze Souborů",
@@ -270,69 +279,69 @@
"Twitter" : "Twitter",
"Twitter handle @…" : "Přezdívka na Twitteru @…",
"Help translate" : "Pomoci s překladem",
- "Locale" : "Lokalizace",
+ "Locale" : "Místní a jazyková nastavení",
"Password" : "Heslo",
- "Current password" : "Současné heslo",
+ "Current password" : "stávající heslo",
"New password" : "Nové heslo",
"Change password" : "Změnit heslo",
"Devices & sessions" : "Zařízení a sezení",
- "Web, desktop and mobile clients currently logged in to your account." : "Weboví, desktopoví a mobilní klienti aktuálně přihlášeni k vašemu účtu.",
+ "Web, desktop and mobile clients currently logged in to your account." : "Weboví, desktopoví a mobilní klienti aktuálně přihlášení k vašemu účtu.",
"Device" : "Přístroj",
"Last activity" : "Poslední aktivita",
- "App name" : "Jméno aplikace",
+ "App name" : "Název aplikace",
"Create new app password" : "Vytvořit nové heslo aplikace",
- "Use the credentials below to configure your app or device." : "Použijte údaje níže pro nastavení aplikace nebo zařízení.",
+ "Use the credentials below to configure your app or device." : "Pro nastavení aplikace nebo zařízení použijte níže uvedené údaje.",
"For security reasons this password will only be shown once." : "Toto heslo bude z bezpečnostních důvodů zobrazeno pouze jedenkrát.",
"Username" : "Uživatelské jméno",
"Done" : "Dokončeno",
"Enabled apps" : "Povolené aplikace",
- "A problem occurred, please check your log files (Error: %s)" : "Došlo k chybě, zkontrolujte prosím log (Chyba: %s)",
+ "A problem occurred, please check your log files (Error: %s)" : "Došlo k chybě, zkontrolujte záznam událostí (Chyba: %s)",
"Migration Completed" : "Migrace dokončena",
"Group already exists." : "Skupina už existuje.",
- "Unable to add group." : "Nelze přidat skupinu.",
+ "Unable to add group." : "Skupinu se nedaří přidat.",
"Unable to delete group." : "Nelze smazat skupinu.",
"No valid group selected" : "Není vybrána platná skupina",
- "A user with that name already exists." : "Uživatel tohoto jména již existuje.",
+ "A user with that name already exists." : "Uživatel tohoto jména už existuje.",
"To send a password link to the user an email address is required." : "Pro zaslání odkazu na heslo uživateli je nutná e-mailová adresa.",
- "Unable to create user." : "Nelze vytvořit uživatele.",
- "Unable to delete user." : "Nelze smazat uživatele.",
+ "Unable to create user." : "Uživatele se nedaří vytvořit.",
+ "Unable to delete user." : "Uživatele se nedaří smazat.",
"Error while enabling user." : "Chyba při povolování uživatele.",
"Error while disabling user." : "Chyba při zakazování uživatele.",
"Your full name has been changed." : "Vaše celé jméno bylo změněno.",
"Forbidden" : "Zakázáno",
"Invalid user" : "Neplatný uživatel",
- "Unable to change mail address" : "Nelze změnit e-mailovou adresu",
+ "Unable to change mail address" : "E-mailovou adresu se nedaří změnit",
"Email saved" : "E-mail uložen",
"%1$s changed your email address on %2$s." : "%1$s změnil(a) vaši e-mailovou adresu na %2s.",
"Password confirmation is required" : "Je vyžadováno potvrzení hesla",
- "Are you really sure you want add {domain} as trusted domain?" : "Jste si jisti, že chcete přidat {domain} mezi důvěryhodné domény?",
+ "Are you really sure you want add {domain} as trusted domain?" : "Opravdu chcete přidat {domain} mezi důvěryhodné domény?",
"Add trusted domain" : "Přidat důvěryhodnou doménu",
"All" : "Vše",
"Update to %s" : "Aktualizovat na %s",
"_You have %n app update pending_::_You have %n app updates pending_" : ["K dispozici je jedna aktualizace","K dispozici je pár aktualizací","K dispozici je mnoho aktualizací","K dispozici je celkem %naktualizací"],
"No apps found for your version" : "Nebyly nalezeny aplikace pro vaši verzi",
- "Official apps are developed by and within the community. They offer central functionality and are ready for production use." : "Oficiální aplikace jsou vyvíjeny komunitou. Poskytují klíčovou funkcionalitu a jsou připravené na produkční nasazení.",
+ "Official apps are developed by and within the community. They offer central functionality and are ready for production use." : "Oficiální aplikace jsou vyvíjeny komunitou. Poskytují klíčové funkce a jsou připravené na produkční nasazení.",
"Approved apps are developed by trusted developers and have passed a cursory security check. They are actively maintained in an open code repository and their maintainers deem them to be stable for casual to normal use." : "Schválené aplikace jsou vyvíjeny důvěryhodnými vývojáři a prošly zběžným bezpečnostním prověřením. Jsou aktivně udržovány v repozitáři s otevřeným kódem a jejich správci je považují za stabilní pro občasné až normální použití.",
"This app is not checked for security issues and is new or known to be unstable. Install at your own risk." : "U této aplikace nebyla provedena kontrola na bezpečnostní problémy. Aplikace je nová nebo nestabilní. Instalujte pouze na vlastní nebezpečí.",
- "Disabling app …" : "Zakazuji aplikaci…",
+ "Disabling app …" : "Zakazování aplikace…",
"Error while disabling app" : "Chyba při zakazování aplikace",
"Disable" : "Zakázat",
- "Enabling app …" : "Povolování aplikace …",
+ "Enabling app …" : "Povolování aplikace…",
"Error while enabling app" : "Chyba při povolování aplikace",
"Error: Could not disable broken app" : "Chyba: nezdařilo se vypnout rozbitou aplikaci",
"Error while disabling broken app" : "Chyba při vypínání rozbité aplikace",
"Updating...." : "Aktualizace…",
"Error while updating app" : "Chyba při aktualizaci aplikace",
"Updated" : "Aktualizováno",
- "Removing …" : "Odstraňování …",
+ "Removing …" : "Odstraňování…",
"Error while removing app" : "Chyba při odebírání aplikace",
"Remove" : "Odstranit",
"Approved" : "Potvrzeno",
"Experimental" : "Experimentální",
"No apps found for {query}" : "Nebyly nalezeny žádné aplikace pro {query}",
- "Unable to delete {objName}" : "Nelze smazat {objName}",
- "Error creating group: {message}" : "Chyba vytvoření skupiny: {message}",
- "A valid group name must be provided" : "Musíte zadat platný název skupiny",
+ "Unable to delete {objName}" : "Nedaří se smazat {objName}",
+ "Error creating group: {message}" : "Chyba při vytváření skupiny: {message}",
+ "A valid group name must be provided" : "Je třeba zadat platný název skupiny",
"deleted {groupName}" : "smazána {groupName}",
"undo" : "vrátit zpět",
"never" : "nikdy",
@@ -341,24 +350,24 @@
"Unable to add user to group {group}" : "Nelze přidat uživatele do skupiny {group}",
"Unable to remove user from group {group}" : "Nelze odebrat uživatele ze skupiny {group}",
"Add group" : "Přidat skupinu",
- "Invalid quota value \"{val}\"" : "Neplatná hodnota kvóty \"{val}\"",
+ "Invalid quota value \"{val}\"" : "Neplatná hodnota kvóty „{val}“",
"no group" : "není ve skupině",
"Password successfully changed" : "Heslo úspěšně změněno",
"Changing the password will result in data loss, because data recovery is not available for this user" : "Změna hesla bude mít za následek ztrátu dat, protože jejich obnova není pro tohoto uživatele dostupná.",
"Could not change the users email" : "Nelze změnit e-mail uživatele",
"Error while changing status of {user}" : "Chyba při změně stavu {user}",
- "A valid username must be provided" : "Musíte zadat platné uživatelské jméno",
+ "A valid username must be provided" : "Je třeba zadat platné uživatelské jméno",
"Error creating user: {message}" : "Chyba vytvoření uživatele: {message}",
- "A valid password must be provided" : "Musíte zadat platné heslo",
- "A valid email must be provided" : "Musíte zadat platný e-mail",
+ "A valid password must be provided" : "Je třeba zadat platné heslo",
+ "A valid email must be provided" : "Je třeba zadat platný e-mail",
"__language_name__" : "čeština",
"Verifying" : "Ověřování",
"Personal info" : "Osobní údaje",
"Sync clients" : "Synchronizační klienti",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "Pro optimální zabezpečení a výkon instance je důležitě, aby vše bylo správně nakonfigurováno. Abychom vám v tom pomohli, automaticky ověřujeme některá nastavení. Pro více informací nahlédněte do sekce Tipy a Triky a do dokumentace.",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "Pro optimální zabezpečení a výkon instance je důležitě, aby vše bylo správně nastaveno. Abychom vám v tom pomohli, automaticky ověřujeme některá nastavení. Pro více informací nahlédněte do sekce Tipy a Triky a do dokumentace.",
"php does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "php není nejspíše správně nastaveno pro dotazování na proměnné hodnoty systému. Test s getenv(\"PATH\") vrací pouze prázdnou odpověď.",
- "Please check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation documentation ↗</a> for php configuration notes and the php configuration of your server, especially when using php-fpm." : "Zkontrolujte prosím konfiguraci php podle <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">instalační dokumentace ↗</a>, hlavně při použití php-fpm.",
- "The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Konfigurace je nastavena pouze pro čtení. Toto znemožňuje některá nastavení přes webové rozhraní. Dále musí být pro každou změnu povolen zápis do konfiguračního souboru ručně.",
+ "Please check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation documentation ↗</a> for php configuration notes and the php configuration of your server, especially when using php-fpm." : "Zkontrolujte nastavení php podle <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">instalační dokumentace ↗</a>, hlavně při použití php-fpm.",
+ "The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Konfigurace je nastavena pouze pro čtení. Toto znemožňuje některá nastavení přes webové rozhraní. Dále musí být pro každou změnu povolen zápis do souboru s nastaveními ručně.",
"PHP is apparently setup to strip inline doc blocks. This will make several core apps inaccessible." : "PHP je patrně nastaveno tak, aby odstraňovalo bloky komentářů. Toto bude mít za následek znepřístupnění mnoha důležitých aplikací.",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Toto je pravděpodobně způsobeno aplikacemi pro urychlení načítání jako jsou Zend OPcache nebo eAccelerator.",
"Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Vaše databáze neběží s úrovní izolace transakcí \"READ COMMITTED\". Toto může způsobit problémy při paralelním spouštění více akcí současně.",
@@ -368,7 +377,7 @@
"System locale can not be set to a one which supports UTF-8." : "Není možné nastavit znakovou sadu, která podporuje UTF-8.",
"This means that there might be problems with certain characters in file names." : "To znamená, že se mohou vyskytnout problémy s určitými znaky v názvech souborů.",
"We strongly suggest installing the required packages on your system to support one of the following locales: %s." : "Velmi doporučujeme nainstalovat požadované balíčky do systému, pro podporu jednoho z následujících národních prostředí: %s.",
- "If your installation is not installed in the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problém s generováním správné URL. Pro zabránění těmto chybám nastavte prosím správnou cestu ve svém config.php souboru v hodnotě \"overwrite.cli.url\" (Je doporučena tato: \"%s\")",
+ "If your installation is not installed in the root of the domain and uses system cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problém s generováním správné URL. Pro zabránění těmto chybám nastavte prosím správnou cestu ve svém config.php souboru v hodnotě „overwrite.cli.url“ (Je doporučena tato: „%s“)",
"It was not possible to execute the cronjob via CLI. The following technical errors have appeared:" : "Nebylo možné spustit službu cron v CLI. Došlo k následujícím technickým chybám:",
"Please double check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Prosím překontrolujte <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">instalační pokyny ↗</a> a najděte jakékoliv chyby a varování v <a href=\"%s\">logu</a>.",
"cron.php is registered at a webcron service to call cron.php every 15 minutes over http." : "cron.php je zaregistrován službou webcron a volá cron.php každých 15 minut přes http.",
@@ -392,8 +401,8 @@
"Documentation:" : "Dokumentace:",
"Admin documentation" : "Dokumentace pro administrátory",
"Report a bug" : "Nahlásit chybu",
- "Show description …" : "Zobrazit popis ...",
- "Hide description …" : "Skrýt popis ...",
+ "Show description …" : "Zobrazit popis…",
+ "Hide description …" : "Skrýt popis…",
"This app has no maximum Nextcloud version assigned. This will be an error in the future." : "Tato aplikace nemá nastavenou žádnou maximální verzi Nextcloudu. To se v budoucnu projeví jako chyba.",
"Enable only for specific groups" : "Povolit pouze pro vybrané skupiny",
"Online documentation" : "Online dokumentace",
@@ -409,8 +418,9 @@
"Show First Run Wizard again" : "Znovu zobrazit průvodce prvním spuštěním",
"Web, desktop, mobile clients and app specific passwords that currently have access to your account." : "Weboví, desktopoví a mobilní klienti a hesla v aplikacích, která aktuálně mají přístup k vašemu účtu.",
"App passwords" : "Hesla aplikace",
+ "Here you can generate individual passwords for apps so you don’t have to give out your password. You can revoke them individually too." : "Zde je možné vytvořit hesla pro jednotlivé aplikace, abyste v nich nemuseli používat své osobní heslo. Tím aplikacím můžete také jednotlivě rušit.",
"Follow us on Google+!" : "Následujte nás na Google+!",
- "Like our facebook page!" : "Označte naši facebookovou stránku jako \"To se mi líbí\"!",
+ "Like our facebook page!" : "Označte naši facebookovou stránku jako „To se mi líbí“!",
"Follow us on Twitter!" : "Následujte nás na Twitteru!",
"Check out our blog!" : "Podívejte se na náš blog!",
"Subscribe to our newsletter!" : "Přihlaste se k odběru našeho zpravodaje!",
@@ -426,7 +436,7 @@
"Enter the recovery password in order to recover the users files during password change" : "Zadejte heslo obnovy pro obnovení souborů uživatele při změně hesla",
"Group name" : "Název skupiny",
"Disabled" : "Zakázaní",
- "Please enter storage quota (ex: \"512 MB\" or \"12 GB\")" : "Zvolte prosím kvótu pro úložiště (např. \"512 MB\" nebo \"12 GB\")",
+ "Please enter storage quota (ex: \"512 MB\" or \"12 GB\")" : "Zvolte prosím kvótu pro úložiště (např. „512 MB“ nebo „12 GB“)",
"Other" : "Jiný",
"Quota" : "Kvóta",
"Storage location" : "Úložiště dat",
@@ -449,8 +459,8 @@
"Transactional file locking is disabled, this might lead to issues with race conditions. Enable 'filelocking.enabled' in config.php to avoid these problems. See the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation ↗</a> for more information." : "Transakční zamykání souborů je vypnuto, což by mohlo vést k problémům se souběhem úloh. Povolte 'filelocking.enabled' v config.php, abyste se těmto problémům vyhnuli. Pro více informací si prohlédněte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci ↗</a>.",
"This means that there might be problems with certain characters in filenames." : "To znamená, že se mohou vyskytnout problémy s určitými znaky v názvech souborů.",
"It is strongly proposed to install the required packages on your system to support one of the following locales: %s." : "Velmi doporučujeme nainstalovat požadované balíčky do systému, pro podporu jednoho z následujících národních prostředí: %s.",
- "If your installation is not installed at the root of the domain and uses system Cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problém s generováním správné URL. Pro zabránění těmto chybám nastavte prosím správnou cestu ve svém config.php souboru v hodnotě \"overwrite.cli.url\" (Je doporučena tato: \"%s\")",
- "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebylo možné spustit službu cron v CLI. Došlo k následujícím technickým chybám:",
- "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation ↗</a>." : "Chcete-li migrovat do jiné databáze, použijte nástroj příkazového řádku: 'occ db:convert-type', nebo si projděte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci ↗</a>."
+ "If your installation is not installed at the root of the domain and uses system Cron, there can be issues with the URL generation. To avoid these problems, please set the \"overwrite.cli.url\" option in your config.php file to the webroot path of your installation (Suggested: \"%s\")" : "Instalace mimo kořenový adresář domény a používání systémového příkazu cron může způsobit problémy s vytvářením správné URL. Pro zabránění těmto chybám nastavte správný popis umístění ve svém souboru config.php v hodnotě „overwrite.cli.url“ (Je doporučena tato: „%s“)",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nebylo možné spustit službu plánovače cron v CLI. Došlo k následujícím technickým chybám:",
+ "To migrate to another database use the command line tool: 'occ db:convert-type', or see the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">documentation ↗</a>." : "Pokud chcete-li převést do jiné databáze, použijte nástroj pro příkazový řádek: „occ db:convert-type“, nebo si projděte <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">dokumentaci ↗</a>."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/settings/l10n/de.js b/settings/l10n/de.js
index 163377e6e59..b08422f5654 100644
--- a/settings/l10n/de.js
+++ b/settings/l10n/de.js
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : " Folge uns auf Google+",
"Like our Facebook page" : "Like uns auf unserer Facebook-Seite",
"Follow us on Twitter" : "Folge uns auf Twitter",
+ "Follow us on Mastodon" : " Folge uns auf Mastodon",
"Check out our blog" : "Sieh Dir unseren Blog an",
"Subscribe to our newsletter" : "Abonniere unseren Newsletter",
"Profile picture" : "Profilbild",
@@ -262,7 +263,7 @@ OC.L10N.register(
"Cancel" : "Abbrechen",
"Choose as profile picture" : "Als Profilbild auswählen",
"Details" : "Details",
- "You are a member of the following groups:" : "Du bist Miglied folgender Gruppen:",
+ "You are a member of the following groups:" : "Du bist Mitglied folgender Gruppen:",
"You are using <strong>%s</strong>" : "Du benutzt <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Du benutzt <strong>%s</strong> von <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Vollständiger Name",
diff --git a/settings/l10n/de.json b/settings/l10n/de.json
index f8ff9045e56..82faca47f12 100644
--- a/settings/l10n/de.json
+++ b/settings/l10n/de.json
@@ -249,6 +249,7 @@
"Follow us on Google+" : " Folge uns auf Google+",
"Like our Facebook page" : "Like uns auf unserer Facebook-Seite",
"Follow us on Twitter" : "Folge uns auf Twitter",
+ "Follow us on Mastodon" : " Folge uns auf Mastodon",
"Check out our blog" : "Sieh Dir unseren Blog an",
"Subscribe to our newsletter" : "Abonniere unseren Newsletter",
"Profile picture" : "Profilbild",
@@ -260,7 +261,7 @@
"Cancel" : "Abbrechen",
"Choose as profile picture" : "Als Profilbild auswählen",
"Details" : "Details",
- "You are a member of the following groups:" : "Du bist Miglied folgender Gruppen:",
+ "You are a member of the following groups:" : "Du bist Mitglied folgender Gruppen:",
"You are using <strong>%s</strong>" : "Du benutzt <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Du benutzt <strong>%s</strong> von <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Vollständiger Name",
diff --git a/settings/l10n/de_DE.js b/settings/l10n/de_DE.js
index 8a8abd535e4..16c070b10d9 100644
--- a/settings/l10n/de_DE.js
+++ b/settings/l10n/de_DE.js
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Folgen Sie uns auf Google+",
"Like our Facebook page" : "Liken Sie uns auf unserer Facebook-Seite",
"Follow us on Twitter" : "Folgen Sie uns auf Twitter",
+ "Follow us on Mastodon" : "Folgen Sie uns auf Mastodon",
"Check out our blog" : "Sehen Sie sich unseren Blog an",
"Subscribe to our newsletter" : "Abonnieren Sie unseren Newsletter",
"Profile picture" : "Profilbild",
diff --git a/settings/l10n/de_DE.json b/settings/l10n/de_DE.json
index 21a0898e8af..1883347f525 100644
--- a/settings/l10n/de_DE.json
+++ b/settings/l10n/de_DE.json
@@ -249,6 +249,7 @@
"Follow us on Google+" : "Folgen Sie uns auf Google+",
"Like our Facebook page" : "Liken Sie uns auf unserer Facebook-Seite",
"Follow us on Twitter" : "Folgen Sie uns auf Twitter",
+ "Follow us on Mastodon" : "Folgen Sie uns auf Mastodon",
"Check out our blog" : "Sehen Sie sich unseren Blog an",
"Subscribe to our newsletter" : "Abonnieren Sie unseren Newsletter",
"Profile picture" : "Profilbild",
diff --git a/settings/l10n/es.js b/settings/l10n/es.js
index 11567a49db9..f581ed186eb 100644
--- a/settings/l10n/es.js
+++ b/settings/l10n/es.js
@@ -151,6 +151,7 @@ OC.L10N.register(
"Disabled apps" : "Apps deshabilitadas",
"Updates" : "Actualizaciones",
"App bundles" : "Lotes de apps",
+ "Default quota:" : "Espacio predeterminado:",
"You are about to remove the group {group}. The users will NOT be deleted." : "Vas a eliminar el grupo {group}. Los usuarios NO serán eliminados.",
"Please confirm the group removal " : "Por favor, confirma la eliminación del grupo",
"Remove group" : "Eliminar grupo",
@@ -250,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Síguenos en Google+",
"Like our Facebook page" : "Da a Me gusta en nuestra página de Facebook",
"Follow us on Twitter" : "Síguenos en Twitter",
+ "Follow us on Mastodon" : "Síguenos en Mastodon",
"Check out our blog" : "Lee nuestro blog",
"Subscribe to our newsletter" : "Suscríbete a nuestro boletín",
"Profile picture" : "Foto de perfil",
diff --git a/settings/l10n/es.json b/settings/l10n/es.json
index fde8442e871..c195ecc7636 100644
--- a/settings/l10n/es.json
+++ b/settings/l10n/es.json
@@ -149,6 +149,7 @@
"Disabled apps" : "Apps deshabilitadas",
"Updates" : "Actualizaciones",
"App bundles" : "Lotes de apps",
+ "Default quota:" : "Espacio predeterminado:",
"You are about to remove the group {group}. The users will NOT be deleted." : "Vas a eliminar el grupo {group}. Los usuarios NO serán eliminados.",
"Please confirm the group removal " : "Por favor, confirma la eliminación del grupo",
"Remove group" : "Eliminar grupo",
@@ -248,6 +249,7 @@
"Follow us on Google+" : "Síguenos en Google+",
"Like our Facebook page" : "Da a Me gusta en nuestra página de Facebook",
"Follow us on Twitter" : "Síguenos en Twitter",
+ "Follow us on Mastodon" : "Síguenos en Mastodon",
"Check out our blog" : "Lee nuestro blog",
"Subscribe to our newsletter" : "Suscríbete a nuestro boletín",
"Profile picture" : "Foto de perfil",
diff --git a/settings/l10n/fi.js b/settings/l10n/fi.js
index 80698316af6..2f8b97684da 100644
--- a/settings/l10n/fi.js
+++ b/settings/l10n/fi.js
@@ -99,6 +99,7 @@ OC.L10N.register(
"Good password" : "Hyvä salasana",
"Strong password" : "Vahva salasana",
"An error occured while changing your language. Please reload the page and try again." : "Kieltä vaihtaessa tapahtui virhe. Lataa sivu uudelleen ja yritä uudelleen.",
+ "An error occured while changing your locale. Please reload the page and try again." : "Maa-asetustoa vaihtaessa tapahtui virhe. Päivitä sivu ja yritä uudelleen.",
"Select a profile picture" : "Valitse profiilikuva",
"Week starts on {fdow}" : "Viikon ensimmäinen päivä on {fdow}",
"Groups" : "Ryhmät",
diff --git a/settings/l10n/fi.json b/settings/l10n/fi.json
index a89faf311c1..015410c6288 100644
--- a/settings/l10n/fi.json
+++ b/settings/l10n/fi.json
@@ -97,6 +97,7 @@
"Good password" : "Hyvä salasana",
"Strong password" : "Vahva salasana",
"An error occured while changing your language. Please reload the page and try again." : "Kieltä vaihtaessa tapahtui virhe. Lataa sivu uudelleen ja yritä uudelleen.",
+ "An error occured while changing your locale. Please reload the page and try again." : "Maa-asetustoa vaihtaessa tapahtui virhe. Päivitä sivu ja yritä uudelleen.",
"Select a profile picture" : "Valitse profiilikuva",
"Week starts on {fdow}" : "Viikon ensimmäinen päivä on {fdow}",
"Groups" : "Ryhmät",
diff --git a/settings/l10n/fr.js b/settings/l10n/fr.js
index e9626b1e81b..e3d612cd66a 100644
--- a/settings/l10n/fr.js
+++ b/settings/l10n/fr.js
@@ -156,7 +156,7 @@ OC.L10N.register(
"Please confirm the group removal " : "Veuillez confirmer la suppression du groupe",
"Remove group" : "Supprimer le groupe",
"Admins" : "Administrateurs",
- "Disabled users" : "Désactiver les utilisateurs",
+ "Disabled users" : "Utilisateurs désactivés",
"Everyone" : "Tout le monde",
"New user" : "Nouvel utilisateur",
"SSL Root Certificates" : "Certificats Racines SSL",
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Suivez-nous sur Google+",
"Like our Facebook page" : "Aimez notre page Facebook",
"Follow us on Twitter" : "Suivez-nous sur Twitter",
+ "Follow us on Mastodon" : "Suivez-nous sur Mastodon",
"Check out our blog" : "Découvrez notre blog",
"Subscribe to our newsletter" : "Abonnez-vous à notre lettre d'information",
"Profile picture" : "Photo de profil",
diff --git a/settings/l10n/fr.json b/settings/l10n/fr.json
index 821c82f5313..e0af9a38594 100644
--- a/settings/l10n/fr.json
+++ b/settings/l10n/fr.json
@@ -154,7 +154,7 @@
"Please confirm the group removal " : "Veuillez confirmer la suppression du groupe",
"Remove group" : "Supprimer le groupe",
"Admins" : "Administrateurs",
- "Disabled users" : "Désactiver les utilisateurs",
+ "Disabled users" : "Utilisateurs désactivés",
"Everyone" : "Tout le monde",
"New user" : "Nouvel utilisateur",
"SSL Root Certificates" : "Certificats Racines SSL",
@@ -249,6 +249,7 @@
"Follow us on Google+" : "Suivez-nous sur Google+",
"Like our Facebook page" : "Aimez notre page Facebook",
"Follow us on Twitter" : "Suivez-nous sur Twitter",
+ "Follow us on Mastodon" : "Suivez-nous sur Mastodon",
"Check out our blog" : "Découvrez notre blog",
"Subscribe to our newsletter" : "Abonnez-vous à notre lettre d'information",
"Profile picture" : "Photo de profil",
diff --git a/settings/l10n/it.js b/settings/l10n/it.js
index e1ec45323be..cb67859eb19 100644
--- a/settings/l10n/it.js
+++ b/settings/l10n/it.js
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Seguici su Google+!",
"Like our Facebook page" : "Mi piace sulla nostra pagina di Facebook!",
"Follow us on Twitter" : "Seguici su Twitter!",
+ "Follow us on Mastodon" : "Seguici su Mastodon",
"Check out our blog" : "Leggi il nostro blog!",
"Subscribe to our newsletter" : "Iscriviti alla nostra newsletter",
"Profile picture" : "Immagine del profilo",
diff --git a/settings/l10n/it.json b/settings/l10n/it.json
index 11606506bb8..391d4eb2cdc 100644
--- a/settings/l10n/it.json
+++ b/settings/l10n/it.json
@@ -249,6 +249,7 @@
"Follow us on Google+" : "Seguici su Google+!",
"Like our Facebook page" : "Mi piace sulla nostra pagina di Facebook!",
"Follow us on Twitter" : "Seguici su Twitter!",
+ "Follow us on Mastodon" : "Seguici su Mastodon",
"Check out our blog" : "Leggi il nostro blog!",
"Subscribe to our newsletter" : "Iscriviti alla nostra newsletter",
"Profile picture" : "Immagine del profilo",
diff --git a/settings/l10n/ja.js b/settings/l10n/ja.js
index 691cd5faa82..94800cc21ac 100644
--- a/settings/l10n/ja.js
+++ b/settings/l10n/ja.js
@@ -172,9 +172,9 @@ OC.L10N.register(
"You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "古い暗号化(ownCloud <= 8.0) から新しいものに暗号化キーを移行する必要があります。",
"Start migration" : "移行を開始",
"Security & setup warnings" : "セキュリティ&セットアップ警告",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "あなたのサーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。詳細な情報は、リンクされたドキュメントを参照してください。",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "サーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。詳細な情報は、リンクされたドキュメントを参照してください。",
"All checks passed." : "すべてのチェックに合格しました。",
- "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">インストールガイド ↗</a>を二度確認して、 <a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
+ "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">インストールガイド ↗</a>を再確認して、 <a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
"Version" : "バージョン",
"Background jobs" : "バックグラウンドジョブ",
"Last job ran %s." : "最終ジョブ実行: %s",
@@ -221,6 +221,7 @@ OC.L10N.register(
"Picture provided by original account" : "オリジナルのアカウントで提供されている写真",
"Cancel" : "キャンセル",
"Choose as profile picture" : "プロファイル画像として選択",
+ "You are a member of the following groups:" : "次のグループに所属:",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "<strong>%s</strong> / <strong>%s</strong> (<strong>%s %%</strong>) 使用中",
"Full name" : "氏名",
"No display name set" : "表示名が未設定",
@@ -313,12 +314,12 @@ OC.L10N.register(
"Error creating user: {message}" : "ユーザー作成エラー {message}",
"A valid password must be provided" : "有効なパスワードを指定する必要があります",
"A valid email must be provided" : "有効なメールアドレスを指定する必要があります",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "あなたのサーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "サーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
"The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "\"config\"は読み取り専用になってます。そのためにWEBインターフェースで設定できません可能性があります。さらに、更新時に\"config\"ファイルを書き込み権限を与えることが必要",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "これは、Zend OPcacheやeAccelerator 等のキャッシュ/アクセラレーターが原因かもしれません。",
"Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "あなたのデータベースは \"READ COMMITED\" トランザクション分離レベルで動作していません。このことにより複数のアクションが平行して実行される場合に問題が起こる可能性があります。",
"System locale can not be set to a one which supports UTF-8." : "システムロケールを UTF-8 をサポートするロケールに設定できません。",
- "Please double check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">インストールガイド ↗</a>を二度確認して、<a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
+ "Please double check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">インストールガイド ↗</a>を再確認して、<a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
"Tips & tricks" : "ヒントとコツ",
"There are a lot of features and config switches available to optimally customize and use this instance. Here are some pointers for more information." : "最適にカスタマイズするため、このサーバーインスタンスで利用できる多くの機能や設定があります。ここに詳細な情報への一部のポインタがあります。",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLiteがデータベースとして使用されています。大規模な運用では別のデータベースに切り替えることをお勧めします。",
@@ -337,7 +338,7 @@ OC.L10N.register(
"Documentation:" : "ドキュメント:",
"Admin documentation" : "管理者ドキュメント",
"Report a bug" : "バグを報告",
- "Show description …" : "説明を表示 ...",
+ "Show description …" : "詳細を表示 ...",
"Hide description …" : "説明を隠す ...",
"This app has no maximum Nextcloud version assigned. This will be an error in the future." : "このアプリは Nextcloud バージョンの上限が指定されていません.将来、エラーが発生する可能性があります.",
"Enable only for specific groups" : "特定のグループのみ有効に",
@@ -367,7 +368,7 @@ OC.L10N.register(
"change email address" : "メールアドレスを変更",
"Default" : "デフォルト",
"{size} used" : "{size} を使用中",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Tricks section and the documentation for more information." : "あなたのサーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Tricks section and the documentation for more information." : "サーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHPのシステム環境変数が正しく設定されていないようです。getenv(\"PATH\") コマンドでテストして何も値を返さないことを確認してください。",
"PHP is apparently set up to strip inline doc blocks. This will make several core apps inaccessible." : "PHPでインラインドキュメントブロックを取り除く設定になっています。これによりコアアプリで利用できないものがいくつかあります。",
"%1$s below version %2$s is installed, for stability and performance reasons it is recommended to update to a newer %1$s version." : "%2$s よりも古いバージョンの %1$s がインストールされています。安定した稼働とパフォーマンスの観点から、新しいバージョンの %1$s にアップデートすることをお勧めします。",
diff --git a/settings/l10n/ja.json b/settings/l10n/ja.json
index 303c2929e1b..fc1589babe9 100644
--- a/settings/l10n/ja.json
+++ b/settings/l10n/ja.json
@@ -170,9 +170,9 @@
"You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "古い暗号化(ownCloud <= 8.0) から新しいものに暗号化キーを移行する必要があります。",
"Start migration" : "移行を開始",
"Security & setup warnings" : "セキュリティ&セットアップ警告",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "あなたのサーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。詳細な情報は、リンクされたドキュメントを参照してください。",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "サーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。詳細な情報は、リンクされたドキュメントを参照してください。",
"All checks passed." : "すべてのチェックに合格しました。",
- "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">インストールガイド ↗</a>を二度確認して、 <a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
+ "Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">インストールガイド ↗</a>を再確認して、 <a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
"Version" : "バージョン",
"Background jobs" : "バックグラウンドジョブ",
"Last job ran %s." : "最終ジョブ実行: %s",
@@ -219,6 +219,7 @@
"Picture provided by original account" : "オリジナルのアカウントで提供されている写真",
"Cancel" : "キャンセル",
"Choose as profile picture" : "プロファイル画像として選択",
+ "You are a member of the following groups:" : "次のグループに所属:",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "<strong>%s</strong> / <strong>%s</strong> (<strong>%s %%</strong>) 使用中",
"Full name" : "氏名",
"No display name set" : "表示名が未設定",
@@ -311,12 +312,12 @@
"Error creating user: {message}" : "ユーザー作成エラー {message}",
"A valid password must be provided" : "有効なパスワードを指定する必要があります",
"A valid email must be provided" : "有効なメールアドレスを指定する必要があります",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "あなたのサーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Ticks section and the documentation for more information." : "サーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
"The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "\"config\"は読み取り専用になってます。そのためにWEBインターフェースで設定できません可能性があります。さらに、更新時に\"config\"ファイルを書き込み権限を与えることが必要",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "これは、Zend OPcacheやeAccelerator 等のキャッシュ/アクセラレーターが原因かもしれません。",
"Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "あなたのデータベースは \"READ COMMITED\" トランザクション分離レベルで動作していません。このことにより複数のアクションが平行して実行される場合に問題が起こる可能性があります。",
"System locale can not be set to a one which supports UTF-8." : "システムロケールを UTF-8 をサポートするロケールに設定できません。",
- "Please double check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">インストールガイド ↗</a>を二度確認して、<a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
+ "Please double check the <a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "<a target=\"_blank\" rel=\"noreferrer\" href=\"%s\">インストールガイド ↗</a>を再確認して、<a href=\"%s\">ログ</a>にあるすべてのエラーや警告を確認してください。",
"Tips & tricks" : "ヒントとコツ",
"There are a lot of features and config switches available to optimally customize and use this instance. Here are some pointers for more information." : "最適にカスタマイズするため、このサーバーインスタンスで利用できる多くの機能や設定があります。ここに詳細な情報への一部のポインタがあります。",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLiteがデータベースとして使用されています。大規模な運用では別のデータベースに切り替えることをお勧めします。",
@@ -335,7 +336,7 @@
"Documentation:" : "ドキュメント:",
"Admin documentation" : "管理者ドキュメント",
"Report a bug" : "バグを報告",
- "Show description …" : "説明を表示 ...",
+ "Show description …" : "詳細を表示 ...",
"Hide description …" : "説明を隠す ...",
"This app has no maximum Nextcloud version assigned. This will be an error in the future." : "このアプリは Nextcloud バージョンの上限が指定されていません.将来、エラーが発生する可能性があります.",
"Enable only for specific groups" : "特定のグループのみ有効に",
@@ -365,7 +366,7 @@
"change email address" : "メールアドレスを変更",
"Default" : "デフォルト",
"{size} used" : "{size} を使用中",
- "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Tricks section and the documentation for more information." : "あなたのサーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Tricks section and the documentation for more information." : "サーバーのセキュリティとパフォーマンスのためには、すべてが正確に設定されていることが重要です。あなたの力になるよう、Nextcloudでは一部の自動チェックを行っています。Tips & Tricksセクションや、詳細な情報はドキュメントを参照してください。",
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHPのシステム環境変数が正しく設定されていないようです。getenv(\"PATH\") コマンドでテストして何も値を返さないことを確認してください。",
"PHP is apparently set up to strip inline doc blocks. This will make several core apps inaccessible." : "PHPでインラインドキュメントブロックを取り除く設定になっています。これによりコアアプリで利用できないものがいくつかあります。",
"%1$s below version %2$s is installed, for stability and performance reasons it is recommended to update to a newer %1$s version." : "%2$s よりも古いバージョンの %1$s がインストールされています。安定した稼働とパフォーマンスの観点から、新しいバージョンの %1$s にアップデートすることをお勧めします。",
diff --git a/settings/l10n/nl.js b/settings/l10n/nl.js
index aeb2dc09658..cd2b0988996 100644
--- a/settings/l10n/nl.js
+++ b/settings/l10n/nl.js
@@ -56,6 +56,7 @@ OC.L10N.register(
"Set your password" : "Klik hier en stel je eigen wachtwoord in.",
"Go to %s" : "Ga naar %s",
"Install Client" : "Klik hier en installeer een client op telefoon/tablet of pc.",
+ "Logged in user must be a subadmin" : "Ingelogde gebruiker moet een subbeheerder zijn",
"Migration in progress. Please wait until the migration is finished" : "Migratie bezig. Wacht tot het proces klaar is.",
"Migration started …" : "Migratie gestart...",
"Not saved" : "Niet opgeslagen",
@@ -103,33 +104,61 @@ OC.L10N.register(
"Good password" : "Goed wachtwoord",
"Strong password" : "Sterk wachtwoord",
"An error occured while changing your language. Please reload the page and try again." : "Er trad een fout op bij het aanpassen van de taal. Ververs de pagina en probeer het opnieuw.",
+ "An error occured while changing your locale. Please reload the page and try again." : "Er trad een fout op bij het aanpassen van je landsinstellingen. Ververs de pagina en probeer het opnieuw.",
"Select a profile picture" : "Kies een profielafbeelding",
+ "Week starts on {fdow}" : "Week begint op {fdow}",
"Groups" : "Groepen",
+ "Group list is empty" : "Groepenlijst is leeg",
+ "Unable to retrieve the group list" : "Kan groepenoverzicht niet ophalen",
"Official" : "Officieel",
+ "No results" : "Geen resultaten",
"Visit website" : "Bezoek website",
"User documentation" : "Gebruikersdocumentatie",
"Developer documentation" : "Ontwikkelaarsdocumentatie",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Deze app heeft geen minimum Nextcloud versie toegewezen gekregen. In de toekomst wordt dit wordt een fout.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Deze app kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld:",
+ "{license}-licensed" : "{license}-gelicenseerd",
+ "Disable all" : "Alles uitschakelen",
"Enable all" : "Alles activeren",
+ "Download and enable" : "Downloaden en inschakelen",
"Enable" : "Inschakelen",
"The app will be downloaded from the app store" : "De app zal worden gedownload van de app store",
"Settings" : "Instellingen",
+ "You do not have permissions to see the details of this user" : "Je hebt niet de autorisaties om de details van deze gebruiekr te zien",
+ "Delete user" : "Verwijderen gebruiker",
+ "Disable user" : "Gebruiker uitschakelen",
+ "Enable user" : "Inschakelen gebruiker",
+ "Resend welcome email" : "Verstuur verwelkomings e-mail opnieuw",
+ "Welcome mail sent!" : "Verwelkomings e-mail verstuurd!",
+ "Display name" : "Weergavenaam",
"Email" : "E-mailadres",
"Group admin for" : "Groepsbeheerder voor",
"Language" : "Taal",
"User backend" : "Backend gebruiker",
"Unlimited" : "Ongelimiteerd",
"Default quota" : "Standaard quota",
+ "Default language" : "Standaardtaal",
+ "Password change is disabled because the master key is disabled" : "Wachtwoordwijziging is uitgeschakeld omdat de hoofdsleutel is uitgeschakeld",
+ "Common languages" : "Gebruikelijke talen",
+ "All languages" : "Alle talen",
+ "You did not enter the password in time" : "Je voerde het wachtwoord niet op tijd in",
+ "An error occured during the request. Unable to proceed." : "Er trad een fout op bij de aanvraag. Kan niet doorgaan.",
"The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds." : "De app is ingeschakeld maar moet worden geüpdate. Je wordt over 5 seconden doorgeleid naar de updatepagina.",
"App update" : "App update",
"Error: This app can not be enabled because it makes the server unstable" : "Fout: Deze app kan niet ingeschakeld worden, omdat die de server onstabiel maakt",
"Your apps" : "Je apps",
+ "Active apps" : "Ingeschakelde apps",
"Disabled apps" : "Uitgeschakelde apps",
"Updates" : "Updates",
"App bundles" : "App bundels",
+ "Default quota:" : "Standaardquota:",
+ "You are about to remove the group {group}. The users will NOT be deleted." : "Je gaat groep {group} verwijderen. De gebruikers worden NIET verwijderd.",
+ "Please confirm the group removal " : "Bevestig verwijderen groep",
+ "Remove group" : "Verwijderen groep",
"Admins" : "Beheerders",
+ "Disabled users" : "Uitgeschakelde gebruikers",
"Everyone" : "Iedereen",
+ "New user" : "Nieuwe gebruiker",
"SSL Root Certificates" : "SSL Root Certificaten",
"Common Name" : "Common Name",
"Valid until" : "Geldig tot",
@@ -137,6 +166,7 @@ OC.L10N.register(
"Valid until %s" : "Geldig tot %s",
"Import root certificate" : "Importeren root certificaat",
"Administrator documentation" : "Beheerdersdocumentatie",
+ "Documentation" : "Documentatie",
"Forum" : "Forum",
"None" : "Geen",
"Login" : "Login",
@@ -177,8 +207,13 @@ OC.L10N.register(
"You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Je moet je cryptosleutels van de oude versleuteling (ownCloud <= 8.0) migreren naar de nieuwe.",
"Start migration" : "Start migratie",
"Security & setup warnings" : "Beveiligings- en instellingswaarschuwingen",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Voor beveiliging en prestaties van je server is het belangrijk dat alles goed is geconfigureerd. Om je hierbij te helpen doen we paar automatische controles. Bekijk de gerelateerde documentatie voor meer informatie.",
"All checks passed." : "Alle checks geslaagd",
+ "There are some errors regarding your setup." : "Er zijn fouten binnen je configuratie.",
+ "There are some warnings regarding your setup." : "Er zijn waarschuwingen over je configuratie.",
+ "Checking for system and security issues." : "Controleren op systeem- en beveiligingsproblemen.",
"Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Lees de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installatie-handleiding ↗</a> goed door en controleer <a href=\"%s\">de logs</a> op fouten en waarschuwingen.",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "Controleer de beveiliging van je Nextcloud via <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">onze securityscan ↗</a>.",
"Version" : "Versie",
"Background jobs" : "Achtergrondtaken",
"Last job ran %s." : "Laatste taak %s uitgevoerd.",
@@ -216,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Volg ons op Google+",
"Like our Facebook page" : "Vind onze Facebook pagina leuk",
"Follow us on Twitter" : "Volg ons op Twitter",
+ "Follow us on Mastodon" : "Volg ons op Mastodon",
"Check out our blog" : "Lees ons blog",
"Subscribe to our newsletter" : "Abonneer jezelf op onze nieuwsbrief",
"Profile picture" : "Profielafbeelding",
@@ -226,6 +262,9 @@ OC.L10N.register(
"Picture provided by original account" : "Afbeelding is verstrekt door originele account.",
"Cancel" : "Annuleren",
"Choose as profile picture" : "Kies als profielafbeelding",
+ "Details" : "Details",
+ "You are a member of the following groups:" : "Je bent lid van de volgende groepen:",
+ "You are using <strong>%s</strong>" : "Je gebruikt <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Je gebruikt <strong>%s</strong> van <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Volledige naam",
"No display name set" : "Nog geen weergavenaam ingesteld",
@@ -242,10 +281,12 @@ OC.L10N.register(
"Twitter" : "Twitter",
"Twitter handle @…" : "Twitter naam @…",
"Help translate" : "Help met vertalen",
+ "Locale" : "Taal",
"Password" : "Wachtwoord",
"Current password" : "Huidig wachtwoord",
"New password" : "Nieuw wachtwoord",
"Change password" : "Wijzig wachtwoord",
+ "Devices & sessions" : "Apparaten & sessies",
"Web, desktop and mobile clients currently logged in to your account." : "Web, desktop en mobiele clients zijn nu ingelogd op je account.",
"Device" : "Apparaat",
"Last activity" : "Laatste activiteit",
@@ -287,7 +328,7 @@ OC.L10N.register(
"Disabling app …" : "Uitschakelen app ...",
"Error while disabling app" : "Fout tijdens het uitschakelen van de app",
"Disable" : "Uitschakelen",
- "Enabling app …" : "Activeren app ...",
+ "Enabling app …" : "Inschakelen app ...",
"Error while enabling app" : "Fout tijdens het inschakelen van het programma",
"Error: Could not disable broken app" : "Fout: Kan de beschadigde app niet uitschakelen",
"Error while disabling broken app" : "Fout bij het uitschakelen van de beschadigde app",
diff --git a/settings/l10n/nl.json b/settings/l10n/nl.json
index 16913c73cf2..c07ae367ee5 100644
--- a/settings/l10n/nl.json
+++ b/settings/l10n/nl.json
@@ -54,6 +54,7 @@
"Set your password" : "Klik hier en stel je eigen wachtwoord in.",
"Go to %s" : "Ga naar %s",
"Install Client" : "Klik hier en installeer een client op telefoon/tablet of pc.",
+ "Logged in user must be a subadmin" : "Ingelogde gebruiker moet een subbeheerder zijn",
"Migration in progress. Please wait until the migration is finished" : "Migratie bezig. Wacht tot het proces klaar is.",
"Migration started …" : "Migratie gestart...",
"Not saved" : "Niet opgeslagen",
@@ -101,33 +102,61 @@
"Good password" : "Goed wachtwoord",
"Strong password" : "Sterk wachtwoord",
"An error occured while changing your language. Please reload the page and try again." : "Er trad een fout op bij het aanpassen van de taal. Ververs de pagina en probeer het opnieuw.",
+ "An error occured while changing your locale. Please reload the page and try again." : "Er trad een fout op bij het aanpassen van je landsinstellingen. Ververs de pagina en probeer het opnieuw.",
"Select a profile picture" : "Kies een profielafbeelding",
+ "Week starts on {fdow}" : "Week begint op {fdow}",
"Groups" : "Groepen",
+ "Group list is empty" : "Groepenlijst is leeg",
+ "Unable to retrieve the group list" : "Kan groepenoverzicht niet ophalen",
"Official" : "Officieel",
+ "No results" : "Geen resultaten",
"Visit website" : "Bezoek website",
"User documentation" : "Gebruikersdocumentatie",
"Developer documentation" : "Ontwikkelaarsdocumentatie",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Deze app heeft geen minimum Nextcloud versie toegewezen gekregen. In de toekomst wordt dit wordt een fout.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Deze app kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld:",
+ "{license}-licensed" : "{license}-gelicenseerd",
+ "Disable all" : "Alles uitschakelen",
"Enable all" : "Alles activeren",
+ "Download and enable" : "Downloaden en inschakelen",
"Enable" : "Inschakelen",
"The app will be downloaded from the app store" : "De app zal worden gedownload van de app store",
"Settings" : "Instellingen",
+ "You do not have permissions to see the details of this user" : "Je hebt niet de autorisaties om de details van deze gebruiekr te zien",
+ "Delete user" : "Verwijderen gebruiker",
+ "Disable user" : "Gebruiker uitschakelen",
+ "Enable user" : "Inschakelen gebruiker",
+ "Resend welcome email" : "Verstuur verwelkomings e-mail opnieuw",
+ "Welcome mail sent!" : "Verwelkomings e-mail verstuurd!",
+ "Display name" : "Weergavenaam",
"Email" : "E-mailadres",
"Group admin for" : "Groepsbeheerder voor",
"Language" : "Taal",
"User backend" : "Backend gebruiker",
"Unlimited" : "Ongelimiteerd",
"Default quota" : "Standaard quota",
+ "Default language" : "Standaardtaal",
+ "Password change is disabled because the master key is disabled" : "Wachtwoordwijziging is uitgeschakeld omdat de hoofdsleutel is uitgeschakeld",
+ "Common languages" : "Gebruikelijke talen",
+ "All languages" : "Alle talen",
+ "You did not enter the password in time" : "Je voerde het wachtwoord niet op tijd in",
+ "An error occured during the request. Unable to proceed." : "Er trad een fout op bij de aanvraag. Kan niet doorgaan.",
"The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds." : "De app is ingeschakeld maar moet worden geüpdate. Je wordt over 5 seconden doorgeleid naar de updatepagina.",
"App update" : "App update",
"Error: This app can not be enabled because it makes the server unstable" : "Fout: Deze app kan niet ingeschakeld worden, omdat die de server onstabiel maakt",
"Your apps" : "Je apps",
+ "Active apps" : "Ingeschakelde apps",
"Disabled apps" : "Uitgeschakelde apps",
"Updates" : "Updates",
"App bundles" : "App bundels",
+ "Default quota:" : "Standaardquota:",
+ "You are about to remove the group {group}. The users will NOT be deleted." : "Je gaat groep {group} verwijderen. De gebruikers worden NIET verwijderd.",
+ "Please confirm the group removal " : "Bevestig verwijderen groep",
+ "Remove group" : "Verwijderen groep",
"Admins" : "Beheerders",
+ "Disabled users" : "Uitgeschakelde gebruikers",
"Everyone" : "Iedereen",
+ "New user" : "Nieuwe gebruiker",
"SSL Root Certificates" : "SSL Root Certificaten",
"Common Name" : "Common Name",
"Valid until" : "Geldig tot",
@@ -135,6 +164,7 @@
"Valid until %s" : "Geldig tot %s",
"Import root certificate" : "Importeren root certificaat",
"Administrator documentation" : "Beheerdersdocumentatie",
+ "Documentation" : "Documentatie",
"Forum" : "Forum",
"None" : "Geen",
"Login" : "Login",
@@ -175,8 +205,13 @@
"You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Je moet je cryptosleutels van de oude versleuteling (ownCloud <= 8.0) migreren naar de nieuwe.",
"Start migration" : "Start migratie",
"Security & setup warnings" : "Beveiligings- en instellingswaarschuwingen",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Voor beveiliging en prestaties van je server is het belangrijk dat alles goed is geconfigureerd. Om je hierbij te helpen doen we paar automatische controles. Bekijk de gerelateerde documentatie voor meer informatie.",
"All checks passed." : "Alle checks geslaagd",
+ "There are some errors regarding your setup." : "Er zijn fouten binnen je configuratie.",
+ "There are some warnings regarding your setup." : "Er zijn waarschuwingen over je configuratie.",
+ "Checking for system and security issues." : "Controleren op systeem- en beveiligingsproblemen.",
"Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Lees de <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installatie-handleiding ↗</a> goed door en controleer <a href=\"%s\">de logs</a> op fouten en waarschuwingen.",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "Controleer de beveiliging van je Nextcloud via <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">onze securityscan ↗</a>.",
"Version" : "Versie",
"Background jobs" : "Achtergrondtaken",
"Last job ran %s." : "Laatste taak %s uitgevoerd.",
@@ -214,6 +249,7 @@
"Follow us on Google+" : "Volg ons op Google+",
"Like our Facebook page" : "Vind onze Facebook pagina leuk",
"Follow us on Twitter" : "Volg ons op Twitter",
+ "Follow us on Mastodon" : "Volg ons op Mastodon",
"Check out our blog" : "Lees ons blog",
"Subscribe to our newsletter" : "Abonneer jezelf op onze nieuwsbrief",
"Profile picture" : "Profielafbeelding",
@@ -224,6 +260,9 @@
"Picture provided by original account" : "Afbeelding is verstrekt door originele account.",
"Cancel" : "Annuleren",
"Choose as profile picture" : "Kies als profielafbeelding",
+ "Details" : "Details",
+ "You are a member of the following groups:" : "Je bent lid van de volgende groepen:",
+ "You are using <strong>%s</strong>" : "Je gebruikt <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Je gebruikt <strong>%s</strong> van <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Volledige naam",
"No display name set" : "Nog geen weergavenaam ingesteld",
@@ -240,10 +279,12 @@
"Twitter" : "Twitter",
"Twitter handle @…" : "Twitter naam @…",
"Help translate" : "Help met vertalen",
+ "Locale" : "Taal",
"Password" : "Wachtwoord",
"Current password" : "Huidig wachtwoord",
"New password" : "Nieuw wachtwoord",
"Change password" : "Wijzig wachtwoord",
+ "Devices & sessions" : "Apparaten & sessies",
"Web, desktop and mobile clients currently logged in to your account." : "Web, desktop en mobiele clients zijn nu ingelogd op je account.",
"Device" : "Apparaat",
"Last activity" : "Laatste activiteit",
@@ -285,7 +326,7 @@
"Disabling app …" : "Uitschakelen app ...",
"Error while disabling app" : "Fout tijdens het uitschakelen van de app",
"Disable" : "Uitschakelen",
- "Enabling app …" : "Activeren app ...",
+ "Enabling app …" : "Inschakelen app ...",
"Error while enabling app" : "Fout tijdens het inschakelen van het programma",
"Error: Could not disable broken app" : "Fout: Kan de beschadigde app niet uitschakelen",
"Error while disabling broken app" : "Fout bij het uitschakelen van de beschadigde app",
diff --git a/settings/l10n/pl.js b/settings/l10n/pl.js
index 64a4fe145f4..b2ea81b4a56 100644
--- a/settings/l10n/pl.js
+++ b/settings/l10n/pl.js
@@ -56,6 +56,7 @@ OC.L10N.register(
"Set your password" : "Ustaw hasło",
"Go to %s" : "Idź do: %s",
"Install Client" : "Zainstaluj klienta",
+ "Logged in user must be a subadmin" : "Zalogowany użytkownik musi być współadminem",
"Migration in progress. Please wait until the migration is finished" : "Trwa migracja. Proszę poczekać, aż migracja dobiegnie końca.",
"Migration started …" : "Migracja rozpoczęta…",
"Not saved" : "Nie zapisany",
@@ -103,33 +104,61 @@ OC.L10N.register(
"Good password" : "Dobre hasło",
"Strong password" : "Mocne hasło",
"An error occured while changing your language. Please reload the page and try again." : "Wystąpił błąd podczas zmiany Twojego języka. Przeładuj stronę i spróbuj ponownie.",
+ "An error occured while changing your locale. Please reload the page and try again." : "Wystąpił błąd przy zmianie regionu. Odśwież stronę i spróbuj ponownie.",
"Select a profile picture" : "Wybierz zdjęcie profilowe",
+ "Week starts on {fdow}" : "Tydzień zaczyna się w {fdow}",
"Groups" : "Grupy",
+ "Group list is empty" : "Lista grup jest pusta",
+ "Unable to retrieve the group list" : "Nie można pobrać listy grup",
"Official" : "Oficjalny",
+ "No results" : "Brak wyników",
"Visit website" : "Odwiedź stronę",
"User documentation" : "Dokumentacja użytkownika",
"Developer documentation" : "Dokumentacja dewelopera",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Ta aplikacja nie ma przypisanej minimalnej wersji Nextcloud. W przyszłości będzie to błąd.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Ta aplikacja nie może być zainstalowana, ponieważ nie są spełnione następujące zależności:",
+ "{license}-licensed" : "Na licencji {license}",
+ "Disable all" : "Wyłącz wszystkie",
"Enable all" : "Włącz wszystko",
+ "Download and enable" : "Zainstaluj i włącz",
"Enable" : "Włącz",
"The app will be downloaded from the app store" : "Aplikacja zostanie pobrana z App Store",
"Settings" : "Ustawienia",
+ "You do not have permissions to see the details of this user" : "Nie masz uprawnień aby zobaczyć informacje o tym użytkowniku",
+ "Delete user" : "Usuń użytkownika",
+ "Disable user" : "Zablokuj użytkownika",
+ "Enable user" : "Odblokuj użytkownika",
+ "Resend welcome email" : "Wyślij wiadomość powitalną ponownie",
+ "Welcome mail sent!" : "Wiadomość powitalna wysłana!",
+ "Display name" : "Wyświetlana nazwa",
"Email" : "E-mail",
"Group admin for" : "Grupa admin dla",
"Language" : "Język",
"User backend" : "Moduł użytkownika",
"Unlimited" : "Bez limitu",
"Default quota" : "Domyślny udział",
+ "Default language" : "Domyślny język",
+ "Password change is disabled because the master key is disabled" : "Zmiana hasła jest zablokowana ponieważ klucz główny jest wyłączony.",
+ "Common languages" : "Popularne języki",
+ "All languages" : "Wszystkie języki",
+ "You did not enter the password in time" : "Nie zdążyłeś podać hasła",
+ "An error occured during the request. Unable to proceed." : "Wystąpił błąd zapytania. Nie można kontynuować.",
"The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds." : "Aplikacja została włączona, ale wymaga aktualizacji. Za 5 sekund nastąpi przekierowanie do strony aktualizacji.",
"App update" : "Aktualizacja aplikacji",
"Error: This app can not be enabled because it makes the server unstable" : "Błąd: ta aplikacja nie zostanie włączona ze względu na możliwość niestabilnej pracy serwera.",
"Your apps" : "Twoje aplikacje",
+ "Active apps" : "Aktywne aplikacje",
"Disabled apps" : "Wyłączone aplikacje",
"Updates" : "Aktualizacje",
"App bundles" : "Zestawy aplikacji",
+ "Default quota:" : "Domyślny limit:",
+ "You are about to remove the group {group}. The users will NOT be deleted." : "Grupa {group} zostanie usunięta. Użytkownicy NIE zostaną usunięci.",
+ "Please confirm the group removal " : "Potwierdź usunięcie grupy",
+ "Remove group" : "Usuń grupę",
"Admins" : "Administratorzy",
+ "Disabled users" : "Zablokowani użytkownicy",
"Everyone" : "Wszyscy",
+ "New user" : "Nowy użytkownik",
"SSL Root Certificates" : "Korzeń certyfikatu SSL",
"Common Name" : "Nazwa CN",
"Valid until" : "Ważny do",
@@ -137,6 +166,7 @@ OC.L10N.register(
"Valid until %s" : "Ważny do %s",
"Import root certificate" : "Importuj główny certyfikat",
"Administrator documentation" : "Dokumentacja administratora",
+ "Documentation" : "Dokumentacja",
"Forum" : "Forum",
"None" : "Nic",
"Login" : "Login",
@@ -177,8 +207,13 @@ OC.L10N.register(
"You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Musisz zmigrować swoje klucze szyfrujące ze starego szyfrowania (ownCloud <= 8.0) do nowego.",
"Start migration" : "Rozpocznij migrację",
"Security & setup warnings" : "Ostrzeżenia bezpieczeństwa i konfiguracji",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Poprawna konfiguracja jest ważna dla bezpieczeństwa i wydajności Twojej instancji. W celach pomocniczych przeprowadzane są automatyczne kontrole. Więcej informacji możesz znaleźć w dokumentacji.",
"All checks passed." : "Wszystkie testy konfiguracji zakończyły się pomyślnie.",
+ "There are some errors regarding your setup." : "Znaleziono błędy w Twojej konfiguracji.",
+ "There are some warnings regarding your setup." : "Znaleziono zastrzeżenia w Twojej konfiguracji.",
+ "Checking for system and security issues." : "Sprawdzanie błędów systemu i bezpieczeństwa.",
"Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Proszę sprawdzić dokładnie <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">przewodniki instalacji ↗</a> oraz błędy i ostrzeżenia w <a href=\"%s\">logu</a>.",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "Sprawdź bezpieczeństwo swojego serwera Nextcloud <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">naszym skanerem bezpieczeństwa ↗</a>.",
"Version" : "Wersja",
"Background jobs" : "Zadania w tle",
"Last job ran %s." : "Ostatnie zadanie wykonano %s",
@@ -216,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Bądź z nami na Google+",
"Like our Facebook page" : "Polub nas na Facebook'u",
"Follow us on Twitter" : "Bądź z nami na Twitterze",
+ "Follow us on Mastodon" : "Śledź nas na Mastodonie",
"Check out our blog" : "Sprawdź nasz blog",
"Subscribe to our newsletter" : "Subskrybuj nasz newsletter",
"Profile picture" : "Zdjęcie profilowe",
@@ -226,6 +262,9 @@ OC.L10N.register(
"Picture provided by original account" : "Zdjęcie dostarczone przez oryginalne konto",
"Cancel" : "Anuluj",
"Choose as profile picture" : "Wybierz zdjęcie profilowe",
+ "Details" : "Szczegóły",
+ "You are a member of the following groups:" : "Jesteś członkiem poniższych grup:",
+ "You are using <strong>%s</strong>" : "Używasz <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Używasz <strong>%s</strong> z <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Pełna nazwa",
"No display name set" : "Brak nazwa wyświetlanej",
@@ -242,10 +281,12 @@ OC.L10N.register(
"Twitter" : "Twitter",
"Twitter handle @…" : "Twitter @…",
"Help translate" : "Pomóż w tłumaczeniu",
+ "Locale" : "Region",
"Password" : "Hasło",
"Current password" : "Bieżące hasło",
"New password" : "Nowe hasło",
"Change password" : "Zmień hasło",
+ "Devices & sessions" : "Urządzenia i sesje",
"Web, desktop and mobile clients currently logged in to your account." : "Do twojego konta zalogowane są następujące klienty www, desktopowe i mobilne.",
"Device" : "Urządzenie",
"Last activity" : "Ostatnia aktywność",
diff --git a/settings/l10n/pl.json b/settings/l10n/pl.json
index b67496f0124..f141f9a7621 100644
--- a/settings/l10n/pl.json
+++ b/settings/l10n/pl.json
@@ -54,6 +54,7 @@
"Set your password" : "Ustaw hasło",
"Go to %s" : "Idź do: %s",
"Install Client" : "Zainstaluj klienta",
+ "Logged in user must be a subadmin" : "Zalogowany użytkownik musi być współadminem",
"Migration in progress. Please wait until the migration is finished" : "Trwa migracja. Proszę poczekać, aż migracja dobiegnie końca.",
"Migration started …" : "Migracja rozpoczęta…",
"Not saved" : "Nie zapisany",
@@ -101,33 +102,61 @@
"Good password" : "Dobre hasło",
"Strong password" : "Mocne hasło",
"An error occured while changing your language. Please reload the page and try again." : "Wystąpił błąd podczas zmiany Twojego języka. Przeładuj stronę i spróbuj ponownie.",
+ "An error occured while changing your locale. Please reload the page and try again." : "Wystąpił błąd przy zmianie regionu. Odśwież stronę i spróbuj ponownie.",
"Select a profile picture" : "Wybierz zdjęcie profilowe",
+ "Week starts on {fdow}" : "Tydzień zaczyna się w {fdow}",
"Groups" : "Grupy",
+ "Group list is empty" : "Lista grup jest pusta",
+ "Unable to retrieve the group list" : "Nie można pobrać listy grup",
"Official" : "Oficjalny",
+ "No results" : "Brak wyników",
"Visit website" : "Odwiedź stronę",
"User documentation" : "Dokumentacja użytkownika",
"Developer documentation" : "Dokumentacja dewelopera",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Ta aplikacja nie ma przypisanej minimalnej wersji Nextcloud. W przyszłości będzie to błąd.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Ta aplikacja nie może być zainstalowana, ponieważ nie są spełnione następujące zależności:",
+ "{license}-licensed" : "Na licencji {license}",
+ "Disable all" : "Wyłącz wszystkie",
"Enable all" : "Włącz wszystko",
+ "Download and enable" : "Zainstaluj i włącz",
"Enable" : "Włącz",
"The app will be downloaded from the app store" : "Aplikacja zostanie pobrana z App Store",
"Settings" : "Ustawienia",
+ "You do not have permissions to see the details of this user" : "Nie masz uprawnień aby zobaczyć informacje o tym użytkowniku",
+ "Delete user" : "Usuń użytkownika",
+ "Disable user" : "Zablokuj użytkownika",
+ "Enable user" : "Odblokuj użytkownika",
+ "Resend welcome email" : "Wyślij wiadomość powitalną ponownie",
+ "Welcome mail sent!" : "Wiadomość powitalna wysłana!",
+ "Display name" : "Wyświetlana nazwa",
"Email" : "E-mail",
"Group admin for" : "Grupa admin dla",
"Language" : "Język",
"User backend" : "Moduł użytkownika",
"Unlimited" : "Bez limitu",
"Default quota" : "Domyślny udział",
+ "Default language" : "Domyślny język",
+ "Password change is disabled because the master key is disabled" : "Zmiana hasła jest zablokowana ponieważ klucz główny jest wyłączony.",
+ "Common languages" : "Popularne języki",
+ "All languages" : "Wszystkie języki",
+ "You did not enter the password in time" : "Nie zdążyłeś podać hasła",
+ "An error occured during the request. Unable to proceed." : "Wystąpił błąd zapytania. Nie można kontynuować.",
"The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds." : "Aplikacja została włączona, ale wymaga aktualizacji. Za 5 sekund nastąpi przekierowanie do strony aktualizacji.",
"App update" : "Aktualizacja aplikacji",
"Error: This app can not be enabled because it makes the server unstable" : "Błąd: ta aplikacja nie zostanie włączona ze względu na możliwość niestabilnej pracy serwera.",
"Your apps" : "Twoje aplikacje",
+ "Active apps" : "Aktywne aplikacje",
"Disabled apps" : "Wyłączone aplikacje",
"Updates" : "Aktualizacje",
"App bundles" : "Zestawy aplikacji",
+ "Default quota:" : "Domyślny limit:",
+ "You are about to remove the group {group}. The users will NOT be deleted." : "Grupa {group} zostanie usunięta. Użytkownicy NIE zostaną usunięci.",
+ "Please confirm the group removal " : "Potwierdź usunięcie grupy",
+ "Remove group" : "Usuń grupę",
"Admins" : "Administratorzy",
+ "Disabled users" : "Zablokowani użytkownicy",
"Everyone" : "Wszyscy",
+ "New user" : "Nowy użytkownik",
"SSL Root Certificates" : "Korzeń certyfikatu SSL",
"Common Name" : "Nazwa CN",
"Valid until" : "Ważny do",
@@ -135,6 +164,7 @@
"Valid until %s" : "Ważny do %s",
"Import root certificate" : "Importuj główny certyfikat",
"Administrator documentation" : "Dokumentacja administratora",
+ "Documentation" : "Dokumentacja",
"Forum" : "Forum",
"None" : "Nic",
"Login" : "Login",
@@ -175,8 +205,13 @@
"You need to migrate your encryption keys from the old encryption (ownCloud <= 8.0) to the new one." : "Musisz zmigrować swoje klucze szyfrujące ze starego szyfrowania (ownCloud <= 8.0) do nowego.",
"Start migration" : "Rozpocznij migrację",
"Security & setup warnings" : "Ostrzeżenia bezpieczeństwa i konfiguracji",
+ "It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the linked documentation for more information." : "Poprawna konfiguracja jest ważna dla bezpieczeństwa i wydajności Twojej instancji. W celach pomocniczych przeprowadzane są automatyczne kontrole. Więcej informacji możesz znaleźć w dokumentacji.",
"All checks passed." : "Wszystkie testy konfiguracji zakończyły się pomyślnie.",
+ "There are some errors regarding your setup." : "Znaleziono błędy w Twojej konfiguracji.",
+ "There are some warnings regarding your setup." : "Znaleziono zastrzeżenia w Twojej konfiguracji.",
+ "Checking for system and security issues." : "Sprawdzanie błędów systemu i bezpieczeństwa.",
"Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "Proszę sprawdzić dokładnie <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">przewodniki instalacji ↗</a> oraz błędy i ostrzeżenia w <a href=\"%s\">logu</a>.",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "Sprawdź bezpieczeństwo swojego serwera Nextcloud <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">naszym skanerem bezpieczeństwa ↗</a>.",
"Version" : "Wersja",
"Background jobs" : "Zadania w tle",
"Last job ran %s." : "Ostatnie zadanie wykonano %s",
@@ -214,6 +249,7 @@
"Follow us on Google+" : "Bądź z nami na Google+",
"Like our Facebook page" : "Polub nas na Facebook'u",
"Follow us on Twitter" : "Bądź z nami na Twitterze",
+ "Follow us on Mastodon" : "Śledź nas na Mastodonie",
"Check out our blog" : "Sprawdź nasz blog",
"Subscribe to our newsletter" : "Subskrybuj nasz newsletter",
"Profile picture" : "Zdjęcie profilowe",
@@ -224,6 +260,9 @@
"Picture provided by original account" : "Zdjęcie dostarczone przez oryginalne konto",
"Cancel" : "Anuluj",
"Choose as profile picture" : "Wybierz zdjęcie profilowe",
+ "Details" : "Szczegóły",
+ "You are a member of the following groups:" : "Jesteś członkiem poniższych grup:",
+ "You are using <strong>%s</strong>" : "Używasz <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Używasz <strong>%s</strong> z <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Pełna nazwa",
"No display name set" : "Brak nazwa wyświetlanej",
@@ -240,10 +279,12 @@
"Twitter" : "Twitter",
"Twitter handle @…" : "Twitter @…",
"Help translate" : "Pomóż w tłumaczeniu",
+ "Locale" : "Region",
"Password" : "Hasło",
"Current password" : "Bieżące hasło",
"New password" : "Nowe hasło",
"Change password" : "Zmień hasło",
+ "Devices & sessions" : "Urządzenia i sesje",
"Web, desktop and mobile clients currently logged in to your account." : "Do twojego konta zalogowane są następujące klienty www, desktopowe i mobilne.",
"Device" : "Urządzenie",
"Last activity" : "Ostatnia aktywność",
diff --git a/settings/l10n/pt_BR.js b/settings/l10n/pt_BR.js
index 6dc15844e91..3de889610fa 100644
--- a/settings/l10n/pt_BR.js
+++ b/settings/l10n/pt_BR.js
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Siga-nos no Google+",
"Like our Facebook page" : "Curta nossa página no Facebook",
"Follow us on Twitter" : "Siga-nos no Twitter",
+ "Follow us on Mastodon" : "Siga-nos no Mastodon",
"Check out our blog" : "Confira nosso blog",
"Subscribe to our newsletter" : "Assine nosso boletim informativo",
"Profile picture" : "Imagem para o perfil",
diff --git a/settings/l10n/pt_BR.json b/settings/l10n/pt_BR.json
index ff414d0acd6..b6b437bbe17 100644
--- a/settings/l10n/pt_BR.json
+++ b/settings/l10n/pt_BR.json
@@ -249,6 +249,7 @@
"Follow us on Google+" : "Siga-nos no Google+",
"Like our Facebook page" : "Curta nossa página no Facebook",
"Follow us on Twitter" : "Siga-nos no Twitter",
+ "Follow us on Mastodon" : "Siga-nos no Mastodon",
"Check out our blog" : "Confira nosso blog",
"Subscribe to our newsletter" : "Assine nosso boletim informativo",
"Profile picture" : "Imagem para o perfil",
diff --git a/settings/l10n/sl.js b/settings/l10n/sl.js
index b005cc28fbf..0a66970bfb7 100644
--- a/settings/l10n/sl.js
+++ b/settings/l10n/sl.js
@@ -3,6 +3,7 @@ OC.L10N.register(
{
"{actor} changed your password" : "{actor} vaše geslo je spremenjeno",
"You changed your password" : "Spremenili ste vaše geslo",
+ "Security" : "Varnost",
"Couldn't remove app." : "Ni mogoče odstraniti programa.",
"Couldn't update app." : "Programa ni mogoče posodobiti.",
"Wrong password" : "Napačno geslo",
@@ -13,40 +14,78 @@ OC.L10N.register(
"Wrong admin recovery password. Please check the password and try again." : "Napačno navedeno skrbniško obnovitveno geslo. Preverite geslo in poskusite znova.",
"installing and updating apps via the app store or Federated Cloud Sharing" : "nameščanje in posodabljanje programov prek programske zbirke ali zveznega oblaka",
"Federated Cloud Sharing" : "Souporaba zveznega oblaka",
+ "Invalid SMTP password." : "Neveljavno geslo SMTP",
+ "Email setting test" : "Preizkus nastavitev elektronske pošte",
+ "Well done, %s!" : "Odlično, %s!",
"A problem occurred while sending the email. Please revise your settings. (Error: %s)" : "Med pošiljanjem sporočila se je prišlo do napake. Preverite nastavitve (napaka: %s).",
"You need to set your user email before being able to send test emails." : "Pred preizkusnim pošiljanjem sporočil je treba nastaviti elektronski naslov uporabnika.",
"Invalid mail address" : "Neveljaven elektronski naslov",
+ "Settings saved" : "Nastavitve so shranjene.",
"Unable to change full name" : "Ni mogoče spremeniti polnega imena",
+ "In order to verify your Twitter account, post the following tweet on Twitter (please make sure to post it without any line breaks):" : "Za overitev računa Twitter, objavite sporočilo (prepričajte se, da ni nobenega preloma vrstice):",
"Your %s account was created" : "Račun %s je uspešno ustvarjen.",
"Set your password" : "Nastavi vaše geslo",
"Migration in progress. Please wait until the migration is finished" : "V teku je selitev. Počakajte, da se zaključi.",
"Migration started …" : "Selitev je začeta ...",
+ "Sending…" : "Poteka pošiljanje ...",
"Email sent" : "Elektronska pošta je poslana",
+ "Allow filesystem access" : "Dovoli sistemski datotečni dostop",
"Disconnect" : "Prekinjeni povezavo",
+ "Revoke" : "Prekliči",
+ "Internet Explorer" : "Internet Explorer",
+ "Edge" : "Microsoft Edge",
+ "Firefox" : "Mozilla Firefox",
+ "Google Chrome" : "Google Chrome",
+ "Safari" : "Safari",
+ "Google Chrome for Android" : "Google Chrome za Android",
+ "iPhone iOS" : "iPhone iOS",
+ "iPad iOS" : "iPad iOS",
+ "iOS Client" : "Odjemalec iOS",
+ "Android Client" : "Odjemalec Android",
+ "This session" : "Ta seja",
+ "Copy" : "Kopiraj",
+ "Copied!" : "Kopirano!",
+ "Not supported!" : "Ni podprto!",
"Error while loading browser sessions and device tokens" : " Napaka med nalaganjem brskalnika in ključev naprave",
"Error while creating device token" : " Napaka med izdelavo ključa naprave",
"Error while deleting the token" : " Napaka med brisanjem ključa",
"An error occurred. Please upload an ASCII-encoded PEM certificate." : "Prišlo je do napake. Uvoziti je treba ustrezno ASCII kodirano potrdilo PEM.",
"Valid until {date}" : "Veljavno do {date}",
"Delete" : "Izbriši",
+ "Local" : "Krajevno",
+ "Private" : "Zasebno",
+ "Only visible to local users" : "Vidno le krajevnim uporabnikom",
+ "Contacts" : "Stiki",
+ "Visible to local users and to trusted servers" : "Vidno le krajevnim uporabnikom in odobrenim strežnikom",
+ "Public" : "Javno",
+ "Verify" : "Overi",
+ "Verifying …" : "Poteka overjanje ...",
"Very weak password" : "Zelo šibko geslo",
"Weak password" : "Slabo geslo",
"So-so password" : "Šibko geslo",
"Good password" : "Dobro geslo",
"Strong password" : "Odlično geslo",
"Select a profile picture" : "Izbor slike profila",
+ "Week starts on {fdow}" : "Začetek tedna je {fdow}",
"Groups" : "Skupine",
"Official" : "Uradno",
- "Visit website" : "Obiščite spletno stran",
+ "No results" : "Ni zadetkov",
+ "Visit website" : "Odpri spletno stran",
"User documentation" : "Uporabniška dokumentacija",
"Developer documentation" : "Dokumentacija za razvijalce",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Ta aplikacija nima določene minimalne NextCloud verzije. V prihodnosti bo to napaka.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Programa ni mogoče namestiti zaradi nerešenih odvisnosti:",
+ "Disable all" : "Onemogoči vse",
+ "Enable all" : "Omogoči vse",
"Enable" : "Omogoči",
"The app will be downloaded from the app store" : "Program bo prejet iz zbirke programov",
+ "Settings" : "Nastavitve",
+ "Delete user" : "Izbriši uporabnika",
+ "Disable user" : "Onemogoči uporabnika",
"Email" : "Elektronski naslov",
"Language" : "Jezik",
"Unlimited" : "Neomejeno",
+ "You did not enter the password in time" : "Čas za vpis gesla je potekel.",
"Admins" : "Skrbniki",
"Everyone" : "Vsi",
"SSL Root Certificates" : "Korenska potrdila SSL",
@@ -104,6 +143,11 @@ OC.L10N.register(
"Restrict users to only share with users in their groups" : "Uporabnikom dovoli omogočanje souporabe le znotraj njihove skupine",
"Exclude groups from sharing" : "Izloči skupine iz souporabe",
"These groups will still be able to receive shares, but not to initiate them." : "Te skupine lahko sprejemajo mape v souporabo, ne morejo pa souporabe dovoliti",
+ "Personal" : "Osebno",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Okolje razvija {communityopen}skupnost Nextcloud{linkclose}, {githubopen}izvorna koda{linkclose} pa je objavljena pod pogijo dovoljenja {licenseopen}AGPL{linkclose}.",
+ "Follow us on Google+" : "Sledite nam na Google+",
+ "Follow us on Twitter" : "Sledite nam na Twitter!",
+ "Follow us on Mastodon" : "Sledite nam na Mastodon",
"Profile picture" : "Slika profila",
"Upload new" : "Pošlji novo",
"Select from Files" : "Izbor iz datotek",
@@ -112,15 +156,31 @@ OC.L10N.register(
"Picture provided by original account" : "Slika iz originalnega računa",
"Cancel" : "Prekliči",
"Choose as profile picture" : "Izberi kot sliko profila",
+ "Details" : "Podrobnosti",
+ "You are a member of the following groups:" : "Omogočeno je članstvo v skupinah:",
+ "You are using <strong>%s</strong>" : "Uporabljate <strong>%s</strong>",
+ "You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Uporabljate <strong>%s</strong> od <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Polno ime",
"No display name set" : "Prikazno ime ni nastavljeno",
"Your email address" : "Osebni elektronski naslov",
"No email address set" : "Poštni naslov ni nastavljen",
+ "For password reset and notifications" : "Za ponastavitev gesla in obveščanje",
+ "Phone number" : "Telefonska številka",
+ "Your phone number" : "Vaša telefonska številka",
+ "Address" : "Naslov",
+ "Your postal address" : "Vaš poštni naslov",
+ "Website" : "Spletna stran",
+ "Link https://…" : "Povezava https:// …",
+ "Twitter" : "Twitter",
+ "Twitter handle @…" : "Twitter @ …",
"Help translate" : "Sodelujte pri prevajanju",
+ "Locale" : "Jezikovne nastavitve",
"Password" : "Geslo",
"Current password" : "Trenutno geslo",
"New password" : "Novo geslo",
"Change password" : "Spremeni geslo",
+ "Devices & sessions" : "Naprave in seje",
+ "Web, desktop and mobile clients currently logged in to your account." : "Spletne, namizne in mobilne naprave, ki so trenutno povezane z računom.",
"App name" : "Ime aplikacije",
"Create new app password" : "Ustvari novo geslo aplikacije",
"Username" : "Uporabniško ime",
@@ -162,6 +222,7 @@ OC.L10N.register(
"Error creating user: {message}" : "Napaka ustvarjanja uporabnika: {message}",
"A valid password must be provided" : "Navedeno mora biti veljavno geslo",
"A valid email must be provided" : "Naveden mora biti veljaven naslov elektronske pošte.",
+ "Personal info" : "Osebni podatki",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Napako je najverjetneje povzročil predpomnilnik ali pospeševalnik, kot sta Zend OPcache ali eAccelerator.",
"System locale can not be set to a one which supports UTF-8." : "Sistemskih jezikovnih nastavitev ni mogoče nastaviti na možnost, ki podpira nabor UTF-8.",
"Tips & tricks" : "Nasveti in triki",
@@ -170,6 +231,8 @@ OC.L10N.register(
"Improving the config.php" : "Izboljšave v config.php",
"Theming" : "Teme",
"Hardening and security guidance" : "Varnost in varnostni napotki",
+ "View in store" : "Pokaži v trgovini",
+ "Limit to groups" : "Omeji na skupine",
"This app has an update available." : "Za program so na voljo posodobitve.",
"%s-licensed" : "dovoljenje-%s",
"Documentation:" : "Dokumentacija:",
@@ -182,7 +245,10 @@ OC.L10N.register(
"Online documentation" : "Spletna dokumentacija",
"Commercial support" : "Podpora strankam",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Uporabljate <strong>%s</strong> od <strong>%s</strong>",
- "You are member of the following groups:" : "Ste član naslednjih skupin:",
+ "You are member of the following groups:" : "Omogočeno je članstvo v skupinah:",
+ "Web, desktop, mobile clients and app specific passwords that currently have access to your account." : "Gesla spletnih, namiznih in mobilnih naprav, ki imajo trenutno odobren dostop do računa.",
+ "Follow us on Google+!" : "Sledite nam na Google+!",
+ "Follow us on Twitter!" : "Sledite nam na Twitter!",
"Show storage location" : "Pokaži mesto shrambe",
"Show user backend" : "Pokaži ozadnji program",
"Show email address" : "Pokaži naslov elektronske pošte",
diff --git a/settings/l10n/sl.json b/settings/l10n/sl.json
index a16918de7e1..eab48b9eb9f 100644
--- a/settings/l10n/sl.json
+++ b/settings/l10n/sl.json
@@ -1,6 +1,7 @@
{ "translations": {
"{actor} changed your password" : "{actor} vaše geslo je spremenjeno",
"You changed your password" : "Spremenili ste vaše geslo",
+ "Security" : "Varnost",
"Couldn't remove app." : "Ni mogoče odstraniti programa.",
"Couldn't update app." : "Programa ni mogoče posodobiti.",
"Wrong password" : "Napačno geslo",
@@ -11,40 +12,78 @@
"Wrong admin recovery password. Please check the password and try again." : "Napačno navedeno skrbniško obnovitveno geslo. Preverite geslo in poskusite znova.",
"installing and updating apps via the app store or Federated Cloud Sharing" : "nameščanje in posodabljanje programov prek programske zbirke ali zveznega oblaka",
"Federated Cloud Sharing" : "Souporaba zveznega oblaka",
+ "Invalid SMTP password." : "Neveljavno geslo SMTP",
+ "Email setting test" : "Preizkus nastavitev elektronske pošte",
+ "Well done, %s!" : "Odlično, %s!",
"A problem occurred while sending the email. Please revise your settings. (Error: %s)" : "Med pošiljanjem sporočila se je prišlo do napake. Preverite nastavitve (napaka: %s).",
"You need to set your user email before being able to send test emails." : "Pred preizkusnim pošiljanjem sporočil je treba nastaviti elektronski naslov uporabnika.",
"Invalid mail address" : "Neveljaven elektronski naslov",
+ "Settings saved" : "Nastavitve so shranjene.",
"Unable to change full name" : "Ni mogoče spremeniti polnega imena",
+ "In order to verify your Twitter account, post the following tweet on Twitter (please make sure to post it without any line breaks):" : "Za overitev računa Twitter, objavite sporočilo (prepričajte se, da ni nobenega preloma vrstice):",
"Your %s account was created" : "Račun %s je uspešno ustvarjen.",
"Set your password" : "Nastavi vaše geslo",
"Migration in progress. Please wait until the migration is finished" : "V teku je selitev. Počakajte, da se zaključi.",
"Migration started …" : "Selitev je začeta ...",
+ "Sending…" : "Poteka pošiljanje ...",
"Email sent" : "Elektronska pošta je poslana",
+ "Allow filesystem access" : "Dovoli sistemski datotečni dostop",
"Disconnect" : "Prekinjeni povezavo",
+ "Revoke" : "Prekliči",
+ "Internet Explorer" : "Internet Explorer",
+ "Edge" : "Microsoft Edge",
+ "Firefox" : "Mozilla Firefox",
+ "Google Chrome" : "Google Chrome",
+ "Safari" : "Safari",
+ "Google Chrome for Android" : "Google Chrome za Android",
+ "iPhone iOS" : "iPhone iOS",
+ "iPad iOS" : "iPad iOS",
+ "iOS Client" : "Odjemalec iOS",
+ "Android Client" : "Odjemalec Android",
+ "This session" : "Ta seja",
+ "Copy" : "Kopiraj",
+ "Copied!" : "Kopirano!",
+ "Not supported!" : "Ni podprto!",
"Error while loading browser sessions and device tokens" : " Napaka med nalaganjem brskalnika in ključev naprave",
"Error while creating device token" : " Napaka med izdelavo ključa naprave",
"Error while deleting the token" : " Napaka med brisanjem ključa",
"An error occurred. Please upload an ASCII-encoded PEM certificate." : "Prišlo je do napake. Uvoziti je treba ustrezno ASCII kodirano potrdilo PEM.",
"Valid until {date}" : "Veljavno do {date}",
"Delete" : "Izbriši",
+ "Local" : "Krajevno",
+ "Private" : "Zasebno",
+ "Only visible to local users" : "Vidno le krajevnim uporabnikom",
+ "Contacts" : "Stiki",
+ "Visible to local users and to trusted servers" : "Vidno le krajevnim uporabnikom in odobrenim strežnikom",
+ "Public" : "Javno",
+ "Verify" : "Overi",
+ "Verifying …" : "Poteka overjanje ...",
"Very weak password" : "Zelo šibko geslo",
"Weak password" : "Slabo geslo",
"So-so password" : "Šibko geslo",
"Good password" : "Dobro geslo",
"Strong password" : "Odlično geslo",
"Select a profile picture" : "Izbor slike profila",
+ "Week starts on {fdow}" : "Začetek tedna je {fdow}",
"Groups" : "Skupine",
"Official" : "Uradno",
- "Visit website" : "Obiščite spletno stran",
+ "No results" : "Ni zadetkov",
+ "Visit website" : "Odpri spletno stran",
"User documentation" : "Uporabniška dokumentacija",
"Developer documentation" : "Dokumentacija za razvijalce",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Ta aplikacija nima določene minimalne NextCloud verzije. V prihodnosti bo to napaka.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Programa ni mogoče namestiti zaradi nerešenih odvisnosti:",
+ "Disable all" : "Onemogoči vse",
+ "Enable all" : "Omogoči vse",
"Enable" : "Omogoči",
"The app will be downloaded from the app store" : "Program bo prejet iz zbirke programov",
+ "Settings" : "Nastavitve",
+ "Delete user" : "Izbriši uporabnika",
+ "Disable user" : "Onemogoči uporabnika",
"Email" : "Elektronski naslov",
"Language" : "Jezik",
"Unlimited" : "Neomejeno",
+ "You did not enter the password in time" : "Čas za vpis gesla je potekel.",
"Admins" : "Skrbniki",
"Everyone" : "Vsi",
"SSL Root Certificates" : "Korenska potrdila SSL",
@@ -102,6 +141,11 @@
"Restrict users to only share with users in their groups" : "Uporabnikom dovoli omogočanje souporabe le znotraj njihove skupine",
"Exclude groups from sharing" : "Izloči skupine iz souporabe",
"These groups will still be able to receive shares, but not to initiate them." : "Te skupine lahko sprejemajo mape v souporabo, ne morejo pa souporabe dovoliti",
+ "Personal" : "Osebno",
+ "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Okolje razvija {communityopen}skupnost Nextcloud{linkclose}, {githubopen}izvorna koda{linkclose} pa je objavljena pod pogijo dovoljenja {licenseopen}AGPL{linkclose}.",
+ "Follow us on Google+" : "Sledite nam na Google+",
+ "Follow us on Twitter" : "Sledite nam na Twitter!",
+ "Follow us on Mastodon" : "Sledite nam na Mastodon",
"Profile picture" : "Slika profila",
"Upload new" : "Pošlji novo",
"Select from Files" : "Izbor iz datotek",
@@ -110,15 +154,31 @@
"Picture provided by original account" : "Slika iz originalnega računa",
"Cancel" : "Prekliči",
"Choose as profile picture" : "Izberi kot sliko profila",
+ "Details" : "Podrobnosti",
+ "You are a member of the following groups:" : "Omogočeno je članstvo v skupinah:",
+ "You are using <strong>%s</strong>" : "Uporabljate <strong>%s</strong>",
+ "You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Uporabljate <strong>%s</strong> od <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Polno ime",
"No display name set" : "Prikazno ime ni nastavljeno",
"Your email address" : "Osebni elektronski naslov",
"No email address set" : "Poštni naslov ni nastavljen",
+ "For password reset and notifications" : "Za ponastavitev gesla in obveščanje",
+ "Phone number" : "Telefonska številka",
+ "Your phone number" : "Vaša telefonska številka",
+ "Address" : "Naslov",
+ "Your postal address" : "Vaš poštni naslov",
+ "Website" : "Spletna stran",
+ "Link https://…" : "Povezava https:// …",
+ "Twitter" : "Twitter",
+ "Twitter handle @…" : "Twitter @ …",
"Help translate" : "Sodelujte pri prevajanju",
+ "Locale" : "Jezikovne nastavitve",
"Password" : "Geslo",
"Current password" : "Trenutno geslo",
"New password" : "Novo geslo",
"Change password" : "Spremeni geslo",
+ "Devices & sessions" : "Naprave in seje",
+ "Web, desktop and mobile clients currently logged in to your account." : "Spletne, namizne in mobilne naprave, ki so trenutno povezane z računom.",
"App name" : "Ime aplikacije",
"Create new app password" : "Ustvari novo geslo aplikacije",
"Username" : "Uporabniško ime",
@@ -160,6 +220,7 @@
"Error creating user: {message}" : "Napaka ustvarjanja uporabnika: {message}",
"A valid password must be provided" : "Navedeno mora biti veljavno geslo",
"A valid email must be provided" : "Naveden mora biti veljaven naslov elektronske pošte.",
+ "Personal info" : "Osebni podatki",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Napako je najverjetneje povzročil predpomnilnik ali pospeševalnik, kot sta Zend OPcache ali eAccelerator.",
"System locale can not be set to a one which supports UTF-8." : "Sistemskih jezikovnih nastavitev ni mogoče nastaviti na možnost, ki podpira nabor UTF-8.",
"Tips & tricks" : "Nasveti in triki",
@@ -168,6 +229,8 @@
"Improving the config.php" : "Izboljšave v config.php",
"Theming" : "Teme",
"Hardening and security guidance" : "Varnost in varnostni napotki",
+ "View in store" : "Pokaži v trgovini",
+ "Limit to groups" : "Omeji na skupine",
"This app has an update available." : "Za program so na voljo posodobitve.",
"%s-licensed" : "dovoljenje-%s",
"Documentation:" : "Dokumentacija:",
@@ -180,7 +243,10 @@
"Online documentation" : "Spletna dokumentacija",
"Commercial support" : "Podpora strankam",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Uporabljate <strong>%s</strong> od <strong>%s</strong>",
- "You are member of the following groups:" : "Ste član naslednjih skupin:",
+ "You are member of the following groups:" : "Omogočeno je članstvo v skupinah:",
+ "Web, desktop, mobile clients and app specific passwords that currently have access to your account." : "Gesla spletnih, namiznih in mobilnih naprav, ki imajo trenutno odobren dostop do računa.",
+ "Follow us on Google+!" : "Sledite nam na Google+!",
+ "Follow us on Twitter!" : "Sledite nam na Twitter!",
"Show storage location" : "Pokaži mesto shrambe",
"Show user backend" : "Pokaži ozadnji program",
"Show email address" : "Pokaži naslov elektronske pošte",
diff --git a/settings/l10n/sr.js b/settings/l10n/sr.js
index 6884edac31f..695a375b817 100644
--- a/settings/l10n/sr.js
+++ b/settings/l10n/sr.js
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Пратите нас на Google+",
"Like our Facebook page" : "Лајкујте нашу Фејсбук страну",
"Follow us on Twitter" : "Пратите нас на Твитеру",
+ "Follow us on Mastodon" : "Запратите нас на Мастадонту",
"Check out our blog" : "Баците поглед на наш блог",
"Subscribe to our newsletter" : "Пријавите се на наше новине",
"Profile picture" : "Слика профила",
diff --git a/settings/l10n/sr.json b/settings/l10n/sr.json
index 0a1684d568a..438355d7815 100644
--- a/settings/l10n/sr.json
+++ b/settings/l10n/sr.json
@@ -249,6 +249,7 @@
"Follow us on Google+" : "Пратите нас на Google+",
"Like our Facebook page" : "Лајкујте нашу Фејсбук страну",
"Follow us on Twitter" : "Пратите нас на Твитеру",
+ "Follow us on Mastodon" : "Запратите нас на Мастадонту",
"Check out our blog" : "Баците поглед на наш блог",
"Subscribe to our newsletter" : "Пријавите се на наше новине",
"Profile picture" : "Слика профила",
diff --git a/settings/l10n/sv.js b/settings/l10n/sv.js
index e874036b3aa..fb6f92f4ca1 100644
--- a/settings/l10n/sv.js
+++ b/settings/l10n/sv.js
@@ -51,6 +51,7 @@ OC.L10N.register(
"Your %s account was created" : "Ditt %s konto skapades",
"Welcome aboard" : "Välkommen ombord",
"Welcome aboard %s" : "Välkommen ombord %s",
+ "Welcome to your %s account, you can add, protect, and share your data." : "Välkommen till ditt %s konto, du kan lägga till, skydda och dela din data.",
"Your username is: %s" : "Ditt användarnamn är: %s",
"Set your password" : "Ställ in ditt lösenord",
"Go to %s" : "Gå till %s",
@@ -103,28 +104,48 @@ OC.L10N.register(
"Strong password" : "Starkt lösenord",
"An error occured while changing your language. Please reload the page and try again." : "Ett fel inträffade när språket ändrades. Var god ladda om sidan och försök igen.",
"Select a profile picture" : "Välj en profilbild",
+ "Week starts on {fdow}" : "Veckan börjar på {fdow}",
"Groups" : "Grupper",
+ "Group list is empty" : "Grupplistan är tom",
+ "Unable to retrieve the group list" : "Kan inte hämta grupplistan",
"Official" : "Officiell",
+ "No results" : "Inga resultat",
"Visit website" : "Besök webbsida",
"User documentation" : "Användardokumentation",
"Developer documentation" : "Utvecklardokumentation",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Denna app har ingen max Nextcloud-version tilldelad. Detta kommer att innebära ett problem i framtiden.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Denna applikation kan inte installeras då följande beroenden inte är uppfyllda: %s",
+ "{license}-licensed" : "{license}-licensierad",
+ "Disable all" : "Inaktivera alla",
"Enable all" : "Aktivera alla",
+ "Download and enable" : "Ladda ner och aktivera",
"Enable" : "Aktivera",
"The app will be downloaded from the app store" : "Appen kommer hämtas från appstore",
"Settings" : "Inställningar",
+ "Delete user" : "Radera användare",
+ "Disable user" : "Stäng av användare",
+ "Enable user" : "Aktivera användare",
+ "Resend welcome email" : "Skicka om välkomst-mejl ",
+ "Welcome mail sent!" : "Välkomst-mejl skickat!",
+ "Display name" : "Visningsnamn",
"Email" : "E-post",
"Group admin for" : "Gruppadministratör för",
"Language" : "Språk",
"User backend" : "Användarbackend",
"Unlimited" : "Obegränsat",
"Default quota" : "Förvalt lagringsutrymme",
+ "Default language" : "Standardspråk",
+ "Password change is disabled because the master key is disabled" : "Lösenordsbyte är inaktiverat eftersom huvudnyckeln är inaktiverad",
+ "Common languages" : "Vanliga språk",
+ "All languages" : "Alla språk",
+ "You did not enter the password in time" : "Du angav inte lösenordet i tid",
+ "An error occured during the request. Unable to proceed." : "Ett fel uppstod under förfrågan. Kan inte fortsätta.",
"Error: This app can not be enabled because it makes the server unstable" : "Fel: Denna app kan inte aktiveras eftersom det gör servern instabil",
"Your apps" : "Dina appar",
"Disabled apps" : "Inaktiverade appar",
"Updates" : "Uppdateringar",
"App bundles" : "App paket",
+ "Default quota:" : "Standardkvot:",
"Admins" : "Administratörer",
"Everyone" : "Alla",
"SSL Root Certificates" : "SSL Root certifikat",
@@ -134,6 +155,7 @@ OC.L10N.register(
"Valid until %s" : "Giltigt till %s",
"Import root certificate" : "Importera rotcertifikat",
"Administrator documentation" : "Administratörsdokumentation",
+ "Documentation" : "Dokumentation",
"Forum" : "Forum",
"None" : "Ingen",
"Login" : "Logga in",
@@ -205,6 +227,7 @@ OC.L10N.register(
"Allow username autocompletion in share dialog. If this is disabled the full username or email address needs to be entered." : "Tillåt autokomplettering av användarnamn i delningsdialogen. Om detta är inaktiverat måste fullständigt användarnamn och epostadress anges.",
"Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "Visa friskrivningstext på offentliga uppladdningssidan. (Visas endast när fil-listan är gömd.)",
"This text will be shown on the public link upload page when the file list is hidden." : "Denna text kommer att visa på den offentliga uppladdnings-sidan när fil-listan är gömd.",
+ "Default share permissions" : "Standardrättigheter för delning",
"Personal" : "Privat",
"Administration" : "Administration",
"Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Utvecklat av {communityopen}Nextclouds community{linkclose}, {githubopen}källkoden{linkclose} är licensierad enligt {licenseopen}AGPL-standard{linkclose}.",
@@ -221,6 +244,9 @@ OC.L10N.register(
"Picture provided by original account" : "Bild gjordes tillgänglig av orginalkonto",
"Cancel" : "Avbryt",
"Choose as profile picture" : "Välj som profilbild",
+ "Details" : "Detaljer",
+ "You are a member of the following groups:" : "Du är medlem i följande grupper:",
+ "You are using <strong>%s</strong>" : "Du använder <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Du använder <strong>%s</strong> av <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Namn",
"No display name set" : "Inget visningsnamn angivet",
@@ -241,6 +267,7 @@ OC.L10N.register(
"Current password" : "Nuvarande lösenord",
"New password" : "Nytt lösenord",
"Change password" : "Ändra lösenord",
+ "Devices & sessions" : "Enheter & sessioner",
"Web, desktop and mobile clients currently logged in to your account." : "Webb, skrivbordsklienter och mobila klienter som är inloggade på ditt konto just nu.",
"Device" : "Enhet",
"Last activity" : "Senaste aktivitet",
@@ -313,10 +340,13 @@ OC.L10N.register(
"A valid password must be provided" : "Ett giltigt lösenord måste anges",
"A valid email must be provided" : "En giltig e-postadress måste anges",
"__language_name__" : "Svenska",
+ "Personal info" : "Personlig info",
+ "Sync clients" : "Synk-klienter",
"The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Läs-bara konfigureringen har blivit aktiv. Detta förhindrar att några konfigureringar kan sättas via webbgränssnittet.",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Detta orsakas troligtvis av en cache/accelerator som t ex Zend OPchache eller eAccelerator.",
"Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Din databas kör inte \"READ COMMITED\" transaktionsisoleringsnvån. Detta kan orsaka problem när flera åtgärder körs parallellt.",
"System locale can not be set to a one which supports UTF-8." : "Systemspråk kan inte ställas in till ett som stödjer UTF-8.",
+ "This means that there might be problems with certain characters in file names." : "Det betyder att det kan finnas problem med vissa tecken i filnamn.",
"Tips & tricks" : "Tips & tricks",
"There are a lot of features and config switches available to optimally customize and use this instance. Here are some pointers for more information." : "Där är många funktioner och konfigurationsval tillgängliga för att automatiskt ställa in och använda din instans. Här är några hänvisningar för mer information.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite används som databas. För större installationer så rekommenderar vi ett byte till en annan databasbackend.",
@@ -344,6 +374,20 @@ OC.L10N.register(
"Commercial support" : "Kommersiell support",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Du använder <strong>%s</strong> av <strong>%s</strong>",
"You are member of the following groups:" : "Du är medlem i följande grupper:",
+ "Get the apps to sync your files" : "Skaffa apparna för att synkronisera dina filer",
+ "Desktop client" : "Skrivbordsklient",
+ "Android app" : " Android-app",
+ "iOS app" : " iOS-app",
+ "If you want to support the project {contributeopen}join development{linkclose} or {contributeopen}spread the word{linkclose}!" : "Om du vill stödja projektet {contributeopen}gå med och utveckla{linkclose} eller {contributeopen}sprid budskapet{linkclose}!",
+ "Show First Run Wizard again" : "Visa Första uppstartsguiden igen",
+ "Web, desktop, mobile clients and app specific passwords that currently have access to your account." : "Webb-, skrivbords- och mobila klienter och appspecifika lösenord som för närvarande har tillgång till ditt konto.",
+ "App passwords" : " Applösenord",
+ "Here you can generate individual passwords for apps so you don’t have to give out your password. You can revoke them individually too." : "Här kan du skapa individuella lösenord för appar så att du inte behöver ge ut ditt lösenord. Du kan även återkalla dom individuellt.",
+ "Follow us on Google+!" : "Följ oss på Google+!",
+ "Like our facebook page!" : "Gilla vår Facebooksida!",
+ "Follow us on Twitter!" : "Följ oss på Twitter!",
+ "Check out our blog!" : "Titta på vår blogg!",
+ "Subscribe to our newsletter!" : "Prenumerera på vårt nyhetsbrev!",
"Show storage location" : "Visa lagringsplats",
"Show user backend" : "Visa användar-backend",
"Show last login" : "Visa senaste inloggning",
@@ -354,6 +398,7 @@ OC.L10N.register(
"Create" : "Skapa",
"Admin Recovery Password" : "Återställningslösen för admin",
"Enter the recovery password in order to recover the users files during password change" : "Ange återställningslösenordet för att återställa användarnas filer vid lösenordsbyte",
+ "Group name" : "Gruppnamn",
"Disabled" : "Inaktiverad",
"Please enter storage quota (ex: \"512 MB\" or \"12 GB\")" : "Ange storlek på lagringsutrymmet (t.ex: \"512 MB\" eller \"12 GB\")",
"Other" : "Annat",
@@ -365,6 +410,7 @@ OC.L10N.register(
"change email address" : "ändra e-postadress",
"Default" : "Förvald",
"App up to date" : "Alla appar är uppdaterade",
+ "Updating …" : "Uppdaterar ...",
"Could not remove app" : "Kunde inte ta bort app",
"{size} used" : "{size} använt",
"It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Tricks section and the documentation for more information." : "Det är viktigt för säkerhet och prestanda av din instans att allting är konfigurerat korrekt. För att hjälpa dig gör vi några automatiska kontroller. Vänligen se Tips & Tricks och dokumentationen för mer information.",
diff --git a/settings/l10n/sv.json b/settings/l10n/sv.json
index 5be5132b71e..0de7f688917 100644
--- a/settings/l10n/sv.json
+++ b/settings/l10n/sv.json
@@ -49,6 +49,7 @@
"Your %s account was created" : "Ditt %s konto skapades",
"Welcome aboard" : "Välkommen ombord",
"Welcome aboard %s" : "Välkommen ombord %s",
+ "Welcome to your %s account, you can add, protect, and share your data." : "Välkommen till ditt %s konto, du kan lägga till, skydda och dela din data.",
"Your username is: %s" : "Ditt användarnamn är: %s",
"Set your password" : "Ställ in ditt lösenord",
"Go to %s" : "Gå till %s",
@@ -101,28 +102,48 @@
"Strong password" : "Starkt lösenord",
"An error occured while changing your language. Please reload the page and try again." : "Ett fel inträffade när språket ändrades. Var god ladda om sidan och försök igen.",
"Select a profile picture" : "Välj en profilbild",
+ "Week starts on {fdow}" : "Veckan börjar på {fdow}",
"Groups" : "Grupper",
+ "Group list is empty" : "Grupplistan är tom",
+ "Unable to retrieve the group list" : "Kan inte hämta grupplistan",
"Official" : "Officiell",
+ "No results" : "Inga resultat",
"Visit website" : "Besök webbsida",
"User documentation" : "Användardokumentation",
"Developer documentation" : "Utvecklardokumentation",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Denna app har ingen max Nextcloud-version tilldelad. Detta kommer att innebära ett problem i framtiden.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Denna applikation kan inte installeras då följande beroenden inte är uppfyllda: %s",
+ "{license}-licensed" : "{license}-licensierad",
+ "Disable all" : "Inaktivera alla",
"Enable all" : "Aktivera alla",
+ "Download and enable" : "Ladda ner och aktivera",
"Enable" : "Aktivera",
"The app will be downloaded from the app store" : "Appen kommer hämtas från appstore",
"Settings" : "Inställningar",
+ "Delete user" : "Radera användare",
+ "Disable user" : "Stäng av användare",
+ "Enable user" : "Aktivera användare",
+ "Resend welcome email" : "Skicka om välkomst-mejl ",
+ "Welcome mail sent!" : "Välkomst-mejl skickat!",
+ "Display name" : "Visningsnamn",
"Email" : "E-post",
"Group admin for" : "Gruppadministratör för",
"Language" : "Språk",
"User backend" : "Användarbackend",
"Unlimited" : "Obegränsat",
"Default quota" : "Förvalt lagringsutrymme",
+ "Default language" : "Standardspråk",
+ "Password change is disabled because the master key is disabled" : "Lösenordsbyte är inaktiverat eftersom huvudnyckeln är inaktiverad",
+ "Common languages" : "Vanliga språk",
+ "All languages" : "Alla språk",
+ "You did not enter the password in time" : "Du angav inte lösenordet i tid",
+ "An error occured during the request. Unable to proceed." : "Ett fel uppstod under förfrågan. Kan inte fortsätta.",
"Error: This app can not be enabled because it makes the server unstable" : "Fel: Denna app kan inte aktiveras eftersom det gör servern instabil",
"Your apps" : "Dina appar",
"Disabled apps" : "Inaktiverade appar",
"Updates" : "Uppdateringar",
"App bundles" : "App paket",
+ "Default quota:" : "Standardkvot:",
"Admins" : "Administratörer",
"Everyone" : "Alla",
"SSL Root Certificates" : "SSL Root certifikat",
@@ -132,6 +153,7 @@
"Valid until %s" : "Giltigt till %s",
"Import root certificate" : "Importera rotcertifikat",
"Administrator documentation" : "Administratörsdokumentation",
+ "Documentation" : "Dokumentation",
"Forum" : "Forum",
"None" : "Ingen",
"Login" : "Logga in",
@@ -203,6 +225,7 @@
"Allow username autocompletion in share dialog. If this is disabled the full username or email address needs to be entered." : "Tillåt autokomplettering av användarnamn i delningsdialogen. Om detta är inaktiverat måste fullständigt användarnamn och epostadress anges.",
"Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "Visa friskrivningstext på offentliga uppladdningssidan. (Visas endast när fil-listan är gömd.)",
"This text will be shown on the public link upload page when the file list is hidden." : "Denna text kommer att visa på den offentliga uppladdnings-sidan när fil-listan är gömd.",
+ "Default share permissions" : "Standardrättigheter för delning",
"Personal" : "Privat",
"Administration" : "Administration",
"Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Utvecklat av {communityopen}Nextclouds community{linkclose}, {githubopen}källkoden{linkclose} är licensierad enligt {licenseopen}AGPL-standard{linkclose}.",
@@ -219,6 +242,9 @@
"Picture provided by original account" : "Bild gjordes tillgänglig av orginalkonto",
"Cancel" : "Avbryt",
"Choose as profile picture" : "Välj som profilbild",
+ "Details" : "Detaljer",
+ "You are a member of the following groups:" : "Du är medlem i följande grupper:",
+ "You are using <strong>%s</strong>" : "Du använder <strong>%s</strong>",
"You are using <strong>%s</strong> of <strong>%s</strong> (<strong>%s %%</strong>)" : "Du använder <strong>%s</strong> av <strong>%s</strong> (<strong>%s %%</strong>)",
"Full name" : "Namn",
"No display name set" : "Inget visningsnamn angivet",
@@ -239,6 +265,7 @@
"Current password" : "Nuvarande lösenord",
"New password" : "Nytt lösenord",
"Change password" : "Ändra lösenord",
+ "Devices & sessions" : "Enheter & sessioner",
"Web, desktop and mobile clients currently logged in to your account." : "Webb, skrivbordsklienter och mobila klienter som är inloggade på ditt konto just nu.",
"Device" : "Enhet",
"Last activity" : "Senaste aktivitet",
@@ -311,10 +338,13 @@
"A valid password must be provided" : "Ett giltigt lösenord måste anges",
"A valid email must be provided" : "En giltig e-postadress måste anges",
"__language_name__" : "Svenska",
+ "Personal info" : "Personlig info",
+ "Sync clients" : "Synk-klienter",
"The Read-Only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "Läs-bara konfigureringen har blivit aktiv. Detta förhindrar att några konfigureringar kan sättas via webbgränssnittet.",
"This is probably caused by a cache/accelerator such as Zend OPcache or eAccelerator." : "Detta orsakas troligtvis av en cache/accelerator som t ex Zend OPchache eller eAccelerator.",
"Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Din databas kör inte \"READ COMMITED\" transaktionsisoleringsnvån. Detta kan orsaka problem när flera åtgärder körs parallellt.",
"System locale can not be set to a one which supports UTF-8." : "Systemspråk kan inte ställas in till ett som stödjer UTF-8.",
+ "This means that there might be problems with certain characters in file names." : "Det betyder att det kan finnas problem med vissa tecken i filnamn.",
"Tips & tricks" : "Tips & tricks",
"There are a lot of features and config switches available to optimally customize and use this instance. Here are some pointers for more information." : "Där är många funktioner och konfigurationsval tillgängliga för att automatiskt ställa in och använda din instans. Här är några hänvisningar för mer information.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite används som databas. För större installationer så rekommenderar vi ett byte till en annan databasbackend.",
@@ -342,6 +372,20 @@
"Commercial support" : "Kommersiell support",
"You are using <strong>%s</strong> of <strong>%s</strong>" : "Du använder <strong>%s</strong> av <strong>%s</strong>",
"You are member of the following groups:" : "Du är medlem i följande grupper:",
+ "Get the apps to sync your files" : "Skaffa apparna för att synkronisera dina filer",
+ "Desktop client" : "Skrivbordsklient",
+ "Android app" : " Android-app",
+ "iOS app" : " iOS-app",
+ "If you want to support the project {contributeopen}join development{linkclose} or {contributeopen}spread the word{linkclose}!" : "Om du vill stödja projektet {contributeopen}gå med och utveckla{linkclose} eller {contributeopen}sprid budskapet{linkclose}!",
+ "Show First Run Wizard again" : "Visa Första uppstartsguiden igen",
+ "Web, desktop, mobile clients and app specific passwords that currently have access to your account." : "Webb-, skrivbords- och mobila klienter och appspecifika lösenord som för närvarande har tillgång till ditt konto.",
+ "App passwords" : " Applösenord",
+ "Here you can generate individual passwords for apps so you don’t have to give out your password. You can revoke them individually too." : "Här kan du skapa individuella lösenord för appar så att du inte behöver ge ut ditt lösenord. Du kan även återkalla dom individuellt.",
+ "Follow us on Google+!" : "Följ oss på Google+!",
+ "Like our facebook page!" : "Gilla vår Facebooksida!",
+ "Follow us on Twitter!" : "Följ oss på Twitter!",
+ "Check out our blog!" : "Titta på vår blogg!",
+ "Subscribe to our newsletter!" : "Prenumerera på vårt nyhetsbrev!",
"Show storage location" : "Visa lagringsplats",
"Show user backend" : "Visa användar-backend",
"Show last login" : "Visa senaste inloggning",
@@ -352,6 +396,7 @@
"Create" : "Skapa",
"Admin Recovery Password" : "Återställningslösen för admin",
"Enter the recovery password in order to recover the users files during password change" : "Ange återställningslösenordet för att återställa användarnas filer vid lösenordsbyte",
+ "Group name" : "Gruppnamn",
"Disabled" : "Inaktiverad",
"Please enter storage quota (ex: \"512 MB\" or \"12 GB\")" : "Ange storlek på lagringsutrymmet (t.ex: \"512 MB\" eller \"12 GB\")",
"Other" : "Annat",
@@ -363,6 +408,7 @@
"change email address" : "ändra e-postadress",
"Default" : "Förvald",
"App up to date" : "Alla appar är uppdaterade",
+ "Updating …" : "Uppdaterar ...",
"Could not remove app" : "Kunde inte ta bort app",
"{size} used" : "{size} använt",
"It's important for the security and performance of your instance that everything is configured correctly. To help you with that we are doing some automatic checks. Please see the Tips & Tricks section and the documentation for more information." : "Det är viktigt för säkerhet och prestanda av din instans att allting är konfigurerat korrekt. För att hjälpa dig gör vi några automatiska kontroller. Vänligen se Tips & Tricks och dokumentationen för mer information.",
diff --git a/settings/l10n/tr.js b/settings/l10n/tr.js
index 186ac160a41..fc111e029ff 100644
--- a/settings/l10n/tr.js
+++ b/settings/l10n/tr.js
@@ -251,6 +251,7 @@ OC.L10N.register(
"Follow us on Google+" : "Bizi Google+ üzerinde izleyin",
"Like our Facebook page" : "Facebook sayfamızı beğenin",
"Follow us on Twitter" : "Bizi Twitter üzerinde izleyin",
+ "Follow us on Mastodon" : "Bizi Mastodon üzerinde izleyin",
"Check out our blog" : "Bloğumuza bakın",
"Subscribe to our newsletter" : " Bültenimize abone olun",
"Profile picture" : "Profil görseli",
diff --git a/settings/l10n/tr.json b/settings/l10n/tr.json
index 49cc33a6fea..2738b13d532 100644
--- a/settings/l10n/tr.json
+++ b/settings/l10n/tr.json
@@ -249,6 +249,7 @@
"Follow us on Google+" : "Bizi Google+ üzerinde izleyin",
"Like our Facebook page" : "Facebook sayfamızı beğenin",
"Follow us on Twitter" : "Bizi Twitter üzerinde izleyin",
+ "Follow us on Mastodon" : "Bizi Mastodon üzerinde izleyin",
"Check out our blog" : "Bloğumuza bakın",
"Subscribe to our newsletter" : " Bültenimize abone olun",
"Profile picture" : "Profil görseli",
diff --git a/settings/l10n/zh_CN.js b/settings/l10n/zh_CN.js
index 0f3494a3a12..815083235db 100644
--- a/settings/l10n/zh_CN.js
+++ b/settings/l10n/zh_CN.js
@@ -104,34 +104,52 @@ OC.L10N.register(
"Strong password" : "强密码",
"An error occured while changing your language. Please reload the page and try again." : "在为您更改语言设置的过程中出错,请刷新页面重试",
"Select a profile picture" : "选择头像",
+ "Week starts on {fdow}" : "周开始于 {fdow}",
"Groups" : "分组",
"Official" : "官方",
+ "No results" : "没有结果",
"Visit website" : "访问网站",
"User documentation" : "用户文档",
"Developer documentation" : "开发者文档",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "该应用没有指定支持的 Nextcloud 最低版本. 可能会在将来出现问题.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "无法安装应用, 因为无法满足下列依赖: ",
+ "Disable all" : "禁用全部",
"Enable all" : "启用所有",
+ "Download and enable" : "下载并启用",
"Enable" : "启用",
"The app will be downloaded from the app store" : "该应用将从应用商店下载",
"Settings" : "设置",
+ "You do not have permissions to see the details of this user" : "您没有权限查看该用户的详细信息",
+ "Delete user" : "删除用户",
+ "Disable user" : "禁用用户",
+ "Enable user" : "启用用户",
+ "Resend welcome email" : "重新发送欢迎邮件",
+ "Welcome mail sent!" : "欢迎邮件已经发送!",
+ "Display name" : "显示名称",
"Email" : "电子邮件",
"Group admin for" : "分组管理员",
"Language" : "语言",
"User backend" : "用户来源",
"Unlimited" : "无限",
"Default quota" : "默认配额",
+ "Default language" : "默认语言",
+ "All languages" : "所有语言",
"You did not enter the password in time" : "您没有及时输入密码",
"An error occured during the request. Unable to proceed." : "请求期间发生错误。 无法继续。",
"The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds." : "该应用已启用, 但是需要更新. 5秒后将跳转到更新页面.",
"App update" : "更新应用",
"Error: This app can not be enabled because it makes the server unstable" : "错误: 无法启用应用因为它会导致服务器不稳定",
"Your apps" : "你的应用",
- "Disabled apps" : "禁用应用",
+ "Active apps" : "已启用的应用",
+ "Disabled apps" : "已禁用的应用",
"Updates" : "更新",
"App bundles" : "应用软件包",
+ "Default quota:" : "默认配额:",
+ "Remove group" : "删除分组",
"Admins" : "管理员",
+ "Disabled users" : "已禁用的用户",
"Everyone" : "所有人",
+ "New user" : "新建用户",
"SSL Root Certificates" : "SSL 根证书",
"Common Name" : "通用名称",
"Valid until" : "有效期至",
@@ -139,6 +157,7 @@ OC.L10N.register(
"Valid until %s" : "有效期至 %s",
"Import root certificate" : "导入根证书",
"Administrator documentation" : "管理员文档",
+ "Documentation" : "文档",
"Forum" : "论坛",
"None" : "无",
"Login" : "登录",
@@ -180,7 +199,11 @@ OC.L10N.register(
"Start migration" : "开始迁移",
"Security & setup warnings" : "安全及设置警告",
"All checks passed." : "所有检查已通过.",
+ "There are some errors regarding your setup." : "关于您的设置有一些错误.",
+ "There are some warnings regarding your setup." : "关于您的设置有一些警告.",
+ "Checking for system and security issues." : "正在检查系统和安全问题.",
"Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "请仔细检查<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">安装指南</a>,并检查<a href=\"%s\">日志</a>中是否有错误或警告。",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "通过<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">我们的安全检查 ↗</a>检查您 Nextcloud 的安全",
"Version" : "版本",
"Background jobs" : "后台任务",
"Last job ran %s." : "上次定时任务执行于: %s.",
@@ -211,6 +234,7 @@ OC.L10N.register(
"Allow username autocompletion in share dialog. If this is disabled the full username or email address needs to be entered." : "在共享对话框中允许用户名自动完成。 如果被禁用,则需要输入完整的用户名或电子邮件地址。",
"Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "在公开链接上传页中显示免责声明. (仅当文件列表隐藏时显示)",
"This text will be shown on the public link upload page when the file list is hidden." : "这些内容将在公开链接上传页中当文件列表隐藏时显示.",
+ "Default share permissions" : "默认分享权限",
"Personal" : "个人",
"Administration" : "管理",
"Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "由 {communityopen}Nextcloud community{linkclose} 开发, {githubopen}源代码{linkclose} 基于 {licenseopen}AGPL{linkclose} 许可协议.",
diff --git a/settings/l10n/zh_CN.json b/settings/l10n/zh_CN.json
index 8b6418bb3d4..ad292b64cdf 100644
--- a/settings/l10n/zh_CN.json
+++ b/settings/l10n/zh_CN.json
@@ -102,34 +102,52 @@
"Strong password" : "强密码",
"An error occured while changing your language. Please reload the page and try again." : "在为您更改语言设置的过程中出错,请刷新页面重试",
"Select a profile picture" : "选择头像",
+ "Week starts on {fdow}" : "周开始于 {fdow}",
"Groups" : "分组",
"Official" : "官方",
+ "No results" : "没有结果",
"Visit website" : "访问网站",
"User documentation" : "用户文档",
"Developer documentation" : "开发者文档",
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "该应用没有指定支持的 Nextcloud 最低版本. 可能会在将来出现问题.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "无法安装应用, 因为无法满足下列依赖: ",
+ "Disable all" : "禁用全部",
"Enable all" : "启用所有",
+ "Download and enable" : "下载并启用",
"Enable" : "启用",
"The app will be downloaded from the app store" : "该应用将从应用商店下载",
"Settings" : "设置",
+ "You do not have permissions to see the details of this user" : "您没有权限查看该用户的详细信息",
+ "Delete user" : "删除用户",
+ "Disable user" : "禁用用户",
+ "Enable user" : "启用用户",
+ "Resend welcome email" : "重新发送欢迎邮件",
+ "Welcome mail sent!" : "欢迎邮件已经发送!",
+ "Display name" : "显示名称",
"Email" : "电子邮件",
"Group admin for" : "分组管理员",
"Language" : "语言",
"User backend" : "用户来源",
"Unlimited" : "无限",
"Default quota" : "默认配额",
+ "Default language" : "默认语言",
+ "All languages" : "所有语言",
"You did not enter the password in time" : "您没有及时输入密码",
"An error occured during the request. Unable to proceed." : "请求期间发生错误。 无法继续。",
"The app has been enabled but needs to be updated. You will be redirected to the update page in 5 seconds." : "该应用已启用, 但是需要更新. 5秒后将跳转到更新页面.",
"App update" : "更新应用",
"Error: This app can not be enabled because it makes the server unstable" : "错误: 无法启用应用因为它会导致服务器不稳定",
"Your apps" : "你的应用",
- "Disabled apps" : "禁用应用",
+ "Active apps" : "已启用的应用",
+ "Disabled apps" : "已禁用的应用",
"Updates" : "更新",
"App bundles" : "应用软件包",
+ "Default quota:" : "默认配额:",
+ "Remove group" : "删除分组",
"Admins" : "管理员",
+ "Disabled users" : "已禁用的用户",
"Everyone" : "所有人",
+ "New user" : "新建用户",
"SSL Root Certificates" : "SSL 根证书",
"Common Name" : "通用名称",
"Valid until" : "有效期至",
@@ -137,6 +155,7 @@
"Valid until %s" : "有效期至 %s",
"Import root certificate" : "导入根证书",
"Administrator documentation" : "管理员文档",
+ "Documentation" : "文档",
"Forum" : "论坛",
"None" : "无",
"Login" : "登录",
@@ -178,7 +197,11 @@
"Start migration" : "开始迁移",
"Security & setup warnings" : "安全及设置警告",
"All checks passed." : "所有检查已通过.",
+ "There are some errors regarding your setup." : "关于您的设置有一些错误.",
+ "There are some warnings regarding your setup." : "关于您的设置有一些警告.",
+ "Checking for system and security issues." : "正在检查系统和安全问题.",
"Please double check the <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">installation guides ↗</a>, and check for any errors or warnings in the <a href=\"%s\">log</a>." : "请仔细检查<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">安装指南</a>,并检查<a href=\"%s\">日志</a>中是否有错误或警告。",
+ "Check the security of your Nextcloud over <a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">our security scan ↗</a>." : "通过<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"%s\">我们的安全检查 ↗</a>检查您 Nextcloud 的安全",
"Version" : "版本",
"Background jobs" : "后台任务",
"Last job ran %s." : "上次定时任务执行于: %s.",
@@ -209,6 +232,7 @@
"Allow username autocompletion in share dialog. If this is disabled the full username or email address needs to be entered." : "在共享对话框中允许用户名自动完成。 如果被禁用,则需要输入完整的用户名或电子邮件地址。",
"Show disclaimer text on the public link upload page. (Only shown when the file list is hidden.)" : "在公开链接上传页中显示免责声明. (仅当文件列表隐藏时显示)",
"This text will be shown on the public link upload page when the file list is hidden." : "这些内容将在公开链接上传页中当文件列表隐藏时显示.",
+ "Default share permissions" : "默认分享权限",
"Personal" : "个人",
"Administration" : "管理",
"Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "由 {communityopen}Nextcloud community{linkclose} 开发, {githubopen}源代码{linkclose} 基于 {licenseopen}AGPL{linkclose} 许可协议.",
diff --git a/settings/package.json b/settings/package.json
index 6c1969ef770..3587801a56b 100644
--- a/settings/package.json
+++ b/settings/package.json
@@ -33,10 +33,10 @@
"babel-loader": "^8.0.2",
"css-loader": "^1.0.0",
"file-loader": "^1.1.11",
- "vue-loader": "^15.4.1",
+ "vue-loader": "^15.4.2",
"vue-template-compiler": "^2.5.17",
- "webpack": "^4.17.2",
- "webpack-cli": "^3.1.0",
+ "webpack": "^4.19.1",
+ "webpack-cli": "^3.1.1",
"webpack-merge": "^4.1.4"
}
}
diff --git a/settings/templates/settings/admin/overview.php b/settings/templates/settings/admin/overview.php
index cf725d3101e..aad6ae80a7d 100644
--- a/settings/templates/settings/admin/overview.php
+++ b/settings/templates/settings/admin/overview.php
@@ -59,7 +59,7 @@
</div>
-<div class="section">
+<div id="version" class="section">
<!-- should be the last part, so Updater can follow if enabled (it has no heading therefore). -->
<h2><?php p($l->t('Version'));?></h2>
<p><strong><a href="<?php print_unescaped($theme->getBaseUrl()); ?>" rel="noreferrer noopener" target="_blank"><?php p($theme->getTitle()); ?></a> <?php p(OC_Util::getHumanVersion()) ?></strong></p>
diff --git a/settings/templates/settings/personal/development.notice.php b/settings/templates/settings/personal/development.notice.php
index 41f70c0a822..3591726ecbe 100644
--- a/settings/templates/settings/personal/development.notice.php
+++ b/settings/templates/settings/personal/development.notice.php
@@ -23,17 +23,20 @@
'{googleimage}',
'{facebookimage}',
'{twitterimage}',
+ '{mastodonimage}',
'{rssimage}',
'{mailimage}',
'{googleopen}',
'{facebookopen}',
'{twitteropen}',
+ '{mastodonopen}',
'{rssopen}',
'{newsletteropen}',
'{linkclose}',
'{googletext}',
'{facebooktext}',
'{twittertext}',
+ '{mastodontext}',
'{rsstext}',
'{mailtext}',
],
@@ -41,17 +44,20 @@
image_path('core', 'googleplus.svg'),
image_path('core', 'facebook.svg'),
image_path('core', 'twitter.svg'),
+ image_path('core', 'mastodon.svg'),
image_path('core', 'rss.svg'),
image_path('core', 'mail.svg'),
'<a target="_blank" rel="noreferrer noopener" href="https://plus.google.com/+Nextcloud">',
'<a target="_blank" rel="noreferrer noopener" href="https://www.facebook.com/Nextclouders/">',
'<a target="_blank" rel="noreferrer noopener" href="https://twitter.com/nextclouders">',
+ '<a target="_blank" rel="noreferrer noopener" href="https://mastodon.xyz/@nextcloud">',
'<a target="_blank" rel="noreferrer noopener" href="https://nextcloud.com/news/">',
'<a target="_blank" rel="noreferrer noopener" href="https://newsletter.nextcloud.com/?p=subscribe&amp;id=1">',
'</a>',
$l->t('Follow us on Google+'),
$l->t('Like our Facebook page'),
$l->t('Follow us on Twitter'),
+ $l->t('Follow us on Mastodon'),
$l->t('Check out our blog'),
$l->t('Subscribe to our newsletter'),
@@ -59,6 +65,7 @@
'{googleopen}<img width="50" src="{googleimage}" title="{googletext}" alt="{googletext}">{linkclose}
{facebookopen}<img width="50" src="{facebookimage}" title="{facebooktext}" alt="{facebooktext}">{linkclose}
{twitteropen}<img width="50" src="{twitterimage}" title="{twittertext}" alt="{twittertext}">{linkclose}
+{mastodonopen}<img width="50" src="{mastodonimage}" title="{mastodontext}" alt="{mastodontext}">{linkclose}
{rssopen}<img class="img-circle" width="50" src="{rssimage}" title="{rsstext}" alt="{rsstext}">{linkclose}
{newsletteropen}<img width="50" src="{mailimage}" title="{mailtext}" alt="{mailtext}">{linkclose}'
)); ?>
diff --git a/tests/Core/Command/TwoFactorAuth/CleanupTest.php b/tests/Core/Command/TwoFactorAuth/CleanupTest.php
new file mode 100644
index 00000000000..227283decf6
--- /dev/null
+++ b/tests/Core/Command/TwoFactorAuth/CleanupTest.php
@@ -0,0 +1,66 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace Core\Command\TwoFactorAuth;
+
+use OC\Core\Command\TwoFactorAuth\Cleanup;
+use OCP\Authentication\TwoFactorAuth\IRegistry;
+use PHPUnit\Framework\MockObject\MockObject;
+use Symfony\Component\Console\Tester\CommandTester;
+use Test\TestCase;
+
+class CleanupTest extends TestCase {
+
+ /** @var IRegistry|MockObject */
+ private $registry;
+
+ /** @var CommandTester */
+ private $cmd;
+
+ protected function setUp() {
+ parent::setUp();
+
+ $this->registry = $this->createMock(IRegistry::class);
+
+ $cmd = new Cleanup($this->registry);
+ $this->cmd = new CommandTester($cmd);
+ }
+
+ public function testCleanup() {
+ $this->registry->expects($this->once())
+ ->method('cleanUp')
+ ->with('u2f');
+
+ $rc = $this->cmd->execute([
+ 'provider-id' => 'u2f',
+ ]);
+
+ $this->assertEquals(0, $rc);
+ $output = $this->cmd->getDisplay();
+ $this->assertContains("All user-provider associations for provider u2f have been removed", $output);
+ }
+
+}
diff --git a/tests/Core/Command/TwoFactorAuth/DisableTest.php b/tests/Core/Command/TwoFactorAuth/DisableTest.php
index 1a0bbc6c3d3..30ebc007dc1 100644
--- a/tests/Core/Command/TwoFactorAuth/DisableTest.php
+++ b/tests/Core/Command/TwoFactorAuth/DisableTest.php
@@ -1,8 +1,11 @@
<?php
+
+declare(strict_types=1);
+
/**
- * @copyright 2016, Roeland Jago Douma <roeland@famdouma.nl>
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
*
- * @author Roeland Jago Douma <roeland@famdouma.nl>
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @license GNU AGPL version 3 or any later version
*
@@ -20,80 +23,90 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
+
namespace Test\Core\Command\TwoFactorAuth;
-use OC\Authentication\TwoFactorAuth\Manager;
+use OC\Authentication\TwoFactorAuth\ProviderManager;
use OC\Core\Command\TwoFactorAuth\Disable;
use OCP\IUser;
use OCP\IUserManager;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
+use PHPUnit\Framework\MockObject\MockObject;
+use Symfony\Component\Console\Tester\CommandTester;
use Test\TestCase;
class DisableTest extends TestCase {
- /** @var Manager|\PHPUnit_Framework_MockObject_MockObject */
- private $manager;
+ /** @var ProviderManager|MockObject */
+ private $providerManager;
- /** @var IUserManager|\PHPUnit_Framework_MockObject_MockObject */
+ /** @var IUserManager|MockObject */
private $userManager;
- /** @var Disable */
+ /** @var CommandTester */
private $command;
public function setUp() {
parent::setUp();
- $this->manager = $this->createMock(Manager::class);
+ $this->providerManager = $this->createMock(ProviderManager::class);
$this->userManager = $this->createMock(IUserManager::class);
- $this->command = new Disable($this->manager, $this->userManager);
+ $cmd = new Disable($this->providerManager, $this->userManager);
+ $this->command = new CommandTester($cmd);
}
- public function testDisableSuccess() {
- $user = $this->createMock(IUser::class);
+ public function testInvalidUID() {
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('nope')
+ ->willReturn(null);
- $input = $this->createMock(InputInterface::class);
- $output = $this->createMock(OutputInterface::class);
+ $rc = $this->command->execute([
+ 'uid' => 'nope',
+ 'provider_id' => 'nope',
+ ]);
- $input->method('getArgument')
- ->with($this->equalTo('uid'))
- ->willReturn('user');
+ $this->assertEquals(1, $rc);
+ $this->assertContains("Invalid UID", $this->command->getDisplay());
+ }
- $this->userManager->method('get')
- ->with('user')
+ public function testEnableNotSupported() {
+ $user = $this->createMock(IUser::class);
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('ricky')
->willReturn($user);
-
- $this->manager->expects($this->once())
- ->method('disableTwoFactorAuthentication')
- ->with($this->equalTo($user));
-
- $output->expects($this->once())
- ->method('writeln')
- ->with('Two-factor authentication disabled for user user');
-
- $this->invokePrivate($this->command, 'execute', [$input, $output]);
+ $this->providerManager->expects($this->once())
+ ->method('tryDisableProviderFor')
+ ->with('totp', $user)
+ ->willReturn(false);
+
+ $rc = $this->command->execute([
+ 'uid' => 'ricky',
+ 'provider_id' => 'totp',
+ ]);
+
+ $this->assertEquals(2, $rc);
+ $this->assertContains("The provider does not support this operation", $this->command->getDisplay());
}
- public function testEnableFail() {
- $input = $this->createMock(InputInterface::class);
- $output = $this->createMock(OutputInterface::class);
-
- $input->method('getArgument')
- ->with($this->equalTo('uid'))
- ->willReturn('user');
-
- $this->userManager->method('get')
- ->with('user')
- ->willReturn(null);
-
- $this->manager->expects($this->never())
- ->method($this->anything());
-
- $output->expects($this->once())
- ->method('writeln')
- ->with('<error>Invalid UID</error>');
-
- $this->invokePrivate($this->command, 'execute', [$input, $output]);
+ public function testEnabled() {
+ $user = $this->createMock(IUser::class);
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('ricky')
+ ->willReturn($user);
+ $this->providerManager->expects($this->once())
+ ->method('tryDisableProviderFor')
+ ->with('totp', $user)
+ ->willReturn(true);
+
+ $rc = $this->command->execute([
+ 'uid' => 'ricky',
+ 'provider_id' => 'totp',
+ ]);
+
+ $this->assertEquals(0, $rc);
+ $this->assertContains("Two-factor provider totp disabled for user ricky", $this->command->getDisplay());
}
}
diff --git a/tests/Core/Command/TwoFactorAuth/EnableTest.php b/tests/Core/Command/TwoFactorAuth/EnableTest.php
index ebca40df9a5..f31f92da4a5 100644
--- a/tests/Core/Command/TwoFactorAuth/EnableTest.php
+++ b/tests/Core/Command/TwoFactorAuth/EnableTest.php
@@ -1,8 +1,11 @@
<?php
+
+declare(strict_types=1);
+
/**
- * @copyright 2016, Roeland Jago Douma <roeland@famdouma.nl>
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
*
- * @author Roeland Jago Douma <roeland@famdouma.nl>
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
*
* @license GNU AGPL version 3 or any later version
*
@@ -20,80 +23,91 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
+
namespace Test\Core\Command\TwoFactorAuth;
-use OC\Authentication\TwoFactorAuth\Manager;
+use OC\Authentication\TwoFactorAuth\ProviderManager;
use OC\Core\Command\TwoFactorAuth\Enable;
use OCP\IUser;
use OCP\IUserManager;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Output\OutputInterface;
+use PHPUnit\Framework\MockObject\MockObject;
+use Symfony\Component\Console\Tester\CommandTester;
use Test\TestCase;
class EnableTest extends TestCase {
- /** @var Manager|\PHPUnit_Framework_MockObject_MockObject */
- private $manager;
+ /** @var ProviderManager|MockObject */
+ private $providerManager;
- /** @var IUserManager|\PHPUnit_Framework_MockObject_MockObject */
+ /** @var IUserManager|MockObject */
private $userManager;
- /** @var Enable */
+ /** @var CommandTester */
private $command;
public function setUp() {
parent::setUp();
- $this->manager = $this->createMock(Manager::class);
+ $this->providerManager = $this->createMock(ProviderManager::class);
$this->userManager = $this->createMock(IUserManager::class);
- $this->command = new Enable($this->manager, $this->userManager);
+ $cmd = new Enable($this->providerManager, $this->userManager);
+ $this->command = new CommandTester($cmd);
}
- public function testEnableSuccess() {
- $user = $this->createMock(IUser::class);
+ public function testInvalidUID() {
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('nope')
+ ->willReturn(null);
- $input = $this->createMock(InputInterface::class);
- $output = $this->createMock(OutputInterface::class);
+ $rc = $this->command->execute([
+ 'uid' => 'nope',
+ 'provider_id' => 'nope',
+ ]);
- $input->method('getArgument')
- ->with($this->equalTo('uid'))
- ->willReturn('user');
+ $this->assertEquals(1, $rc);
+ $this->assertContains("Invalid UID", $this->command->getDisplay());
+ }
- $this->userManager->method('get')
- ->with('user')
+ public function testEnableNotSupported() {
+ $user = $this->createMock(IUser::class);
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('belle')
->willReturn($user);
-
- $this->manager->expects($this->once())
- ->method('enableTwoFactorAuthentication')
- ->with($this->equalTo($user));
-
- $output->expects($this->once())
- ->method('writeln')
- ->with('Two-factor authentication enabled for user user');
-
- $this->invokePrivate($this->command, 'execute', [$input, $output]);
+ $this->providerManager->expects($this->once())
+ ->method('tryEnableProviderFor')
+ ->with('totp', $user)
+ ->willReturn(false);
+
+ $rc = $this->command->execute([
+ 'uid' => 'belle',
+ 'provider_id' => 'totp',
+ ]);
+
+ $this->assertEquals(2, $rc);
+ $this->assertContains("The provider does not support this operation", $this->command->getDisplay());
}
- public function testEnableFail() {
- $input = $this->createMock(InputInterface::class);
- $output = $this->createMock(OutputInterface::class);
-
- $input->method('getArgument')
- ->with($this->equalTo('uid'))
- ->willReturn('user');
-
- $this->userManager->method('get')
- ->with('user')
- ->willReturn(null);
-
- $this->manager->expects($this->never())
- ->method($this->anything());
-
- $output->expects($this->once())
- ->method('writeln')
- ->with('<error>Invalid UID</error>');
-
- $this->invokePrivate($this->command, 'execute', [$input, $output]);
+ public function testEnabled() {
+ $user = $this->createMock(IUser::class);
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('belle')
+ ->willReturn($user);
+ $this->providerManager->expects($this->once())
+ ->method('tryEnableProviderFor')
+ ->with('totp', $user)
+ ->willReturn(true);
+
+ $rc = $this->command->execute([
+ 'uid' => 'belle',
+ 'provider_id' => 'totp',
+ ]);
+
+ $this->assertEquals(0, $rc);
+ $this->assertContains("Two-factor provider totp enabled for user belle", $this->command->getDisplay());
}
+
}
diff --git a/tests/Core/Command/TwoFactorAuth/StateTest.php b/tests/Core/Command/TwoFactorAuth/StateTest.php
new file mode 100644
index 00000000000..580e137fe32
--- /dev/null
+++ b/tests/Core/Command/TwoFactorAuth/StateTest.php
@@ -0,0 +1,113 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace Core\Command\TwoFactorAuth;
+
+use OC\Core\Command\TwoFactorAuth\State;
+use OCP\Authentication\TwoFactorAuth\IRegistry;
+use OCP\IUser;
+use OCP\IUserManager;
+use PHPUnit\Framework\MockObject\MockObject;
+use Symfony\Component\Console\Tester\CommandTester;
+use Test\TestCase;
+
+class StateTest extends TestCase {
+
+ /** @var IRegistry|MockObject */
+ private $registry;
+
+ /** @var IUserManager|MockObject */
+ private $userManager;
+
+ /** @var CommandTester|MockObject */
+ private $cmd;
+
+ protected function setUp() {
+ parent::setUp();
+
+ $this->registry = $this->createMock(IRegistry::class);
+ $this->userManager = $this->createMock(IUserManager::class);
+
+ $cmd = new State($this->registry, $this->userManager);
+ $this->cmd = new CommandTester($cmd);
+ }
+
+ public function testWrongUID() {
+ $this->cmd->execute([
+ 'uid' => 'nope',
+ ]);
+
+ $output = $this->cmd->getDisplay();
+ $this->assertContains("Invalid UID", $output);
+ }
+
+ public function testStateNoProvidersActive() {
+ $user = $this->createMock(IUser::class);
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('eldora')
+ ->willReturn($user);
+ $states = [
+ 'u2f' => false,
+ 'totp' => false,
+ ];
+ $this->registry->expects($this->once())
+ ->method('getProviderStates')
+ ->with($user)
+ ->willReturn($states);
+
+ $this->cmd->execute([
+ 'uid' => 'eldora',
+ ]);
+
+ $output = $this->cmd->getDisplay();
+ $this->assertContains("Two-factor authentication is not enabled for user eldora", $output);
+ }
+
+ public function testStateOneProviderActive() {
+ $user = $this->createMock(IUser::class);
+ $this->userManager->expects($this->once())
+ ->method('get')
+ ->with('mohamed')
+ ->willReturn($user);
+ $states = [
+ 'u2f' => true,
+ 'totp' => false,
+ ];
+ $this->registry->expects($this->once())
+ ->method('getProviderStates')
+ ->with($user)
+ ->willReturn($states);
+
+ $this->cmd->execute([
+ 'uid' => 'mohamed',
+ ]);
+
+ $output = $this->cmd->getDisplay();
+ $this->assertContains("Two-factor authentication is enabled for user mohamed", $output);
+ }
+
+}
diff --git a/tests/Core/Controller/LostControllerTest.php b/tests/Core/Controller/LostControllerTest.php
index cfaa8e712fa..91b52fc8efa 100644
--- a/tests/Core/Controller/LostControllerTest.php
+++ b/tests/Core/Controller/LostControllerTest.php
@@ -759,4 +759,88 @@ class LostControllerTest extends \Test\TestCase {
$this->assertSame($expectedResponse, $response);
}
+ public function testTwoUsersWithSameEmail() {
+ $user1 = $this->createMock(IUser::class);
+ $user1->expects($this->any())
+ ->method('getEMailAddress')
+ ->willReturn('test@example.com');
+ $user1->expects($this->any())
+ ->method('getUID')
+ ->willReturn('User1');
+ $user1->expects($this->any())
+ ->method('isEnabled')
+ ->willReturn(true);
+
+ $user2 = $this->createMock(IUser::class);
+ $user2->expects($this->any())
+ ->method('getEMailAddress')
+ ->willReturn('test@example.com');
+ $user2->expects($this->any())
+ ->method('getUID')
+ ->willReturn('User2');
+ $user2->expects($this->any())
+ ->method('isEnabled')
+ ->willReturn(true);
+
+ $this->userManager
+ ->method('get')
+ ->willReturn(null);
+
+ $this->userManager
+ ->method('getByEmail')
+ ->willReturn([$user1, $user2]);
+
+ // request password reset for test@example.com
+ $response = $this->lostController->email('test@example.com');
+
+ $expectedResponse = new JSONResponse([
+ 'status' => 'error',
+ 'msg' => 'Couldn\'t send reset email. Please make sure your username is correct.'
+ ]);
+ $expectedResponse->throttle();
+
+ $this->assertEquals($expectedResponse, $response);
+ }
+
+ public function testTwoUsersWithSameEmailOneDisabled() {
+ $user1 = $this->createMock(IUser::class);
+ $user1->expects($this->any())
+ ->method('getEMailAddress')
+ ->willReturn('test@example.com');
+ $user1->expects($this->any())
+ ->method('getUID')
+ ->willReturn('User1');
+ $user1->expects($this->any())
+ ->method('isEnabled')
+ ->willReturn(true);
+
+ $user2 = $this->createMock(IUser::class);
+ $user2->expects($this->any())
+ ->method('getEMailAddress')
+ ->willReturn('test@example.com');
+ $user2->expects($this->any())
+ ->method('getUID')
+ ->willReturn('User2');
+ $user2->expects($this->any())
+ ->method('isEnabled')
+ ->willReturn(false);
+
+ $this->userManager
+ ->method('get')
+ ->willReturn(null);
+
+ $this->userManager
+ ->method('getByEmail')
+ ->willReturn([$user1, $user2]);
+
+ // request password reset for test@example.com
+ $response = $this->lostController->email('test@example.com');
+
+ $expectedResponse = new JSONResponse([
+ 'status' => 'success'
+ ]);
+ $expectedResponse->throttle();
+
+ $this->assertEquals($expectedResponse, $response);
+ }
}
diff --git a/tests/Settings/Controller/CheckSetupControllerTest.php b/tests/Settings/Controller/CheckSetupControllerTest.php
index cc1ed6555c3..6706573a1ad 100644
--- a/tests/Settings/Controller/CheckSetupControllerTest.php
+++ b/tests/Settings/Controller/CheckSetupControllerTest.php
@@ -24,6 +24,7 @@ namespace Tests\Settings\Controller;
use OC;
use OC\DB\Connection;
use OC\MemoryInfo;
+use OC\Security\SecureRandom;
use OC\Settings\Controller\CheckSetupController;
use OCP\AppFramework\Http;
use OCP\AppFramework\Http\DataDisplayResponse;
@@ -79,6 +80,8 @@ class CheckSetupControllerTest extends TestCase {
private $dateTimeFormatter;
/** @var MemoryInfo|MockObject */
private $memoryInfo;
+ /** @var SecureRandom|\PHPUnit_Framework_MockObject_MockObject */
+ private $secureRandom;
/**
* Holds a list of directories created during tests.
@@ -119,6 +122,7 @@ class CheckSetupControllerTest extends TestCase {
$this->memoryInfo = $this->getMockBuilder(MemoryInfo::class)
->setMethods(['isMemoryLimitSufficient',])
->getMock();
+ $this->secureRandom = $this->getMockBuilder(SecureRandom::class)->getMock();
$this->checkSetupController = $this->getMockBuilder('\OC\Settings\Controller\CheckSetupController')
->setConstructorArgs([
'settings',
@@ -135,6 +139,7 @@ class CheckSetupControllerTest extends TestCase {
$this->lockingProvider,
$this->dateTimeFormatter,
$this->memoryInfo,
+ $this->secureRandom,
])
->setMethods([
'isReadOnlyConfig',
@@ -482,7 +487,7 @@ class CheckSetupControllerTest extends TestCase {
'serverHasInternetConnection' => false,
'isMemcacheConfigured' => true,
'memcacheDocs' => 'http://docs.example.org/server/go.php?to=admin-performance',
- 'isUrandomAvailable' => self::invokePrivate($this->checkSetupController, 'isUrandomAvailable'),
+ 'isRandomnessSecure' => self::invokePrivate($this->checkSetupController, 'isRandomnessSecure'),
'securityDocs' => 'https://docs.example.org/server/8.1/admin_manual/configuration_server/hardening.html',
'isUsedTlsLibOutdated' => '',
'phpSupported' => [
@@ -528,6 +533,7 @@ class CheckSetupControllerTest extends TestCase {
$this->lockingProvider,
$this->dateTimeFormatter,
$this->memoryInfo,
+ $this->secureRandom,
])
->setMethods(null)->getMock();
diff --git a/tests/acceptance/run-local.sh b/tests/acceptance/run-local.sh
index e924bd94f3f..7ae6705000c 100755
--- a/tests/acceptance/run-local.sh
+++ b/tests/acceptance/run-local.sh
@@ -206,6 +206,8 @@ su --shell /bin/bash --login www-data --command "cd $NEXTCLOUD_DIR && $ACCEPTANC
echo "Saving the default state so acceptance tests can reset to it"
find . -name ".gitignore" -exec rm --force {} \;
+# Create dummy files in empty directories to force Git to save the directories.
+find . -not -path "*.git*" -type d -empty -exec touch {}/.keep \;
git add --all && echo 'Default state' | git -c user.name='John Doe' -c user.email='john@doe.org' commit --quiet --file=-
cd tests/acceptance
diff --git a/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php b/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php
index cd3bcb81ba6..681ad35c644 100644
--- a/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php
+++ b/tests/lib/Authentication/Token/PublicKeyTokenProviderTest.php
@@ -67,6 +67,7 @@ class PublicKeyTokenProviderTest extends TestCase {
['session_lifetime', 60 * 60 * 24, 150],
['remember_login_cookie_lifetime', 60 * 60 * 24 * 15, 300],
['secret', '', '1f4h9s'],
+ ['openssl', [], []],
]));
$this->logger = $this->createMock(ILogger::class);
$this->timeFactory = $this->createMock(ITimeFactory::class);
diff --git a/tests/lib/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDaoTest.php b/tests/lib/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDaoTest.php
index b46bce719fa..2402fcf9f7b 100644
--- a/tests/lib/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDaoTest.php
+++ b/tests/lib/Authentication/TwoFactorAuth/Db/ProviderUserAssignmentDaoTest.php
@@ -131,4 +131,18 @@ class ProviderUserAssignmentDaoTest extends TestCase {
$this->assertCount(1, $data);
}
+ public function testDeleteAll() {
+ $this->dao->persist('twofactor_fail', 'user1', 1);
+ $this->dao->persist('twofactor_u2f', 'user1', 1);
+ $this->dao->persist('twofactor_fail', 'user2', 0);
+ $this->dao->persist('twofactor_u2f', 'user1', 0);
+
+ $this->dao->deleteAll('twofactor_fail');
+
+ $statesUser1 = $this->dao->getState('user1');
+ $statesUser2 = $this->dao->getState('user2');
+ $this->assertCount(1, $statesUser1);
+ $this->assertCount(0, $statesUser2);
+ }
+
}
diff --git a/tests/lib/Authentication/TwoFactorAuth/ManagerTest.php b/tests/lib/Authentication/TwoFactorAuth/ManagerTest.php
index 1d7c147d9ce..301b4cc09db 100644
--- a/tests/lib/Authentication/TwoFactorAuth/ManagerTest.php
+++ b/tests/lib/Authentication/TwoFactorAuth/ManagerTest.php
@@ -143,13 +143,6 @@ class ManagerTest extends TestCase {
}
public function testIsTwoFactorAuthenticatedNoProviders() {
- $this->user->expects($this->once())
- ->method('getUID')
- ->will($this->returnValue('user123'));
- $this->config->expects($this->once())
- ->method('getUserValue')
- ->with('user123', 'core', 'two_factor_auth_disabled', 0)
- ->willReturn(0);
$this->providerRegistry->expects($this->once())
->method('getProviderStates')
->willReturn([]); // No providers registered
@@ -161,13 +154,6 @@ class ManagerTest extends TestCase {
}
public function testIsTwoFactorAuthenticatedOnlyBackupCodes() {
- $this->user->expects($this->once())
- ->method('getUID')
- ->will($this->returnValue('user123'));
- $this->config->expects($this->once())
- ->method('getUserValue')
- ->with('user123', 'core', 'two_factor_auth_disabled', 0)
- ->willReturn(0);
$this->providerRegistry->expects($this->once())
->method('getProviderStates')
->willReturn([
@@ -187,13 +173,6 @@ class ManagerTest extends TestCase {
}
public function testIsTwoFactorAuthenticatedFailingProviders() {
- $this->user->expects($this->once())
- ->method('getUID')
- ->will($this->returnValue('user123'));
- $this->config->expects($this->once())
- ->method('getUserValue')
- ->with('user123', 'core', 'two_factor_auth_disabled', 0)
- ->willReturn(0);
$this->providerRegistry->expects($this->once())
->method('getProviderStates')
->willReturn([
@@ -225,13 +204,6 @@ class ManagerTest extends TestCase {
* @dataProvider providerStatesFixData
*/
public function testIsTwoFactorAuthenticatedFixesProviderStates(bool $providerEnabled, bool $expected) {
- $this->user->expects($this->once())
- ->method('getUID')
- ->will($this->returnValue('user123'));
- $this->config->expects($this->once())
- ->method('getUserValue')
- ->with('user123', 'core', 'two_factor_auth_disabled', 0)
- ->willReturn(0);
$this->providerRegistry->expects($this->once())
->method('getProviderStates')
->willReturn([]); // Nothing registered yet
diff --git a/tests/lib/Authentication/TwoFactorAuth/ProviderManagerTest.php b/tests/lib/Authentication/TwoFactorAuth/ProviderManagerTest.php
new file mode 100644
index 00000000000..736dfdb913b
--- /dev/null
+++ b/tests/lib/Authentication/TwoFactorAuth/ProviderManagerTest.php
@@ -0,0 +1,154 @@
+<?php
+
+declare(strict_types=1);
+
+/**
+ * @copyright 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2018 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace lib\Authentication\TwoFactorAuth;
+
+use OC\Authentication\TwoFactorAuth\ProviderLoader;
+use OC\Authentication\TwoFactorAuth\ProviderManager;
+use OCP\Authentication\TwoFactorAuth\IActivatableByAdmin;
+use OCP\Authentication\TwoFactorAuth\IDeactivatableByAdmin;
+use OCP\Authentication\TwoFactorAuth\IProvider;
+use OCP\Authentication\TwoFactorAuth\IRegistry;
+use OCP\IUser;
+use PHPUnit\Framework\MockObject\MockObject;
+use Test\TestCase;
+
+class ProviderManagerTest extends TestCase {
+
+ /** @var ProviderLoader|MockObject */
+ private $providerLoader;
+
+ /** @var IRegistry|MockObject */
+ private $registry;
+
+ /** @var ProviderManager */
+ private $providerManager;
+
+ protected function setUp() {
+ parent::setUp();
+
+ $this->providerLoader = $this->createMock(ProviderLoader::class);
+ $this->registry = $this->createMock(IRegistry::class);
+
+ $this->providerManager = new ProviderManager(
+ $this->providerLoader,
+ $this->registry
+ );
+ }
+
+ /**
+ * @expectedException \OC\Authentication\Exceptions\InvalidProviderException
+ */
+ public function testTryEnableInvalidProvider() {
+ $user = $this->createMock(IUser::class);
+ $this->providerManager->tryEnableProviderFor('none', $user);
+ }
+
+ public function testTryEnableUnsupportedProvider() {
+ $user = $this->createMock(IUser::class);
+ $provider = $this->createMock(IProvider::class);
+ $this->providerLoader->expects($this->once())
+ ->method('getProviders')
+ ->with($user)
+ ->willReturn([
+ 'u2f' => $provider,
+ ]);
+ $this->registry->expects($this->never())
+ ->method('enableProviderFor');
+
+ $res = $this->providerManager->tryEnableProviderFor('u2f', $user);
+
+ $this->assertFalse($res);
+ }
+
+ public function testTryEnableProvider() {
+ $user = $this->createMock(IUser::class);
+ $provider = $this->createMock(IActivatableByAdmin::class);
+ $this->providerLoader->expects($this->once())
+ ->method('getProviders')
+ ->with($user)
+ ->willReturn([
+ 'u2f' => $provider,
+ ]);
+ $provider->expects($this->once())
+ ->method('enableFor')
+ ->with($user);
+ $this->registry->expects($this->once())
+ ->method('enableProviderFor')
+ ->with($provider, $user);
+
+ $res = $this->providerManager->tryEnableProviderFor('u2f', $user);
+
+ $this->assertTrue($res);
+ }
+
+ /**
+ * @expectedException \OC\Authentication\Exceptions\InvalidProviderException
+ */
+ public function testTryDisableInvalidProvider() {
+ $user = $this->createMock(IUser::class);
+ $this->providerManager->tryDisableProviderFor('none', $user);
+ }
+
+ public function testTryDisableUnsupportedProvider() {
+ $user = $this->createMock(IUser::class);
+ $provider = $this->createMock(IProvider::class);
+ $this->providerLoader->expects($this->once())
+ ->method('getProviders')
+ ->with($user)
+ ->willReturn([
+ 'u2f' => $provider,
+ ]);
+ $this->registry->expects($this->never())
+ ->method('disableProviderFor');
+
+ $res = $this->providerManager->tryDisableProviderFor('u2f', $user);
+
+ $this->assertFalse($res);
+ }
+
+ public function testTryDisableProvider() {
+ $user = $this->createMock(IUser::class);
+ $provider = $this->createMock(IDeactivatableByAdmin::class);
+ $this->providerLoader->expects($this->once())
+ ->method('getProviders')
+ ->with($user)
+ ->willReturn([
+ 'u2f' => $provider,
+ ]);
+ $provider->expects($this->once())
+ ->method('disableFor')
+ ->with($user);
+ $this->registry->expects($this->once())
+ ->method('disableProviderFor')
+ ->with($provider, $user);
+
+ $res = $this->providerManager->tryDisableProviderFor('u2f', $user);
+
+ $this->assertTrue($res);
+ }
+
+}
diff --git a/tests/lib/Authentication/TwoFactorAuth/RegistryTest.php b/tests/lib/Authentication/TwoFactorAuth/RegistryTest.php
index 71f104ca429..3d2941e009a 100644
--- a/tests/lib/Authentication/TwoFactorAuth/RegistryTest.php
+++ b/tests/lib/Authentication/TwoFactorAuth/RegistryTest.php
@@ -82,4 +82,12 @@ class RegistryTest extends TestCase {
$this->registry->disableProviderFor($provider, $user);
}
+ public function testCleanUp() {
+ $this->dao->expects($this->once())
+ ->method('deleteAll')
+ ->with('twofactor_u2f');
+
+ $this->registry->cleanUp('twofactor_u2f');
+ }
+
}
diff --git a/tests/lib/L10N/L10nTest.php b/tests/lib/L10N/L10nTest.php
index dece334a9bd..dd0fa000b7e 100644
--- a/tests/lib/L10N/L10nTest.php
+++ b/tests/lib/L10N/L10nTest.php
@@ -171,4 +171,31 @@ class L10nTest extends TestCase {
$l = \OC::$server->getL10N('lib', 'de');
$this->assertEquals('Mo.', $l->l('weekdayName', new \DateTime('2017-11-6'), ['width' => 'abbreviated']));
}
+
+ /**
+ * @dataProvider findLanguageFromLocaleData
+ * @param $locale
+ * @param $language
+ */
+ public function testFindLanguageFromLocale($locale, $language) {
+ $this->assertEquals(
+ $language,
+ \OC::$server->getL10NFactory()->findLanguageFromLocale('lib', $locale)
+ );
+ }
+
+ /**
+ * @return array
+ */
+ public function findLanguageFromLocaleData(): array {
+ return [
+ 'en_US' => ['en_US', 'en'],
+ 'en_UK' => ['en_UK', 'en'],
+ 'de_DE' => ['de_DE', 'de_DE'],
+ 'de_AT' => ['de_AT', 'de'],
+ 'es_EC' => ['es_EC', 'es_EC'],
+ 'fi_FI' => ['fi_FI', 'fi'],
+ 'zh_CN' => ['zh_CN', 'zh_CN'],
+ ];
+ }
}