aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
m---------3rdparty0
-rw-r--r--apps/files/js/app.js4
-rw-r--r--apps/files/js/gotoplugin.js2
-rw-r--r--apps/files_versions/src/css/versions.css4
-rw-r--r--apps/settings/l10n/lv.js1
-rw-r--r--apps/settings/l10n/lv.json1
-rw-r--r--apps/settings/l10n/sk.js1
-rw-r--r--apps/settings/l10n/sk.json1
-rw-r--r--apps/theming/l10n/bg.js4
-rw-r--r--apps/theming/l10n/bg.json4
-rw-r--r--apps/theming/l10n/es.js3
-rw-r--r--apps/theming/l10n/es.json3
-rw-r--r--apps/workflowengine/l10n/lv.js1
-rw-r--r--apps/workflowengine/l10n/lv.json1
-rw-r--r--apps/workflowengine/l10n/uk.js1
-rw-r--r--apps/workflowengine/l10n/uk.json1
-rw-r--r--core/js/setupchecks.js2
-rw-r--r--core/js/tests/specs/setupchecksSpec.js2
-rw-r--r--core/l10n/bg.js3
-rw-r--r--core/l10n/bg.json3
-rw-r--r--core/l10n/cs.js4
-rw-r--r--core/l10n/cs.json4
-rw-r--r--core/l10n/de_DE.js4
-rw-r--r--core/l10n/de_DE.json4
-rw-r--r--core/l10n/es.js3
-rw-r--r--core/l10n/es.json3
-rw-r--r--core/l10n/nb.js4
-rw-r--r--core/l10n/nb.json4
-rw-r--r--core/l10n/pl.js4
-rw-r--r--core/l10n/pl.json4
-rw-r--r--core/l10n/pt_BR.js2
-rw-r--r--core/l10n/pt_BR.json2
-rw-r--r--core/l10n/ro.js3
-rw-r--r--core/l10n/ro.json3
-rw-r--r--core/l10n/sk.js10
-rw-r--r--core/l10n/sk.json10
-rw-r--r--core/l10n/sq.js216
-rw-r--r--core/l10n/sq.json214
-rw-r--r--core/l10n/tr.js4
-rw-r--r--core/l10n/tr.json4
-rw-r--r--core/l10n/vi.js2
-rw-r--r--core/l10n/vi.json2
-rw-r--r--core/l10n/zh_HK.js4
-rw-r--r--core/l10n/zh_HK.json4
-rw-r--r--core/l10n/zh_TW.js4
-rw-r--r--core/l10n/zh_TW.json4
-rw-r--r--dist/files_versions-files_versions.js4
-rw-r--r--dist/files_versions-files_versions.js.map2
-rw-r--r--lib/l10n/bg.js2
-rw-r--r--lib/l10n/bg.json2
-rw-r--r--lib/l10n/cs.js2
-rw-r--r--lib/l10n/cs.json2
-rw-r--r--lib/l10n/es.js2
-rw-r--r--lib/l10n/es.json2
-rw-r--r--lib/l10n/lv.js3
-rw-r--r--lib/l10n/lv.json3
-rw-r--r--lib/l10n/sk.js5
-rw-r--r--lib/l10n/sk.json5
-rw-r--r--lib/public/Calendar/ICalendar.php1
59 files changed, 125 insertions, 478 deletions
diff --git a/3rdparty b/3rdparty
-Subproject c1fe9577fcc7006273d35848598df01eaa708b4
+Subproject 02ba5bba999b61d40c79a6ed56683b69edf6661
diff --git a/apps/files/js/app.js b/apps/files/js/app.js
index dcc294975b9..4f335a5b04a 100644
--- a/apps/files/js/app.js
+++ b/apps/files/js/app.js
@@ -321,7 +321,7 @@
dir: e.dir ? e.dir : '/'
};
this._changeUrl(params.view, params.dir);
- OC.Apps.hideAppSidebar($('.detailsView'));
+ OCA.Files.Sidebar.close();
this.navigation.getActiveContainer().trigger(new $.Event('urlChanged', params));
window._nc_event_bus.emit('files:navigation:changed')
}
@@ -352,7 +352,7 @@
_onChangeViewerMode: function(e) {
var state = !!e.viewerModeEnabled;
if (e.viewerModeEnabled) {
- OC.Apps.hideAppSidebar($('.detailsView'));
+ OCA.Files.Sidebar.close();
}
$('#app-navigation').toggleClass('hidden', state);
$('.app-files').toggleClass('viewer-mode no-sidebar', state);
diff --git a/apps/files/js/gotoplugin.js b/apps/files/js/gotoplugin.js
index 474acdab587..ca1823697c4 100644
--- a/apps/files/js/gotoplugin.js
+++ b/apps/files/js/gotoplugin.js
@@ -45,7 +45,7 @@
type: OCA.Files.FileActions.TYPE_DROPDOWN,
actionHandler: function (fileName, context) {
var fileModel = context.fileInfoModel;
- OC.Apps.hideAppSidebar($('.detailsView'));
+ OCA.Files.Sidebar.close();
OCA.Files.App.setActiveView('files', { silent: true });
OCA.Files.App.fileList.changeDirectory(fileModel.get('path'), true, true).then(function() {
OCA.Files.App.fileList.scrollTo(fileModel.get('name'));
diff --git a/apps/files_versions/src/css/versions.css b/apps/files_versions/src/css/versions.css
index fb8877f7f3f..8a32b143f03 100644
--- a/apps/files_versions/src/css/versions.css
+++ b/apps/files_versions/src/css/versions.css
@@ -68,3 +68,7 @@
float: right;
margin-right: -10px;
}
+
+.versionsTabView .emptycontent {
+ margin-top: 50px !important;
+}
diff --git a/apps/settings/l10n/lv.js b/apps/settings/l10n/lv.js
index 7d77aac2d69..166ee58b8a1 100644
--- a/apps/settings/l10n/lv.js
+++ b/apps/settings/l10n/lv.js
@@ -34,6 +34,7 @@ OC.L10N.register(
"Personal" : "Personīgs",
"Additional settings" : "Papildu iestatījumi",
"Sharing" : "Koplietošana",
+ "Availability" : "Pieejamība",
"Personal info" : "Personiskā informācija",
"Email server" : "E-pasta serveris",
"Security & setup warnings" : "Drošības un iestatījumu brīdinājumi",
diff --git a/apps/settings/l10n/lv.json b/apps/settings/l10n/lv.json
index 708aa026980..292f9ad3d56 100644
--- a/apps/settings/l10n/lv.json
+++ b/apps/settings/l10n/lv.json
@@ -32,6 +32,7 @@
"Personal" : "Personīgs",
"Additional settings" : "Papildu iestatījumi",
"Sharing" : "Koplietošana",
+ "Availability" : "Pieejamība",
"Personal info" : "Personiskā informācija",
"Email server" : "E-pasta serveris",
"Security & setup warnings" : "Drošības un iestatījumu brīdinājumi",
diff --git a/apps/settings/l10n/sk.js b/apps/settings/l10n/sk.js
index 31c6dfbf524..8423b5eb4a4 100644
--- a/apps/settings/l10n/sk.js
+++ b/apps/settings/l10n/sk.js
@@ -416,6 +416,7 @@ OC.L10N.register(
"Website" : "Webstránka",
"Profile visibility" : "Viditeľnosť profilu",
"Not available as this property is required for core functionality including file sharing and calendar invitations" : "Nie je k dispozícii, pretože táto vlastnosť je potrebná pre základné funkcie vrátane zdieľania súborov a pozvánok do kalendára",
+ "Not available as federation has been disabled for your account, contact your system administrator if you have any questions" : "Nie je k dispozícii, pretože federácia bola pre váš účet zakázaná. Ak máte nejaké otázky, kontaktujte správcu systému",
"Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions" : "Nie je k dispozícii, pretože publikovanie špecifických údajov užívateľa na vyhľadávacom serveri nie je povolené. Ak máte nejaké otázky, kontaktujte správcu systému",
"Show to everyone" : "Viditeľné pre všetkých",
"Show to logged in users only" : "Viditeľné iba pre prihlásených užívateľov",
diff --git a/apps/settings/l10n/sk.json b/apps/settings/l10n/sk.json
index 7087fbedd7e..2006d394785 100644
--- a/apps/settings/l10n/sk.json
+++ b/apps/settings/l10n/sk.json
@@ -414,6 +414,7 @@
"Website" : "Webstránka",
"Profile visibility" : "Viditeľnosť profilu",
"Not available as this property is required for core functionality including file sharing and calendar invitations" : "Nie je k dispozícii, pretože táto vlastnosť je potrebná pre základné funkcie vrátane zdieľania súborov a pozvánok do kalendára",
+ "Not available as federation has been disabled for your account, contact your system administrator if you have any questions" : "Nie je k dispozícii, pretože federácia bola pre váš účet zakázaná. Ak máte nejaké otázky, kontaktujte správcu systému",
"Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions" : "Nie je k dispozícii, pretože publikovanie špecifických údajov užívateľa na vyhľadávacom serveri nie je povolené. Ak máte nejaké otázky, kontaktujte správcu systému",
"Show to everyone" : "Viditeľné pre všetkých",
"Show to logged in users only" : "Viditeľné iba pre prihlásených užívateľov",
diff --git a/apps/theming/l10n/bg.js b/apps/theming/l10n/bg.js
index b39ec1df5b0..7764ca8bdc1 100644
--- a/apps/theming/l10n/bg.js
+++ b/apps/theming/l10n/bg.js
@@ -49,6 +49,7 @@ OC.L10N.register(
"Adjust the Nextcloud theme" : "Коригиране на темата на 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." : "Чрез темите можете бързо и лесно за персонализирате вида на Nextcloud. Промените ще бъдат видими за всички потребители.",
"Advanced options" : "Допълнителни опции",
+ "Install the ImageMagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Инсталирайте разширението Imagemagick PHP с поддръжка за SVG изображения, за да генерирате автоматично фавикони въз основа на каченото лого и цвят.",
"Name" : "Име",
"Web link" : "URL",
"a safe home for all your data" : "безопасен дом за всички ваши данни",
@@ -57,6 +58,7 @@ OC.L10N.register(
"Logo" : "Лого",
"Upload new logo" : "Качване на ново лого",
"Background and login image" : "Изображение за фон и вход",
+ "Upload new background and login image" : "Качване на нов фон и изображение за вход",
"Legal notice link" : "Връзка за правна информация",
"Privacy policy link" : "Връзка към политиката за поверителност",
"Header logo" : "Главно лого",
@@ -65,6 +67,7 @@ OC.L10N.register(
"Upload new favicon" : "Качване на нов фавикон",
"User settings" : "Потребителски настройки",
"Disable user theming" : "Деактивиране на тематичните настройки на потребителите",
+ "Although you can select and customize your instance, users can change their background and colors. If you want to enforce your customization, you can toggle this on." : "Въпреки че можете да изберете и персонализирате вашият екземпляр, потребителите могат да променят своя фон и цветове. Ако искате да наложите персонализирането си, можете да включите тази опция.",
"Keyboard shortcuts" : "Бързи клавиши",
"In some cases keyboard shortcuts can interfere with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps." : "В някои случаи бързите клавишни комбинации могат да пречат на инструментите за достъпност. За да се позволи правилно фокусиране върху инструмента, можете да деактивирате всички клавишни комбинации тук. Това ще деактивира и всички налични преки пътища в приложенията.",
"Disable all keyboard shortcuts" : "Деактивиране на всички бързи клавишни комбинации",
@@ -79,6 +82,7 @@ OC.L10N.register(
"Plain background" : "Обикновен фон",
"Insert from {productName}" : "Вмъкване от {productName}",
"Theme selection is enforced" : "Изборът на тема е приложен",
+ "Select a custom color" : "Избор на персонализиран цвят",
"Reset to default" : "Настройки по подразбиране",
"Upload" : "Качване",
"Remove background image" : "Премахни фоновото изображение",
diff --git a/apps/theming/l10n/bg.json b/apps/theming/l10n/bg.json
index 2256f2dee27..1271f39c403 100644
--- a/apps/theming/l10n/bg.json
+++ b/apps/theming/l10n/bg.json
@@ -47,6 +47,7 @@
"Adjust the Nextcloud theme" : "Коригиране на темата на 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." : "Чрез темите можете бързо и лесно за персонализирате вида на Nextcloud. Промените ще бъдат видими за всички потребители.",
"Advanced options" : "Допълнителни опции",
+ "Install the ImageMagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Инсталирайте разширението Imagemagick PHP с поддръжка за SVG изображения, за да генерирате автоматично фавикони въз основа на каченото лого и цвят.",
"Name" : "Име",
"Web link" : "URL",
"a safe home for all your data" : "безопасен дом за всички ваши данни",
@@ -55,6 +56,7 @@
"Logo" : "Лого",
"Upload new logo" : "Качване на ново лого",
"Background and login image" : "Изображение за фон и вход",
+ "Upload new background and login image" : "Качване на нов фон и изображение за вход",
"Legal notice link" : "Връзка за правна информация",
"Privacy policy link" : "Връзка към политиката за поверителност",
"Header logo" : "Главно лого",
@@ -63,6 +65,7 @@
"Upload new favicon" : "Качване на нов фавикон",
"User settings" : "Потребителски настройки",
"Disable user theming" : "Деактивиране на тематичните настройки на потребителите",
+ "Although you can select and customize your instance, users can change their background and colors. If you want to enforce your customization, you can toggle this on." : "Въпреки че можете да изберете и персонализирате вашият екземпляр, потребителите могат да променят своя фон и цветове. Ако искате да наложите персонализирането си, можете да включите тази опция.",
"Keyboard shortcuts" : "Бързи клавиши",
"In some cases keyboard shortcuts can interfere with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps." : "В някои случаи бързите клавишни комбинации могат да пречат на инструментите за достъпност. За да се позволи правилно фокусиране върху инструмента, можете да деактивирате всички клавишни комбинации тук. Това ще деактивира и всички налични преки пътища в приложенията.",
"Disable all keyboard shortcuts" : "Деактивиране на всички бързи клавишни комбинации",
@@ -77,6 +80,7 @@
"Plain background" : "Обикновен фон",
"Insert from {productName}" : "Вмъкване от {productName}",
"Theme selection is enforced" : "Изборът на тема е приложен",
+ "Select a custom color" : "Избор на персонализиран цвят",
"Reset to default" : "Настройки по подразбиране",
"Upload" : "Качване",
"Remove background image" : "Премахни фоновото изображение",
diff --git a/apps/theming/l10n/es.js b/apps/theming/l10n/es.js
index e0d7db9a680..a9f6059421f 100644
--- a/apps/theming/l10n/es.js
+++ b/apps/theming/l10n/es.js
@@ -95,6 +95,7 @@ OC.L10N.register(
"Login image" : "Imagen de fondo para el inicio de sesión",
"Upload new login background" : "Subir una nueva imagen de fondo para inicio de sesión",
"Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Instala la extensión de PHP Imagemagick con soporte para imágenes SVG para generar automáticamente faviconos basados en el logo y color subidos.",
- "In some cases keyboard shortcuts can interfer with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps." : "En algunos casos, los atajos de teclado pueden interferir con las herramientas de accesibilidad. De manera de permitir enfocar correctamente tú herramienta, puedes deshabilitar todos los atajos de teclado aquí. Esto también deshabilitará todos los atajos disponibles en las aplicaciones."
+ "In some cases keyboard shortcuts can interfer with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps." : "En algunos casos, los atajos de teclado pueden interferir con las herramientas de accesibilidad. De manera de permitir enfocar correctamente tú herramienta, puedes deshabilitar todos los atajos de teclado aquí. Esto también deshabilitará todos los atajos disponibles en las aplicaciones.",
+ "Although you can select and customize your instance, users can change their background and colors. If you want to enforce your customization, you can check this box." : "Aunque puede seleccionar y personalizar su instancia, los usuarios pueden cambiar su fondo y colores. Si quiere forzar su personalización, puede activar esta casilla."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/apps/theming/l10n/es.json b/apps/theming/l10n/es.json
index 614880bef24..1c4ef68bfd3 100644
--- a/apps/theming/l10n/es.json
+++ b/apps/theming/l10n/es.json
@@ -93,6 +93,7 @@
"Login image" : "Imagen de fondo para el inicio de sesión",
"Upload new login background" : "Subir una nueva imagen de fondo para inicio de sesión",
"Install the Imagemagick PHP extension with support for SVG images to automatically generate favicons based on the uploaded logo and color." : "Instala la extensión de PHP Imagemagick con soporte para imágenes SVG para generar automáticamente faviconos basados en el logo y color subidos.",
- "In some cases keyboard shortcuts can interfer with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps." : "En algunos casos, los atajos de teclado pueden interferir con las herramientas de accesibilidad. De manera de permitir enfocar correctamente tú herramienta, puedes deshabilitar todos los atajos de teclado aquí. Esto también deshabilitará todos los atajos disponibles en las aplicaciones."
+ "In some cases keyboard shortcuts can interfer with accessibility tools. In order to allow focusing on your tool correctly you can disable all keyboard shortcuts here. This will also disable all available shortcuts in apps." : "En algunos casos, los atajos de teclado pueden interferir con las herramientas de accesibilidad. De manera de permitir enfocar correctamente tú herramienta, puedes deshabilitar todos los atajos de teclado aquí. Esto también deshabilitará todos los atajos disponibles en las aplicaciones.",
+ "Although you can select and customize your instance, users can change their background and colors. If you want to enforce your customization, you can check this box." : "Aunque puede seleccionar y personalizar su instancia, los usuarios pueden cambiar su fondo y colores. Si quiere forzar su personalización, puede activar esta casilla."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/apps/workflowengine/l10n/lv.js b/apps/workflowengine/l10n/lv.js
index 62ba7d77993..60203dfe864 100644
--- a/apps/workflowengine/l10n/lv.js
+++ b/apps/workflowengine/l10n/lv.js
@@ -24,6 +24,7 @@ OC.L10N.register(
"Images" : "Attēli",
"Predefined URLs" : "Standarta URLs",
"Files WebDAV" : "WebDAV datnes",
+ "Others" : "Citi",
"Android client" : "Android klients",
"iOS client" : "iOS klients",
"Desktop client" : "Darbvirsmas klients",
diff --git a/apps/workflowengine/l10n/lv.json b/apps/workflowengine/l10n/lv.json
index d6ea554e518..3e457ce2698 100644
--- a/apps/workflowengine/l10n/lv.json
+++ b/apps/workflowengine/l10n/lv.json
@@ -22,6 +22,7 @@
"Images" : "Attēli",
"Predefined URLs" : "Standarta URLs",
"Files WebDAV" : "WebDAV datnes",
+ "Others" : "Citi",
"Android client" : "Android klients",
"iOS client" : "iOS klients",
"Desktop client" : "Darbvirsmas klients",
diff --git a/apps/workflowengine/l10n/uk.js b/apps/workflowengine/l10n/uk.js
index 132e80a37c4..0c69a59484a 100644
--- a/apps/workflowengine/l10n/uk.js
+++ b/apps/workflowengine/l10n/uk.js
@@ -33,6 +33,7 @@ OC.L10N.register(
"Images" : "Зображення",
"Predefined URLs" : "Попередньо визначені URL-адреси",
"Files WebDAV" : "Файли WebDAV",
+ "Others" : "Інші",
"Android client" : "Клієнт Android",
"iOS client" : "iOS клієнт",
"Desktop client" : "Клієнт для ПК",
diff --git a/apps/workflowengine/l10n/uk.json b/apps/workflowengine/l10n/uk.json
index 7acd07b4b9b..8894e813fc4 100644
--- a/apps/workflowengine/l10n/uk.json
+++ b/apps/workflowengine/l10n/uk.json
@@ -31,6 +31,7 @@
"Images" : "Зображення",
"Predefined URLs" : "Попередньо визначені URL-адреси",
"Files WebDAV" : "Файли WebDAV",
+ "Others" : "Інші",
"Android client" : "Клієнт Android",
"iOS client" : "iOS клієнт",
"Desktop client" : "Клієнт для ПК",
diff --git a/core/js/setupchecks.js b/core/js/setupchecks.js
index 497f1e5b332..338d818eeee 100644
--- a/core/js/setupchecks.js
+++ b/core/js/setupchecks.js
@@ -427,7 +427,7 @@
messages.push({
msg: t(
'core',
- 'It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}.'
+ 'It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page ↗{linkend} about this.'
.replace('{linkstart}', '<a target="_blank" rel="noreferrer noopener" class="external" href="' + OC.theme.docPlaceholderUrl.replace('PLACEHOLDER', 'admin-system-requirements') + '">')
.replace('{linkend}', '</a>'),
),
diff --git a/core/js/tests/specs/setupchecksSpec.js b/core/js/tests/specs/setupchecksSpec.js
index 60d042102e0..6df1659d7d3 100644
--- a/core/js/tests/specs/setupchecksSpec.js
+++ b/core/js/tests/specs/setupchecksSpec.js
@@ -1403,7 +1403,7 @@ describe('OC.SetupChecks tests', function() {
async.done(function( data, s, x ){
expect(data).toEqual([{
- msg: 'It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read <a href="https://docs.example.org/admin-system-requirements" class="external" rel="noreferrer noopener">the documentation page about this ↗</a>.',
+ msg: 'It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read <a href="https://docs.example.org/admin-system-requirements" class="external" rel="noreferrer noopener">the documentation page ↗</a> about this.',
type: OC.SetupChecks.MESSAGE_TYPE_WARNING
}]);
done();
diff --git a/core/l10n/bg.js b/core/l10n/bg.js
index b09117500cb..31e4216eaa5 100644
--- a/core/l10n/bg.js
+++ b/core/l10n/bg.js
@@ -421,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Още от меню за приложения",
"Settings menu" : "Настройки",
"The password is wrong. Try again." : "Паролата е грешна. Опитайте отново.",
- "Setup two-factor authentication" : "Свържи двустепенно удостоверяване"
+ "Setup two-factor authentication" : "Свържи двустепенно удостоверяване",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Изглежда, че използвате 32-битова PHP версия. Приложението Nextcloud 26 и по-новите версии изискват 64-битова версия. Моля, обновете операционната си система и PHP на 64-битова версия! За повече подробности прочетете {linkstart}страницата с документация за това {linkend}."
},
"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/bg.json b/core/l10n/bg.json
index a5f986b4052..52cd2b9eb81 100644
--- a/core/l10n/bg.json
+++ b/core/l10n/bg.json
@@ -419,6 +419,7 @@
"More apps menu" : "Още от меню за приложения",
"Settings menu" : "Настройки",
"The password is wrong. Try again." : "Паролата е грешна. Опитайте отново.",
- "Setup two-factor authentication" : "Свържи двустепенно удостоверяване"
+ "Setup two-factor authentication" : "Свържи двустепенно удостоверяване",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Изглежда, че използвате 32-битова PHP версия. Приложението Nextcloud 26 и по-новите версии изискват 64-битова версия. Моля, обновете операционната си система и PHP на 64-битова версия! За повече подробности прочетете {linkstart}страницата с документация за това {linkend}."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/core/l10n/cs.js b/core/l10n/cs.js
index 215ee6f58a1..f60e1f56cfd 100644
--- a/core/l10n/cs.js
+++ b/core/l10n/cs.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Této instanci chybí některé doporučené moduly pro PHP. V zájmu lepšího výkonu a kompatibility, je důrazně doporučeno je nainstalovat.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Ačkoli je zapnutá aplikace pro opatřování motivem vzhledu, není zapnutý PHP modul „imagick“. Aby vytváření ikon webů správně fungovalo, je zapotřebí tento modul nainstalovat a zapnout.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "PHP moduly „gmp“ a/nebo „bcmath“ nejsou zapnuté. Pro používání bezheslového WebAuthn ověřování jsou tyto moduly nezbytné.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Zdá se, že provozujete 32bitovou verzi PHP. Nextcloud verze 26 a novější vyžaduje 64bit. Přejděte na 64bit instalaci operačního systému a PHP! Bližší podrobnosti naleznete {linkstart}na stránce v dokumentaci ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Modul php-imagick v tomto případě nemá žádnou podporu SVG. Pro lepší kompatibilitu se doporučuje nainstalovat.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "U některých sloupců tabulek databáze doposud nebyla provedena konverze na datový typ big int. To proto, že změna typů sloupců ve velkých tabulkách může trvat dlouho a proto nebylo provedeno automaticky. Provedení je možné spustit ručně a to spuštěním příkazu „occ db: convert-filecache-bigint“. Ovšem provést lze jen tehdy, když je instance Nexcloud odstavená. Další podrobnosti naleznete {linkstart}na stránce v dokumentaci, pojednávající o tomto↗{linkend}.",
"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.",
@@ -422,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Nabídka dalších aplikací",
"Settings menu" : "Nabídka nastavení",
"The password is wrong. Try again." : "Chybné heslo. Zkuste to znovu.",
- "Setup two-factor authentication" : "Nastavit dvoufázové ověřování"
+ "Setup two-factor authentication" : "Nastavit dvoufázové ověřování",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Zdá se, že provozujete 32bitovou verzi PHP. Nextcloud verze 26 a novější vyžaduje 64bit. Přejděte na 64bit instalaci operačního systému a PHP! Bližší podrobnosti naleznete {linkstart}na stránce v dokumentaci ↗{linkend}."
},
"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/core/l10n/cs.json b/core/l10n/cs.json
index b5b000b0f89..11c31f64fdd 100644
--- a/core/l10n/cs.json
+++ b/core/l10n/cs.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Této instanci chybí některé doporučené moduly pro PHP. V zájmu lepšího výkonu a kompatibility, je důrazně doporučeno je nainstalovat.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Ačkoli je zapnutá aplikace pro opatřování motivem vzhledu, není zapnutý PHP modul „imagick“. Aby vytváření ikon webů správně fungovalo, je zapotřebí tento modul nainstalovat a zapnout.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "PHP moduly „gmp“ a/nebo „bcmath“ nejsou zapnuté. Pro používání bezheslového WebAuthn ověřování jsou tyto moduly nezbytné.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Zdá se, že provozujete 32bitovou verzi PHP. Nextcloud verze 26 a novější vyžaduje 64bit. Přejděte na 64bit instalaci operačního systému a PHP! Bližší podrobnosti naleznete {linkstart}na stránce v dokumentaci ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Modul php-imagick v tomto případě nemá žádnou podporu SVG. Pro lepší kompatibilitu se doporučuje nainstalovat.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "U některých sloupců tabulek databáze doposud nebyla provedena konverze na datový typ big int. To proto, že změna typů sloupců ve velkých tabulkách může trvat dlouho a proto nebylo provedeno automaticky. Provedení je možné spustit ručně a to spuštěním příkazu „occ db: convert-filecache-bigint“. Ovšem provést lze jen tehdy, když je instance Nexcloud odstavená. Další podrobnosti naleznete {linkstart}na stránce v dokumentaci, pojednávající o tomto↗{linkend}.",
"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.",
@@ -420,6 +419,7 @@
"More apps menu" : "Nabídka dalších aplikací",
"Settings menu" : "Nabídka nastavení",
"The password is wrong. Try again." : "Chybné heslo. Zkuste to znovu.",
- "Setup two-factor authentication" : "Nastavit dvoufázové ověřování"
+ "Setup two-factor authentication" : "Nastavit dvoufázové ověřování",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Zdá se, že provozujete 32bitovou verzi PHP. Nextcloud verze 26 a novější vyžaduje 64bit. Přejděte na 64bit instalaci operačního systému a PHP! Bližší podrobnosti naleznete {linkstart}na stránce v dokumentaci ↗{linkend}."
},"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/core/l10n/de_DE.js b/core/l10n/de_DE.js
index 00a62302455..c1525b2bccb 100644
--- a/core/l10n/de_DE.js
+++ b/core/l10n/de_DE.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Dieser Installation fehlen einige empfohlene PHP-Module. Für bessere Leistung und bessere Kompatibilität wird dringend empfohlen, diese zu installieren.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Das PHP-Modul \"imagick\" ist nicht aktiviert, die Theming-App hingegen schon. Damit die Favicon-Generierung korrekt funktioniert, müssen Sie dieses Modul installieren und aktivieren.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "Die PHP-Module „gmp“ und/oder „bcmath“ sind nicht aktiviert. Wenn Sie die passwortlose WebAuthn-Authentifizierung verwenden, sind diese Module erforderlich.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Sie scheinen eine 32-Bit-PHP-Version auszuführen. Nextcloud 26 und neuer benötigt 64-Bit. Bitte aktualisieren Sie Ihr Betriebssystem und PHP auf 64-Bit! Für weitere Details lesen Sie die {linkstart}diesbezügliche Dokumentationsseite ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Dem Modul php-imagick fehlt die SVG-Unterstützung. Für eine bessere Kompatibilität wird empfohlen, es zu installieren.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Bei einigen Spalten in der Datenbank fehlt eine Konvertierung in big int. Aufgrund der Tatsache, dass das Ändern von Spaltentypen bei großen Tabellen einige Zeit dauern kann, wurden sie nicht automatisch geändert. Durch Ausführen von \"occ db:convert-filecache-bigint\" können diese ausstehenden Änderungen manuell übernommen werden. Diese Operation muss ausgeführt werden, während die Instanz offline ist. Weitere Details finden Sie auf {linkstart}der zugehörigen Dokumentationsseite ↗{linkend}.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite wird als Datenbank verwendet. Bei größeren Installationen wird empfohlen, auf ein anderes Datenbank-Backend zu wechseln.",
@@ -422,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Weitere Apps-Menü",
"Settings menu" : "Einstellungen-Menü",
"The password is wrong. Try again." : "Das Passwort ist falsch. Bitte erneut versuchen.",
- "Setup two-factor authentication" : "Zwei-Faktor-Authentifizierung einrichten"
+ "Setup two-factor authentication" : "Zwei-Faktor-Authentifizierung einrichten",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Sie scheinen eine 32-Bit-PHP-Version auszuführen. Nextcloud 26 und neuer benötigt 64-Bit. Bitte aktualisieren Sie Ihr Betriebssystem und PHP auf 64-Bit! Für weitere Details lesen Sie die {linkstart}diesbezügliche Dokumentationsseite ↗{linkend}."
},
"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/de_DE.json b/core/l10n/de_DE.json
index afc1f77852a..696f659398a 100644
--- a/core/l10n/de_DE.json
+++ b/core/l10n/de_DE.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Dieser Installation fehlen einige empfohlene PHP-Module. Für bessere Leistung und bessere Kompatibilität wird dringend empfohlen, diese zu installieren.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Das PHP-Modul \"imagick\" ist nicht aktiviert, die Theming-App hingegen schon. Damit die Favicon-Generierung korrekt funktioniert, müssen Sie dieses Modul installieren und aktivieren.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "Die PHP-Module „gmp“ und/oder „bcmath“ sind nicht aktiviert. Wenn Sie die passwortlose WebAuthn-Authentifizierung verwenden, sind diese Module erforderlich.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Sie scheinen eine 32-Bit-PHP-Version auszuführen. Nextcloud 26 und neuer benötigt 64-Bit. Bitte aktualisieren Sie Ihr Betriebssystem und PHP auf 64-Bit! Für weitere Details lesen Sie die {linkstart}diesbezügliche Dokumentationsseite ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Dem Modul php-imagick fehlt die SVG-Unterstützung. Für eine bessere Kompatibilität wird empfohlen, es zu installieren.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Bei einigen Spalten in der Datenbank fehlt eine Konvertierung in big int. Aufgrund der Tatsache, dass das Ändern von Spaltentypen bei großen Tabellen einige Zeit dauern kann, wurden sie nicht automatisch geändert. Durch Ausführen von \"occ db:convert-filecache-bigint\" können diese ausstehenden Änderungen manuell übernommen werden. Diese Operation muss ausgeführt werden, während die Instanz offline ist. Weitere Details finden Sie auf {linkstart}der zugehörigen Dokumentationsseite ↗{linkend}.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite wird als Datenbank verwendet. Bei größeren Installationen wird empfohlen, auf ein anderes Datenbank-Backend zu wechseln.",
@@ -420,6 +419,7 @@
"More apps menu" : "Weitere Apps-Menü",
"Settings menu" : "Einstellungen-Menü",
"The password is wrong. Try again." : "Das Passwort ist falsch. Bitte erneut versuchen.",
- "Setup two-factor authentication" : "Zwei-Faktor-Authentifizierung einrichten"
+ "Setup two-factor authentication" : "Zwei-Faktor-Authentifizierung einrichten",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Sie scheinen eine 32-Bit-PHP-Version auszuführen. Nextcloud 26 und neuer benötigt 64-Bit. Bitte aktualisieren Sie Ihr Betriebssystem und PHP auf 64-Bit! Für weitere Details lesen Sie die {linkstart}diesbezügliche Dokumentationsseite ↗{linkend}."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/core/l10n/es.js b/core/l10n/es.js
index e3e71a82741..8ffe465acb8 100644
--- a/core/l10n/es.js
+++ b/core/l10n/es.js
@@ -421,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Menú de otras apps",
"Settings menu" : "Menú de configuraciones",
"The password is wrong. Try again." : "La contraseña es incorrecta. Vuelve a intentarlo.",
- "Setup two-factor authentication" : "Configurar autenticación de dos factores"
+ "Setup two-factor authentication" : "Configurar autenticación de dos factores",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Parece que está ejecutando una versión de PHP de 32 bits. Nextcloud 26 y superiores necesitan 64 bits. ¡Por favor, actualice su sistema operativo y PHP a 64 bits! Puede leer más detalles en {linkstart}la página de documentación correspondiente ↗{linkend}."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/core/l10n/es.json b/core/l10n/es.json
index 670689fede0..e94d198d6f1 100644
--- a/core/l10n/es.json
+++ b/core/l10n/es.json
@@ -419,6 +419,7 @@
"More apps menu" : "Menú de otras apps",
"Settings menu" : "Menú de configuraciones",
"The password is wrong. Try again." : "La contraseña es incorrecta. Vuelve a intentarlo.",
- "Setup two-factor authentication" : "Configurar autenticación de dos factores"
+ "Setup two-factor authentication" : "Configurar autenticación de dos factores",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Parece que está ejecutando una versión de PHP de 32 bits. Nextcloud 26 y superiores necesitan 64 bits. ¡Por favor, actualice su sistema operativo y PHP a 64 bits! Puede leer más detalles en {linkstart}la página de documentación correspondiente ↗{linkend}."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/core/l10n/nb.js b/core/l10n/nb.js
index 02638e29e75..e61eaa6c869 100644
--- a/core/l10n/nb.js
+++ b/core/l10n/nb.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Din instans mangler anbefalte PHP moduler. For bedre ytelse og kompabilitet er det sterkt anbefalt at du installerer dem.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "PHP-modulen \"imagick\" er ikke aktivert selv om tema-appen er det. For at favicongenerering skal fungere riktig, må du installere og aktivere denne modulen.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "PHP-modulene \"gmp\" og/eller \"bcmath\" er ikke aktivert. Hvis du bruker WebAuthn passordløs autentisering, kreves disse modulene.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Det virker som du kjører en 32-biters PHP-versjon. Nextcloud 26 og høyere krever 64-bit. Vennligst oppgrader OS og PHP til 64-bit! For ytterligere detaljer, les {linkstart}dokumentasjonssiden om dette ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Modulen php-imagick for denne instansen mangler støtte for SVG.\nFor økt kompatibilitet anbefales det å installere det.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Noen kolonner i databasen mangler en konvertering til big int. På grunn av det faktum at endring av kolonnetyper på store tabeller kunne ta litt tid ble de ikke endret automatisk. Ved å kjøre \"occ db:convert-filecache-bigint\" kan de ventende endringene brukes manuelt. Denne operasjonen må utføres mens forekomsten er frakoblet. For ytterligere detaljer, les {linkstart}dokumentasjonssiden om dette ↗{linkend}.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite brukes som database motor. For større installasjoner anbefaler vi at du bytter til en annen database motor.",
@@ -411,6 +410,7 @@ OC.L10N.register(
"More apps menu" : "Flere apper-meny",
"Settings menu" : "Meny for innstillinger",
"The password is wrong. Try again." : "Feil passord, forsøk igjen",
- "Setup two-factor authentication" : "Opprett totrinns bekreftelse"
+ "Setup two-factor authentication" : "Opprett totrinns bekreftelse",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Det virker som du kjører en 32-biters PHP-versjon. Nextcloud 26 og høyere krever 64-bit. Vennligst oppgrader OS og PHP til 64-bit! For ytterligere detaljer, les {linkstart}dokumentasjonssiden om dette ↗{linkend}."
},
"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/nb.json b/core/l10n/nb.json
index 61554489a2d..58911aeb1b1 100644
--- a/core/l10n/nb.json
+++ b/core/l10n/nb.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Din instans mangler anbefalte PHP moduler. For bedre ytelse og kompabilitet er det sterkt anbefalt at du installerer dem.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "PHP-modulen \"imagick\" er ikke aktivert selv om tema-appen er det. For at favicongenerering skal fungere riktig, må du installere og aktivere denne modulen.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "PHP-modulene \"gmp\" og/eller \"bcmath\" er ikke aktivert. Hvis du bruker WebAuthn passordløs autentisering, kreves disse modulene.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Det virker som du kjører en 32-biters PHP-versjon. Nextcloud 26 og høyere krever 64-bit. Vennligst oppgrader OS og PHP til 64-bit! For ytterligere detaljer, les {linkstart}dokumentasjonssiden om dette ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Modulen php-imagick for denne instansen mangler støtte for SVG.\nFor økt kompatibilitet anbefales det å installere det.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Noen kolonner i databasen mangler en konvertering til big int. På grunn av det faktum at endring av kolonnetyper på store tabeller kunne ta litt tid ble de ikke endret automatisk. Ved å kjøre \"occ db:convert-filecache-bigint\" kan de ventende endringene brukes manuelt. Denne operasjonen må utføres mens forekomsten er frakoblet. For ytterligere detaljer, les {linkstart}dokumentasjonssiden om dette ↗{linkend}.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite brukes som database motor. For større installasjoner anbefaler vi at du bytter til en annen database motor.",
@@ -409,6 +408,7 @@
"More apps menu" : "Flere apper-meny",
"Settings menu" : "Meny for innstillinger",
"The password is wrong. Try again." : "Feil passord, forsøk igjen",
- "Setup two-factor authentication" : "Opprett totrinns bekreftelse"
+ "Setup two-factor authentication" : "Opprett totrinns bekreftelse",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Det virker som du kjører en 32-biters PHP-versjon. Nextcloud 26 og høyere krever 64-bit. Vennligst oppgrader OS og PHP til 64-bit! For ytterligere detaljer, les {linkstart}dokumentasjonssiden om dette ↗{linkend}."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/core/l10n/pl.js b/core/l10n/pl.js
index 2ca4c514745..a14b7f60d72 100644
--- a/core/l10n/pl.js
+++ b/core/l10n/pl.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "W tej instancji brakuje niektórych zalecanych modułów PHP. W celu zwiększenia wydajności i lepszej kompatybilności zaleca się ich instalację.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Moduł PHP \"imagick\" nie jest włączony, pomimo że aplikacja motywu jest. Aby generowanie favicon działało poprawnie, musisz zainstalować i włączyć ten moduł.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "Moduły PHP \"gmp\" i/lub \"bcmath\" nie są włączone. Jeśli używasz uwierzytelniania WebAuthn bez hasła, te moduły są wymagane.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Wygląda na to, że korzystasz z 32-bitowej wersji PHP. Nextcloud 26 i nowsze wymagają wersji 64-bitowej. Zaktualizuj swój system operacyjny i PHP do wersji 64-bitowej! Aby uzyskać więcej informacji, przeczytaj {linkstart}stronę dokumentacji na ten temat ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Moduł php-imagick w tej instancji nie obsługuje formatu SVG. Aby uzyskać lepszą kompatybilność, zaleca się jego zainstalowanie.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Niektóre kolumny w bazie danych nie zawierają konwersji do big integers. Ze względu na to, że zmiana typów kolumn w dużych tabelach może zająć dużo czasu, nie zostały one zmienione automatycznie. Oczekujące zmiany można wykonać ręcznie, uruchamiając \"occ db:convert-filecache-bigint\". Ta operacja musi zostać wykonana, gdy instancja jest w trybie offline. Więcej informacji na ten temat przeczytasz na {linkstart}stronie dokumentacji ↗{linkend}.",
"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.",
@@ -422,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Więcej menu aplikacji",
"Settings menu" : "Menu ustawień",
"The password is wrong. Try again." : "Hasło jest nieprawidłowe. Spróbuj ponownie.",
- "Setup two-factor authentication" : "Ustaw uwierzytelnianie dwuskładnikowe"
+ "Setup two-factor authentication" : "Ustaw uwierzytelnianie dwuskładnikowe",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Wygląda na to, że korzystasz z 32-bitowej wersji PHP. Nextcloud 26 i nowsze wymagają wersji 64-bitowej. Zaktualizuj swój system operacyjny i PHP do wersji 64-bitowej! Aby uzyskać więcej informacji, przeczytaj {linkstart}stronę dokumentacji na ten temat ↗{linkend}."
},
"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/core/l10n/pl.json b/core/l10n/pl.json
index 684ce37ee4e..0a6d299fde6 100644
--- a/core/l10n/pl.json
+++ b/core/l10n/pl.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "W tej instancji brakuje niektórych zalecanych modułów PHP. W celu zwiększenia wydajności i lepszej kompatybilności zaleca się ich instalację.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Moduł PHP \"imagick\" nie jest włączony, pomimo że aplikacja motywu jest. Aby generowanie favicon działało poprawnie, musisz zainstalować i włączyć ten moduł.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "Moduły PHP \"gmp\" i/lub \"bcmath\" nie są włączone. Jeśli używasz uwierzytelniania WebAuthn bez hasła, te moduły są wymagane.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Wygląda na to, że korzystasz z 32-bitowej wersji PHP. Nextcloud 26 i nowsze wymagają wersji 64-bitowej. Zaktualizuj swój system operacyjny i PHP do wersji 64-bitowej! Aby uzyskać więcej informacji, przeczytaj {linkstart}stronę dokumentacji na ten temat ↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Moduł php-imagick w tej instancji nie obsługuje formatu SVG. Aby uzyskać lepszą kompatybilność, zaleca się jego zainstalowanie.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Niektóre kolumny w bazie danych nie zawierają konwersji do big integers. Ze względu na to, że zmiana typów kolumn w dużych tabelach może zająć dużo czasu, nie zostały one zmienione automatycznie. Oczekujące zmiany można wykonać ręcznie, uruchamiając \"occ db:convert-filecache-bigint\". Ta operacja musi zostać wykonana, gdy instancja jest w trybie offline. Więcej informacji na ten temat przeczytasz na {linkstart}stronie dokumentacji ↗{linkend}.",
"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.",
@@ -420,6 +419,7 @@
"More apps menu" : "Więcej menu aplikacji",
"Settings menu" : "Menu ustawień",
"The password is wrong. Try again." : "Hasło jest nieprawidłowe. Spróbuj ponownie.",
- "Setup two-factor authentication" : "Ustaw uwierzytelnianie dwuskładnikowe"
+ "Setup two-factor authentication" : "Ustaw uwierzytelnianie dwuskładnikowe",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Wygląda na to, że korzystasz z 32-bitowej wersji PHP. Nextcloud 26 i nowsze wymagają wersji 64-bitowej. Zaktualizuj swój system operacyjny i PHP do wersji 64-bitowej! Aby uzyskać więcej informacji, przeczytaj {linkstart}stronę dokumentacji na ten temat ↗{linkend}."
},"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/core/l10n/pt_BR.js b/core/l10n/pt_BR.js
index cab96d8b228..268a06d790f 100644
--- a/core/l10n/pt_BR.js
+++ b/core/l10n/pt_BR.js
@@ -354,7 +354,7 @@ OC.L10N.register(
"Connect to your account" : "Conectar à sua conta",
"Please log in before granting %1$s access to your %2$s account." : "Logue-se antes de conceder acesso %1$s à sua conta %2$s.",
"If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "Se você não está tentando configurar um novo dispositivo ou aplicativo, alguém está tentando induzi-lo a conceder acesso a seus dados. Nesse caso, não prossiga e entre em contato com o administrador do sistema.",
- "App token" : "Token do aplicativo",
+ "App token" : "Token de aplicativo",
"Grant access" : "Conceder acesso",
"Alternative log in using app token" : "Login alternativo usando token de aplicativo",
"Account access" : "Acesso à conta",
diff --git a/core/l10n/pt_BR.json b/core/l10n/pt_BR.json
index 0f2da7f19d9..92a7b11d148 100644
--- a/core/l10n/pt_BR.json
+++ b/core/l10n/pt_BR.json
@@ -352,7 +352,7 @@
"Connect to your account" : "Conectar à sua conta",
"Please log in before granting %1$s access to your %2$s account." : "Logue-se antes de conceder acesso %1$s à sua conta %2$s.",
"If you are not trying to set up a new device or app, someone is trying to trick you into granting them access to your data. In this case do not proceed and instead contact your system administrator." : "Se você não está tentando configurar um novo dispositivo ou aplicativo, alguém está tentando induzi-lo a conceder acesso a seus dados. Nesse caso, não prossiga e entre em contato com o administrador do sistema.",
- "App token" : "Token do aplicativo",
+ "App token" : "Token de aplicativo",
"Grant access" : "Conceder acesso",
"Alternative log in using app token" : "Login alternativo usando token de aplicativo",
"Account access" : "Acesso à conta",
diff --git a/core/l10n/ro.js b/core/l10n/ro.js
index 0e2bafe31c7..3f01eab34f7 100644
--- a/core/l10n/ro.js
+++ b/core/l10n/ro.js
@@ -26,6 +26,7 @@ OC.L10N.register(
"Invalid app password" : "Parolă de aplicație invalidă",
"Could not complete login" : "Nu am putut efectua autentificarea",
"Your login token is invalid or has expired" : "Tokenul tău de autentificare este invalid sau a expirat",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Această versiune produsă de comunitatea Nextcloud nu este suportată și notificările push sunt limitate.",
"Login" : "Autentificare",
"Password reset is disabled" : "Resetarea parolei este dezactivată.",
"Could not reset password because the token is expired" : "Nu s-a putut reseta parola deoarece token-ul a expirat",
@@ -39,6 +40,8 @@ OC.L10N.register(
"Some of your link shares have been removed" : "Unele dintre link-urile tale partajate au fost șterse",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Din cauza unui bug de securitate, a trebuit să eliminăm unele dintre link-urile dvs. partajate. Vă rugăm să consultați link-ul pentru mai multe informații.",
"The user limit of this instance is reached." : "A fost atinsă limita de utilizatori a acestei instanțe.",
+ "Enter your subscription key in the support app in order to increase the user limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introdu cheia de abonament în aplicația de suport pentru a mări limitarea numărului de utilizatori. Acestă cheie vă oferă toate beneficiile suplimentare oferite Nextcloud Enterprise și este recomandat pentru operațiuni în companii.",
+ "Learn more ↗" : "Află mai multe ↗",
"Preparing update" : "Se pregătește actualizarea",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Etapa de reparare:",
diff --git a/core/l10n/ro.json b/core/l10n/ro.json
index a7491a6b3a4..ce0b3d274e5 100644
--- a/core/l10n/ro.json
+++ b/core/l10n/ro.json
@@ -24,6 +24,7 @@
"Invalid app password" : "Parolă de aplicație invalidă",
"Could not complete login" : "Nu am putut efectua autentificarea",
"Your login token is invalid or has expired" : "Tokenul tău de autentificare este invalid sau a expirat",
+ "This community release of Nextcloud is unsupported and push notifications are limited." : "Această versiune produsă de comunitatea Nextcloud nu este suportată și notificările push sunt limitate.",
"Login" : "Autentificare",
"Password reset is disabled" : "Resetarea parolei este dezactivată.",
"Could not reset password because the token is expired" : "Nu s-a putut reseta parola deoarece token-ul a expirat",
@@ -37,6 +38,8 @@
"Some of your link shares have been removed" : "Unele dintre link-urile tale partajate au fost șterse",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Din cauza unui bug de securitate, a trebuit să eliminăm unele dintre link-urile dvs. partajate. Vă rugăm să consultați link-ul pentru mai multe informații.",
"The user limit of this instance is reached." : "A fost atinsă limita de utilizatori a acestei instanțe.",
+ "Enter your subscription key in the support app in order to increase the user limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Introdu cheia de abonament în aplicația de suport pentru a mări limitarea numărului de utilizatori. Acestă cheie vă oferă toate beneficiile suplimentare oferite Nextcloud Enterprise și este recomandat pentru operațiuni în companii.",
+ "Learn more ↗" : "Află mai multe ↗",
"Preparing update" : "Se pregătește actualizarea",
"[%d / %d]: %s" : "[%d / %d]: %s",
"Repair step:" : "Etapa de reparare:",
diff --git a/core/l10n/sk.js b/core/l10n/sk.js
index 2aa228cf07e..6b23b412ffc 100644
--- a/core/l10n/sk.js
+++ b/core/l10n/sk.js
@@ -40,6 +40,7 @@ OC.L10N.register(
"Some of your link shares have been removed" : "Niektoré odkazy sprístupnenia boli odstránené.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kvôli bezpečnostnej chyba sme museli odstrániť niektoré z vašich odkazov pre sprístupnenie. Pre viac informácií nasledujte tento link.",
"The user limit of this instance is reached." : "Limit pre počet užívateľov pre túto inštanciu bol dosiahnutý.",
+ "Enter your subscription key in the support app in order to increase the user limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Zadajte svoj kľúč predplatného v aplikácii podpory, aby ste zvýšili limit používateľov. To vám tiež poskytuje všetky ďalšie výhody, ktoré Nextcloud Enterprise ponúka a je vysoko odporúčaný pre prevádzku vo firemnom prostredí.",
"Learn more ↗" : "Viac informácií ↗",
"Preparing update" : "Pripravuje sa aktualizácia",
"[%d / %d]: %s" : "[%d / %d]: %s",
@@ -201,6 +202,11 @@ OC.L10N.register(
"Search" : "Hľadať",
"An error occurred while searching for {type}" : "Počas hľadania {type} sa vyskytla chyba",
"_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Pre vyhľadávanie zadajte aspoň {minSearchLength} znak","Pre vyhľadávanie zadajte aspoň {minSearchLength} znaky","Pre vyhľadávanie zadajte aspoň {minSearchLength} znakov","Pre vyhľadávanie zadajte aspoň {minSearchLength} znakov"],
+ "This browser is not supported" : "Tento prehliadač nie je podporovaný",
+ "Your browser is not supported. Please upgrade to a newer version or a supported one." : "Váš prehliadač nie je podporovaný. Inovujte na novšiu alebo podporovanú verziu.",
+ "Continue with this unsupported browser" : "Pokračovať s nepodporovaným prehliadačom",
+ "Supported versions" : "Podporované verzie",
+ "{name} version {version} and above" : "{name} verzie {version} alebo vyššej",
"Search {types} …" : "Vyhľadať {types}",
"Settings" : "Nastavenia",
"Could not load your contacts" : "Nie je možné načítať Vaše kontakty",
@@ -289,6 +295,7 @@ OC.L10N.register(
"The profile does not exist." : "Profil neexistuje.",
"Back to %s" : "Späť na %s",
"Page not found" : "Stránka nenájdená",
+ "The page could not be found on the server." : "Stránka nebola nájdená na serveri.",
"Too many requests" : "Priveľa požiadavok",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Príliš mnoho požiadaviek z vašej siete. Skúste to znovu neskôr alebo kontaktujte svojho administrátora ak je toto chyba.",
"Error" : "Chyba",
@@ -414,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Menu ostatných aplikácií",
"Settings menu" : "Menu nastavení",
"The password is wrong. Try again." : "Heslo je chybné. Skúste to znova.",
- "Setup two-factor authentication" : "Nastaviť dvojzložkové overovanie"
+ "Setup two-factor authentication" : "Nastaviť dvojzložkové overovanie",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Zdá sa, že používate 32-bitovú verziu PHP. Nextcloud 26 a vyšší potrebuje 64-bit. Prosím, aktualizujte svoj OS a PHP na 64-bitové! Ďalšie podrobnosti nájdete na {linkstart}stránke dokumentácie↗{linkend}."
},
"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);");
diff --git a/core/l10n/sk.json b/core/l10n/sk.json
index 6d941cc50fe..9b55e408b82 100644
--- a/core/l10n/sk.json
+++ b/core/l10n/sk.json
@@ -38,6 +38,7 @@
"Some of your link shares have been removed" : "Niektoré odkazy sprístupnenia boli odstránené.",
"Due to a security bug we had to remove some of your link shares. Please see the link for more information." : "Kvôli bezpečnostnej chyba sme museli odstrániť niektoré z vašich odkazov pre sprístupnenie. Pre viac informácií nasledujte tento link.",
"The user limit of this instance is reached." : "Limit pre počet užívateľov pre túto inštanciu bol dosiahnutý.",
+ "Enter your subscription key in the support app in order to increase the user limit. This does also grant you all additional benefits that Nextcloud Enterprise offers and is highly recommended for the operation in companies." : "Zadajte svoj kľúč predplatného v aplikácii podpory, aby ste zvýšili limit používateľov. To vám tiež poskytuje všetky ďalšie výhody, ktoré Nextcloud Enterprise ponúka a je vysoko odporúčaný pre prevádzku vo firemnom prostredí.",
"Learn more ↗" : "Viac informácií ↗",
"Preparing update" : "Pripravuje sa aktualizácia",
"[%d / %d]: %s" : "[%d / %d]: %s",
@@ -199,6 +200,11 @@
"Search" : "Hľadať",
"An error occurred while searching for {type}" : "Počas hľadania {type} sa vyskytla chyba",
"_Please enter {minSearchLength} character or more to search_::_Please enter {minSearchLength} characters or more to search_" : ["Pre vyhľadávanie zadajte aspoň {minSearchLength} znak","Pre vyhľadávanie zadajte aspoň {minSearchLength} znaky","Pre vyhľadávanie zadajte aspoň {minSearchLength} znakov","Pre vyhľadávanie zadajte aspoň {minSearchLength} znakov"],
+ "This browser is not supported" : "Tento prehliadač nie je podporovaný",
+ "Your browser is not supported. Please upgrade to a newer version or a supported one." : "Váš prehliadač nie je podporovaný. Inovujte na novšiu alebo podporovanú verziu.",
+ "Continue with this unsupported browser" : "Pokračovať s nepodporovaným prehliadačom",
+ "Supported versions" : "Podporované verzie",
+ "{name} version {version} and above" : "{name} verzie {version} alebo vyššej",
"Search {types} …" : "Vyhľadať {types}",
"Settings" : "Nastavenia",
"Could not load your contacts" : "Nie je možné načítať Vaše kontakty",
@@ -287,6 +293,7 @@
"The profile does not exist." : "Profil neexistuje.",
"Back to %s" : "Späť na %s",
"Page not found" : "Stránka nenájdená",
+ "The page could not be found on the server." : "Stránka nebola nájdená na serveri.",
"Too many requests" : "Priveľa požiadavok",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Príliš mnoho požiadaviek z vašej siete. Skúste to znovu neskôr alebo kontaktujte svojho administrátora ak je toto chyba.",
"Error" : "Chyba",
@@ -412,6 +419,7 @@
"More apps menu" : "Menu ostatných aplikácií",
"Settings menu" : "Menu nastavení",
"The password is wrong. Try again." : "Heslo je chybné. Skúste to znova.",
- "Setup two-factor authentication" : "Nastaviť dvojzložkové overovanie"
+ "Setup two-factor authentication" : "Nastaviť dvojzložkové overovanie",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "Zdá sa, že používate 32-bitovú verziu PHP. Nextcloud 26 a vyšší potrebuje 64-bit. Prosím, aktualizujte svoj OS a PHP na 64-bitové! Ďalšie podrobnosti nájdete na {linkstart}stránke dokumentácie↗{linkend}."
},"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"
} \ No newline at end of file
diff --git a/core/l10n/sq.js b/core/l10n/sq.js
deleted file mode 100644
index ff7b9c5c471..00000000000
--- a/core/l10n/sq.js
+++ /dev/null
@@ -1,216 +0,0 @@
-OC.L10N.register(
- "core",
- {
- "Please select a file." : "Ju lutem përzgjidhni një skedar.",
- "File is too big" : "Skedari është shumë i madh",
- "The selected file is not an image." : "Skedari i zgjedhur nuk është një imazh",
- "The selected file cannot be read." : "Skedari i zgjedhur nuk mund të lexohet",
- "The file was uploaded" : "Skedari u ngarkua",
- "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Kartela e ngarkuar tejkalon udhëzimin MAX_FILE_SIZE që qe përcaktuar te formulari HTML",
- "No file was uploaded" : "S’u ngarkua kartelë",
- "Missing a temporary folder" : "Mungon një dosje e përkohshme",
- "Invalid file provided" : "U dha kartelë e pavlefshme",
- "No image or file provided" : "S’u dha figurë apo kartelë",
- "Unknown filetype" : "Lloj i panjohur kartele",
- "An error occurred. Please contact your admin." : "Ndodhi një gabim. Ju lutemi, lidhuni me përgjegjësin tuaj.",
- "Invalid image" : "Figurë e pavlefshme",
- "No temporary profile picture available, try again" : "S’ka gati foto të përkohshme profili, riprovoni",
- "No crop data provided" : "S’u dhanë të dhëna qethjeje",
- "No valid crop data provided" : "S’u dhanë të dhëna qethjeje të vlefshme",
- "Crop is not square" : "Prerja s’është katrore",
- "State token does not match" : "Shenja shtetërore nuk përputhet",
- "Login" : "Hyrje",
- "Password reset is disabled" : "Opsioni për rigjenerimin e fjalëkalimit është çaktivizuar",
- "%s password reset" : "U ricaktua fjalëkalimi për %s",
- "Password reset" : "Fjalkalimi u rivendos",
- "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Klikoni butonin më poshtë për të rivendosur fjalëkalimin tuaj. Nëse nuk keni kërkuar rivendosjen e fjalëkalimit, atëherë injorojeni këtë email.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Klikoni ne 'link-un' e rradhes per te rivendosur fjalekalimin tuaj.Nese nuk e keni vendosur akoma fjalekalimin atehere mos e merrni parasysh kete email.",
- "Reset your password" : "Rivendosni nje fjalekalim te ri",
- "Nextcloud Server" : "Server Nextcloud",
- "Preparing update" : "Duke përgatitur përditësimin",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Please use the command line updater because automatic updating is disabled in the config.php." : "Ju lutemi, përdorni përditësuesin e rreshtit të urdhrave, sepse përditësimi i vetvetishëm është i çaktivizuar te config.php.",
- "Turned on maintenance mode" : "Mënyra e mirëmbajtjes u aktivizua",
- "Turned off maintenance mode" : "Mënyra e mirëmbajtjes u çaktivizua",
- "Maintenance mode is kept active" : "Mënyra mirëmbajtje është mbajtur e aktivizuar",
- "Updating database schema" : "Po përditësohet skema e bazës së të dhënave",
- "Updated database" : "U përditësua baza e të dhënave",
- "Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Po kontrollohet nëse mund të përditësohet skema e bazës së të dhënave për %s (kjo mund të hajë shumë kohë, varet nga madhësia e bazës së të dhënave)",
- "Set log level to debug" : "Caktoni shkallë regjistrimi për diagnostikimin",
- "Reset log level" : "Rikthe te parazgjedhja shkallën e regjistrimit",
- "Starting code integrity check" : "Po fillohet kontroll integriteti për kodin",
- "Finished code integrity check" : "Përfundoi kontrolli i integritetit për kodin",
- "%s (incompatible)" : "%s (e papërputhshme)",
- "Already up to date" : "Tashmë e përditësuar",
- "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP-ja nuk duket të jetë ngritur si duhet për të kërkuar ndryshore mjedisi sistemi. Testi me getenv(\"PATH\") kthen vetëm një përgjigje të zbrazët.",
- "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Baza juaj e të dhënave nuk ekzekutohet me nivelin \"READ COMMITED\" e izolimit për ndërveprimet. Kjo mund të shkaktojë probleme, kur kryhen paralelisht disa veprime njëherësh.",
- "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nuk ishte e mundur që të ekzekutohej puna cron nëpërmjet CLI. Gabimet teknike në vijim janë shfaqur :",
- "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite po përdoret si bazë të dhënash e programit klient. Për instalime më të ngarkuara, këshillojmë të kalohet në një program tjetër klient baze të dhënash.",
- "This is particularly recommended when using the desktop client for file synchronisation." : "Kjo është veçanërisht e rekomanduar gjatë përdorimit të desktopit të klientit për sinkronizimin skedari. ",
- "Error occurred while checking server setup" : "Ndodhi një gabim gjatë kontrollit të rregullimit të shërbyesit",
- "unknown text" : "tekst i panjohur",
- "Hello world!" : "Hello world!",
- "sunny" : "me diell",
- "Hello {name}, the weather is {weather}" : "Tungjatjeta {name}, koha është {weather}",
- "Hello {name}" : "Tungjatjeta {name}",
- "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Këto janë rezultatet e juaj të kërkimit<script> alarm(1)",
- "new" : "i/e re",
- "_download %n file_::_download %n files_" : ["shkarko %n kartelë","shkarko %n kartela"],
- "The update is in progress, leaving this page might interrupt the process in some environments." : "Përditësimi është në zhvillim, largimi nga faqja mund të ndërpres procesin në disa mjedise.",
- "Update to {version}" : "Përditëso në {version}",
- "An error occurred." : "Ndodhi një gabim.",
- "Please reload the page." : "Ju lutemi, ringarkoni faqen.",
- "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Përditësimi qe i pasuksesshëm. Për më tepër të dhëna <a href=\"{url}\">shihni postimin te forumi ynë</a> lidhur me këtë çështje.",
- "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Përditësimi ishte i pasuksesshëm. Ju lutem raportoni këtë problem në <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>.",
- "More apps" : "Më shumë aplikacione",
- "Log in" : "Hyni",
- "Logging in …" : "Duke u loguar ...",
- "Server side authentication failed!" : "Mirëfilltësimi më anë të shërbyesit dështoi!",
- "Please contact your administrator." : "Ju lutemi, lidhuni me përgjegjësin tuaj.",
- "An internal error occurred." : "Ndodhi një gabim i brendshëm.",
- "Please try again or contact your administrator." : "Ju lutemi, riprovoni ose lidhuni me përgjegjësin tuaj.",
- "Password" : "Fjalëkalim",
- "Wrong username or password." : "Emër përdoruesi ose fjalëkalim i gabuar.",
- "User disabled" : "Përdorues i çaktivizuar",
- "Username or email" : "Emër përdoruesi ose email",
- "Reset password" : "Ricaktoni fjalëkalimin",
- "Couldn't send reset email. Please contact your administrator." : "S’u dërgua dot email-i i ricaktimit. Ju lutemi, lidhuni me përgjegjësin tuaj.",
- "New password" : "Fjalëkalim i ri",
- "I know what I'm doing" : "E di se ç’bëj",
- "Skip" : "Kalo",
- "Forgot password?" : "Keni harruar fjalëkalimin?",
- "Back" : "Prapa",
- "Search" : "Kërko",
- "Settings" : "Rregullime",
- "Search contacts …" : "Kërko kontakte ...",
- "No contacts found" : "Nuk jane gjetur kontakte",
- "Show all contacts …" : "Shfaq të gjitha kontaktet",
- "Loading your contacts …" : "Kontaktet tuaja po ngarkohen ...",
- "Looking for {term} …" : "Duke kërkuar {për] ...",
- "No" : "Jo",
- "Yes" : "Po",
- "No files in here" : "Jo skedar këtu",
- "New folder" : "Dosje e re",
- "Name" : "Emri",
- "Size" : "Madhësi",
- "Modified" : "Modifikuar ",
- "\"{name}\" is an invalid file name." : "\"{name}\" është emër i pavlefshëm kartele.",
- "File name cannot be empty." : "Emri i kartelës s’mund të jetë i zbrazët.",
- "\"{name}\" is not an allowed filetype" : "{name}\" nuk është një tip skedari i lejuar",
- "{newName} already exists" : "{newName} ekziston tashmë",
- "Choose" : "Zgjidhni",
- "Copy" : "Kopjo",
- "Move" : "Lëvize",
- "Error loading file picker template: {error}" : "Gabim në ngarkimin e gjedhes së marrësit të kartelave: {error}",
- "OK" : "OK",
- "Error loading message template: {error}" : "Gabim gjatë ngarkimit të gjedhes së mesazheve: {error}",
- "read-only" : "vetëm për lexim",
- "_{count} file conflict_::_{count} file conflicts_" : ["{count} përplasje kartelash","{count} përplasje kartelash"],
- "One file conflict" : "Një përplasje kartele",
- "New Files" : "Kartela të Reja",
- "Already existing files" : "Kartela ekzistuese",
- "Which files do you want to keep?" : "Cilat kartela doni të mbani?",
- "If you select both versions, the copied file will have a number added to its name." : "Nëse përzgjidhni të dy versionet, kartelës së kopjuar do t’i shtohet një numër në emrin e saj.",
- "Cancel" : "Anuloje",
- "Continue" : "Vazhdo",
- "(all selected)" : "(krejt të përzgjedhurat)",
- "({count} selected)" : "({count} të përzgjedhura)",
- "Error loading file exists template" : "Gabim në ngarkimin e gjedhes kartela ekziston",
- "Pending" : "Në pritje",
- "Authentication required" : "Verifikim i kërkuar",
- "This action requires you to confirm your password" : "Ky veprim kërkon që të konfirmoni fjalëkalimin tuaj.",
- "Confirm" : "Konfirmo",
- "Failed to authenticate, try again" : "Dështoi në verifikim, provo përsëri",
- "seconds ago" : "sekonda më parë",
- "Connection to server lost" : "Lidhja me serverin u shkëput",
- "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problem gjatë ngarkimit të faqes, rifreskimi në %n sekonda","Problem gjatë ngarkimit të faqes, rifreskimi në %n sekonda"],
- "Hide details" : "Fsheh detajet",
- "New in" : "I ri në ",
- "Very weak password" : "Fjalëkalim shumë i dobët",
- "Weak password" : "Fjalëkalim i dobët",
- "So-so password" : "Fjalëkalim çka",
- "Good password" : "Fjalëkalim i mirë",
- "Strong password" : "Fjalëkalim i fortë",
- "No action available" : "Jo veprim i mundur",
- "Error fetching contact actions" : "Gabim gjatë marrjes së veprimeve të kontaktit",
- "Non-existing tag #{tag}" : "Etiketë #{tag} që s’ekziston",
- "Restricted" : "I/E kufizuar",
- "Invisible" : "I padukshëm",
- "Delete" : "Fshije",
- "Rename" : "Riemërtoje",
- "Collaborative tags" : "Etiketa bashkëpunimi",
- "No tags found" : "Jo etiketime të gjetura",
- "Personal" : "Personale",
- "Users" : "Përdorues",
- "Apps" : "Aplikacione",
- "Admin" : "Admin",
- "Help" : "Ndihmë",
- "Access forbidden" : "Ndalohet hyrja",
- "Page not found" : "Faqja nuk u gjet ",
- "Error" : "Gabim",
- "Previous" : "I mëparshëm",
- "Internal Server Error" : "Gabim i Brendshëm Shërbyesi",
- "More details can be found in the server log." : "Më tepër hollësi mund të gjenden në regjistrin e shërbyesit.",
- "Technical details" : "Hollësi teknike",
- "Remote Address: %s" : "Adresë e Largët: %s",
- "Request ID: %s" : "ID Kërkese: %s",
- "Type: %s" : "Lloj: %s",
- "Code: %s" : "Kod: %s",
- "Message: %s" : "Mesazh: %s",
- "File: %s" : "Kartelë: %s",
- "Line: %s" : "Rresht: %s",
- "Trace" : "Gjurmim",
- "Security warning" : "Sinjalizim sigurie",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Drejtoria juaj e të dhënave dhe kartelat tuaja ka shumë mundësi të jenë të arritshme që nga interneti, ngaqë kartela .htaccess s’funksionon.",
- "Create an <strong>admin account</strong>" : "Krijoni një <strong>llogari administruesi</strong>",
- "Username" : "Emër përdoruesi",
- "Storage & database" : "Depozitë & bazë të dhënash",
- "Data folder" : "Dosje të dhënash",
- "Configure the database" : "Formësoni bazën e të dhënave",
- "Only %s is available." : "Vetëm %s është gati.",
- "Install and activate additional PHP modules to choose other database types." : "Që të zgjidhni të tjera lloje bazash të dhënash, instaloni dhe aktivizoni module PHP shtesë.",
- "For more details check out the documentation." : "Për më tepër të dhëna shihni dokumentimin.",
- "Database user" : "Përdorues baze të dhënash",
- "Database password" : "Fjalëkalim baze të dhënash",
- "Database name" : "Emër baze të dhënash",
- "Database tablespace" : "Tablespace-i i database-it",
- "Database host" : "Strehë baze të dhënash",
- "Please specify the port number along with the host name (e.g., localhost:5432)." : "Ju lutem specifikoni numrin e portës së bashku me një emër hosti (p.sh. localhost:5432).",
- "Performance warning" : "Sinjalizim funksionimi",
- "Need help?" : "Ju duhet ndihmë?",
- "See the documentation" : "Shihni dokumentimin",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Ky aplikacion lyp JavaScript për punim të saktë. Ju lutemi, {linkstart}aktivizoni JavaScript-in{linkend} dhe ringarkoni faqen.",
- "Contacts" : "Kontaktet",
- "Contacts menu" : "Menuja e kontakteve",
- "Confirm your password" : "Konfrimoni fjalëkalimin tuaj",
- "Connect to your account" : "Lidhuni me llogarinë tuaj",
- "App token" : "Çelës identifikues i API-t",
- "Grant access" : "Akordoji hyrje",
- "This share is password-protected" : "Kjo pjesë është e mbrojtur me fjalëkalim",
- "Go to %s" : "Shko tek %s",
- "Two-factor authentication" : "Verifikim dy-element",
- "Use backup code" : "Përdorni kodin e kopjes rezervë",
- "Cancel login" : "Anuloje hyrjen",
- "Error while validating your second factor" : "Gabim gjatë verifikimit të elementit të dytë",
- "App update required" : "Lypset përditësim aplikacioni",
- "These incompatible apps will be disabled:" : "Do të çaktivizohen këto aplikacione të papërputhshme:",
- "The theme %s has been disabled." : "Tema %s u çaktivizua.",
- "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Ju lutemi, para se të vazhdoni më tej, sigurohuni që baza e të dhënave, dosja e formësimeve dhe dosja e të dhënave janë kopjeruajtur.",
- "Start update" : "Fillo përditësimin",
- "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Për të shmangur çaste bllokimi pune me instalime të mëdha, mundeni të ekzekutoni urdhrin vijues që nga drejtoria juaj e instalimit:",
- "Detailed logs" : "Regjistrime të hollësishme",
- "Update needed" : "Lyp përditësim",
- "Please use the command line updater because you have a big instance with more than 50 users." : "Ju lutemi,përdorni përditësuesin e rreshtit të urdhrave, sepse keni një instalim me mbi 50 përdorues",
- "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." : "Në qofte se unë vazhdoj të kryej përditësimin nëpëmjet web UI ka rrezik, që kërkesa mund të ndaloj dhe shkakton humbje të të dhënave, por unë di si ti rikthej të dhënat ne rast dështimi.",
- "Upgrade via web on my own risk" : "Përditëso me anë të internetit në rrezikun tim",
- "This %s instance is currently in maintenance mode, which may take a while." : "Kjo instancë %s hëpërhë gjendet nën mënyrën mirëmbajtje, çka mund të zgjasë ca.",
- "Contact your system administrator if this message persists or appeared unexpectedly." : "Nëse ky mesazh shfaqet vazhdimisht ose u shfaq papritmas, lidhuni me përgjegjësin e sistemit.",
- "[%d / %d]: Checking table %s" : "[%d / %d]: Po kontrollohet tabela %s",
- "restricted" : "e kufizuar",
- "invisible" : "e padukshme",
- "File not found" : "S’u gjet kartelë",
- "More" : "More",
- "Settings menu" : "Menuja e cilësimeve",
- "The password is wrong. Try again." : "Fjalëkalim i gabuar. Provojeni sërish."
-},
-"nplurals=2; plural=(n != 1);");
diff --git a/core/l10n/sq.json b/core/l10n/sq.json
deleted file mode 100644
index 3ac761b2644..00000000000
--- a/core/l10n/sq.json
+++ /dev/null
@@ -1,214 +0,0 @@
-{ "translations": {
- "Please select a file." : "Ju lutem përzgjidhni një skedar.",
- "File is too big" : "Skedari është shumë i madh",
- "The selected file is not an image." : "Skedari i zgjedhur nuk është një imazh",
- "The selected file cannot be read." : "Skedari i zgjedhur nuk mund të lexohet",
- "The file was uploaded" : "Skedari u ngarkua",
- "The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form" : "Kartela e ngarkuar tejkalon udhëzimin MAX_FILE_SIZE që qe përcaktuar te formulari HTML",
- "No file was uploaded" : "S’u ngarkua kartelë",
- "Missing a temporary folder" : "Mungon një dosje e përkohshme",
- "Invalid file provided" : "U dha kartelë e pavlefshme",
- "No image or file provided" : "S’u dha figurë apo kartelë",
- "Unknown filetype" : "Lloj i panjohur kartele",
- "An error occurred. Please contact your admin." : "Ndodhi një gabim. Ju lutemi, lidhuni me përgjegjësin tuaj.",
- "Invalid image" : "Figurë e pavlefshme",
- "No temporary profile picture available, try again" : "S’ka gati foto të përkohshme profili, riprovoni",
- "No crop data provided" : "S’u dhanë të dhëna qethjeje",
- "No valid crop data provided" : "S’u dhanë të dhëna qethjeje të vlefshme",
- "Crop is not square" : "Prerja s’është katrore",
- "State token does not match" : "Shenja shtetërore nuk përputhet",
- "Login" : "Hyrje",
- "Password reset is disabled" : "Opsioni për rigjenerimin e fjalëkalimit është çaktivizuar",
- "%s password reset" : "U ricaktua fjalëkalimi për %s",
- "Password reset" : "Fjalkalimi u rivendos",
- "Click the following button to reset your password. If you have not requested the password reset, then ignore this email." : "Klikoni butonin më poshtë për të rivendosur fjalëkalimin tuaj. Nëse nuk keni kërkuar rivendosjen e fjalëkalimit, atëherë injorojeni këtë email.",
- "Click the following link to reset your password. If you have not requested the password reset, then ignore this email." : "Klikoni ne 'link-un' e rradhes per te rivendosur fjalekalimin tuaj.Nese nuk e keni vendosur akoma fjalekalimin atehere mos e merrni parasysh kete email.",
- "Reset your password" : "Rivendosni nje fjalekalim te ri",
- "Nextcloud Server" : "Server Nextcloud",
- "Preparing update" : "Duke përgatitur përditësimin",
- "[%d / %d]: %s" : "[%d / %d]: %s",
- "Please use the command line updater because automatic updating is disabled in the config.php." : "Ju lutemi, përdorni përditësuesin e rreshtit të urdhrave, sepse përditësimi i vetvetishëm është i çaktivizuar te config.php.",
- "Turned on maintenance mode" : "Mënyra e mirëmbajtjes u aktivizua",
- "Turned off maintenance mode" : "Mënyra e mirëmbajtjes u çaktivizua",
- "Maintenance mode is kept active" : "Mënyra mirëmbajtje është mbajtur e aktivizuar",
- "Updating database schema" : "Po përditësohet skema e bazës së të dhënave",
- "Updated database" : "U përditësua baza e të dhënave",
- "Checking whether the database schema for %s can be updated (this can take a long time depending on the database size)" : "Po kontrollohet nëse mund të përditësohet skema e bazës së të dhënave për %s (kjo mund të hajë shumë kohë, varet nga madhësia e bazës së të dhënave)",
- "Set log level to debug" : "Caktoni shkallë regjistrimi për diagnostikimin",
- "Reset log level" : "Rikthe te parazgjedhja shkallën e regjistrimit",
- "Starting code integrity check" : "Po fillohet kontroll integriteti për kodin",
- "Finished code integrity check" : "Përfundoi kontrolli i integritetit për kodin",
- "%s (incompatible)" : "%s (e papërputhshme)",
- "Already up to date" : "Tashmë e përditësuar",
- "PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP-ja nuk duket të jetë ngritur si duhet për të kërkuar ndryshore mjedisi sistemi. Testi me getenv(\"PATH\") kthen vetëm një përgjigje të zbrazët.",
- "Your database does not run with \"READ COMMITTED\" transaction isolation level. This can cause problems when multiple actions are executed in parallel." : "Baza juaj e të dhënave nuk ekzekutohet me nivelin \"READ COMMITED\" e izolimit për ndërveprimet. Kjo mund të shkaktojë probleme, kur kryhen paralelisht disa veprime njëherësh.",
- "It was not possible to execute the cron job via CLI. The following technical errors have appeared:" : "Nuk ishte e mundur që të ekzekutohej puna cron nëpërmjet CLI. Gabimet teknike në vijim janë shfaqur :",
- "SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "SQLite po përdoret si bazë të dhënash e programit klient. Për instalime më të ngarkuara, këshillojmë të kalohet në një program tjetër klient baze të dhënash.",
- "This is particularly recommended when using the desktop client for file synchronisation." : "Kjo është veçanërisht e rekomanduar gjatë përdorimit të desktopit të klientit për sinkronizimin skedari. ",
- "Error occurred while checking server setup" : "Ndodhi një gabim gjatë kontrollit të rregullimit të shërbyesit",
- "unknown text" : "tekst i panjohur",
- "Hello world!" : "Hello world!",
- "sunny" : "me diell",
- "Hello {name}, the weather is {weather}" : "Tungjatjeta {name}, koha është {weather}",
- "Hello {name}" : "Tungjatjeta {name}",
- "<strong>These are your search results<script>alert(1)</script></strong>" : "<strong>Këto janë rezultatet e juaj të kërkimit<script> alarm(1)",
- "new" : "i/e re",
- "_download %n file_::_download %n files_" : ["shkarko %n kartelë","shkarko %n kartela"],
- "The update is in progress, leaving this page might interrupt the process in some environments." : "Përditësimi është në zhvillim, largimi nga faqja mund të ndërpres procesin në disa mjedise.",
- "Update to {version}" : "Përditëso në {version}",
- "An error occurred." : "Ndodhi një gabim.",
- "Please reload the page." : "Ju lutemi, ringarkoni faqen.",
- "The update was unsuccessful. For more information <a href=\"{url}\">check our forum post</a> covering this issue." : "Përditësimi qe i pasuksesshëm. Për më tepër të dhëna <a href=\"{url}\">shihni postimin te forumi ynë</a> lidhur me këtë çështje.",
- "The update was unsuccessful. Please report this issue to the <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>." : "Përditësimi ishte i pasuksesshëm. Ju lutem raportoni këtë problem në <a href=\"https://github.com/nextcloud/server/issues\" target=\"_blank\">Nextcloud community</a>.",
- "More apps" : "Më shumë aplikacione",
- "Log in" : "Hyni",
- "Logging in …" : "Duke u loguar ...",
- "Server side authentication failed!" : "Mirëfilltësimi më anë të shërbyesit dështoi!",
- "Please contact your administrator." : "Ju lutemi, lidhuni me përgjegjësin tuaj.",
- "An internal error occurred." : "Ndodhi një gabim i brendshëm.",
- "Please try again or contact your administrator." : "Ju lutemi, riprovoni ose lidhuni me përgjegjësin tuaj.",
- "Password" : "Fjalëkalim",
- "Wrong username or password." : "Emër përdoruesi ose fjalëkalim i gabuar.",
- "User disabled" : "Përdorues i çaktivizuar",
- "Username or email" : "Emër përdoruesi ose email",
- "Reset password" : "Ricaktoni fjalëkalimin",
- "Couldn't send reset email. Please contact your administrator." : "S’u dërgua dot email-i i ricaktimit. Ju lutemi, lidhuni me përgjegjësin tuaj.",
- "New password" : "Fjalëkalim i ri",
- "I know what I'm doing" : "E di se ç’bëj",
- "Skip" : "Kalo",
- "Forgot password?" : "Keni harruar fjalëkalimin?",
- "Back" : "Prapa",
- "Search" : "Kërko",
- "Settings" : "Rregullime",
- "Search contacts …" : "Kërko kontakte ...",
- "No contacts found" : "Nuk jane gjetur kontakte",
- "Show all contacts …" : "Shfaq të gjitha kontaktet",
- "Loading your contacts …" : "Kontaktet tuaja po ngarkohen ...",
- "Looking for {term} …" : "Duke kërkuar {për] ...",
- "No" : "Jo",
- "Yes" : "Po",
- "No files in here" : "Jo skedar këtu",
- "New folder" : "Dosje e re",
- "Name" : "Emri",
- "Size" : "Madhësi",
- "Modified" : "Modifikuar ",
- "\"{name}\" is an invalid file name." : "\"{name}\" është emër i pavlefshëm kartele.",
- "File name cannot be empty." : "Emri i kartelës s’mund të jetë i zbrazët.",
- "\"{name}\" is not an allowed filetype" : "{name}\" nuk është një tip skedari i lejuar",
- "{newName} already exists" : "{newName} ekziston tashmë",
- "Choose" : "Zgjidhni",
- "Copy" : "Kopjo",
- "Move" : "Lëvize",
- "Error loading file picker template: {error}" : "Gabim në ngarkimin e gjedhes së marrësit të kartelave: {error}",
- "OK" : "OK",
- "Error loading message template: {error}" : "Gabim gjatë ngarkimit të gjedhes së mesazheve: {error}",
- "read-only" : "vetëm për lexim",
- "_{count} file conflict_::_{count} file conflicts_" : ["{count} përplasje kartelash","{count} përplasje kartelash"],
- "One file conflict" : "Një përplasje kartele",
- "New Files" : "Kartela të Reja",
- "Already existing files" : "Kartela ekzistuese",
- "Which files do you want to keep?" : "Cilat kartela doni të mbani?",
- "If you select both versions, the copied file will have a number added to its name." : "Nëse përzgjidhni të dy versionet, kartelës së kopjuar do t’i shtohet një numër në emrin e saj.",
- "Cancel" : "Anuloje",
- "Continue" : "Vazhdo",
- "(all selected)" : "(krejt të përzgjedhurat)",
- "({count} selected)" : "({count} të përzgjedhura)",
- "Error loading file exists template" : "Gabim në ngarkimin e gjedhes kartela ekziston",
- "Pending" : "Në pritje",
- "Authentication required" : "Verifikim i kërkuar",
- "This action requires you to confirm your password" : "Ky veprim kërkon që të konfirmoni fjalëkalimin tuaj.",
- "Confirm" : "Konfirmo",
- "Failed to authenticate, try again" : "Dështoi në verifikim, provo përsëri",
- "seconds ago" : "sekonda më parë",
- "Connection to server lost" : "Lidhja me serverin u shkëput",
- "_Problem loading page, reloading in %n second_::_Problem loading page, reloading in %n seconds_" : ["Problem gjatë ngarkimit të faqes, rifreskimi në %n sekonda","Problem gjatë ngarkimit të faqes, rifreskimi në %n sekonda"],
- "Hide details" : "Fsheh detajet",
- "New in" : "I ri në ",
- "Very weak password" : "Fjalëkalim shumë i dobët",
- "Weak password" : "Fjalëkalim i dobët",
- "So-so password" : "Fjalëkalim çka",
- "Good password" : "Fjalëkalim i mirë",
- "Strong password" : "Fjalëkalim i fortë",
- "No action available" : "Jo veprim i mundur",
- "Error fetching contact actions" : "Gabim gjatë marrjes së veprimeve të kontaktit",
- "Non-existing tag #{tag}" : "Etiketë #{tag} që s’ekziston",
- "Restricted" : "I/E kufizuar",
- "Invisible" : "I padukshëm",
- "Delete" : "Fshije",
- "Rename" : "Riemërtoje",
- "Collaborative tags" : "Etiketa bashkëpunimi",
- "No tags found" : "Jo etiketime të gjetura",
- "Personal" : "Personale",
- "Users" : "Përdorues",
- "Apps" : "Aplikacione",
- "Admin" : "Admin",
- "Help" : "Ndihmë",
- "Access forbidden" : "Ndalohet hyrja",
- "Page not found" : "Faqja nuk u gjet ",
- "Error" : "Gabim",
- "Previous" : "I mëparshëm",
- "Internal Server Error" : "Gabim i Brendshëm Shërbyesi",
- "More details can be found in the server log." : "Më tepër hollësi mund të gjenden në regjistrin e shërbyesit.",
- "Technical details" : "Hollësi teknike",
- "Remote Address: %s" : "Adresë e Largët: %s",
- "Request ID: %s" : "ID Kërkese: %s",
- "Type: %s" : "Lloj: %s",
- "Code: %s" : "Kod: %s",
- "Message: %s" : "Mesazh: %s",
- "File: %s" : "Kartelë: %s",
- "Line: %s" : "Rresht: %s",
- "Trace" : "Gjurmim",
- "Security warning" : "Sinjalizim sigurie",
- "Your data directory and files are probably accessible from the internet because the .htaccess file does not work." : "Drejtoria juaj e të dhënave dhe kartelat tuaja ka shumë mundësi të jenë të arritshme që nga interneti, ngaqë kartela .htaccess s’funksionon.",
- "Create an <strong>admin account</strong>" : "Krijoni një <strong>llogari administruesi</strong>",
- "Username" : "Emër përdoruesi",
- "Storage & database" : "Depozitë & bazë të dhënash",
- "Data folder" : "Dosje të dhënash",
- "Configure the database" : "Formësoni bazën e të dhënave",
- "Only %s is available." : "Vetëm %s është gati.",
- "Install and activate additional PHP modules to choose other database types." : "Që të zgjidhni të tjera lloje bazash të dhënash, instaloni dhe aktivizoni module PHP shtesë.",
- "For more details check out the documentation." : "Për më tepër të dhëna shihni dokumentimin.",
- "Database user" : "Përdorues baze të dhënash",
- "Database password" : "Fjalëkalim baze të dhënash",
- "Database name" : "Emër baze të dhënash",
- "Database tablespace" : "Tablespace-i i database-it",
- "Database host" : "Strehë baze të dhënash",
- "Please specify the port number along with the host name (e.g., localhost:5432)." : "Ju lutem specifikoni numrin e portës së bashku me një emër hosti (p.sh. localhost:5432).",
- "Performance warning" : "Sinjalizim funksionimi",
- "Need help?" : "Ju duhet ndihmë?",
- "See the documentation" : "Shihni dokumentimin",
- "This application requires JavaScript for correct operation. Please {linkstart}enable JavaScript{linkend} and reload the page." : "Ky aplikacion lyp JavaScript për punim të saktë. Ju lutemi, {linkstart}aktivizoni JavaScript-in{linkend} dhe ringarkoni faqen.",
- "Contacts" : "Kontaktet",
- "Contacts menu" : "Menuja e kontakteve",
- "Confirm your password" : "Konfrimoni fjalëkalimin tuaj",
- "Connect to your account" : "Lidhuni me llogarinë tuaj",
- "App token" : "Çelës identifikues i API-t",
- "Grant access" : "Akordoji hyrje",
- "This share is password-protected" : "Kjo pjesë është e mbrojtur me fjalëkalim",
- "Go to %s" : "Shko tek %s",
- "Two-factor authentication" : "Verifikim dy-element",
- "Use backup code" : "Përdorni kodin e kopjes rezervë",
- "Cancel login" : "Anuloje hyrjen",
- "Error while validating your second factor" : "Gabim gjatë verifikimit të elementit të dytë",
- "App update required" : "Lypset përditësim aplikacioni",
- "These incompatible apps will be disabled:" : "Do të çaktivizohen këto aplikacione të papërputhshme:",
- "The theme %s has been disabled." : "Tema %s u çaktivizua.",
- "Please make sure that the database, the config folder and the data folder have been backed up before proceeding." : "Ju lutemi, para se të vazhdoni më tej, sigurohuni që baza e të dhënave, dosja e formësimeve dhe dosja e të dhënave janë kopjeruajtur.",
- "Start update" : "Fillo përditësimin",
- "To avoid timeouts with larger installations, you can instead run the following command from your installation directory:" : "Për të shmangur çaste bllokimi pune me instalime të mëdha, mundeni të ekzekutoni urdhrin vijues që nga drejtoria juaj e instalimit:",
- "Detailed logs" : "Regjistrime të hollësishme",
- "Update needed" : "Lyp përditësim",
- "Please use the command line updater because you have a big instance with more than 50 users." : "Ju lutemi,përdorni përditësuesin e rreshtit të urdhrave, sepse keni një instalim me mbi 50 përdorues",
- "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." : "Në qofte se unë vazhdoj të kryej përditësimin nëpëmjet web UI ka rrezik, që kërkesa mund të ndaloj dhe shkakton humbje të të dhënave, por unë di si ti rikthej të dhënat ne rast dështimi.",
- "Upgrade via web on my own risk" : "Përditëso me anë të internetit në rrezikun tim",
- "This %s instance is currently in maintenance mode, which may take a while." : "Kjo instancë %s hëpërhë gjendet nën mënyrën mirëmbajtje, çka mund të zgjasë ca.",
- "Contact your system administrator if this message persists or appeared unexpectedly." : "Nëse ky mesazh shfaqet vazhdimisht ose u shfaq papritmas, lidhuni me përgjegjësin e sistemit.",
- "[%d / %d]: Checking table %s" : "[%d / %d]: Po kontrollohet tabela %s",
- "restricted" : "e kufizuar",
- "invisible" : "e padukshme",
- "File not found" : "S’u gjet kartelë",
- "More" : "More",
- "Settings menu" : "Menuja e cilësimeve",
- "The password is wrong. Try again." : "Fjalëkalim i gabuar. Provojeni sërish."
-},"pluralForm" :"nplurals=2; plural=(n != 1);"
-} \ No newline at end of file
diff --git a/core/l10n/tr.js b/core/l10n/tr.js
index 102324984b9..b5119dd884b 100644
--- a/core/l10n/tr.js
+++ b/core/l10n/tr.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Bu kopyada önerilen bazı PHP modülleri eksik. Daha iyi başarım ve uyumluluk için bu modüllerin kurulması önemle önerilir.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Tema uygulamasında olmasına rağmen \"imagick\" PHP modülü etkinleştirilmemiş. Favicon oluşturma işleminin doğru çalışması için bu modülü kurmanız ve etkinleştirmeniz gerekir.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "\"gmp\" ve/veya \"bcmath\" PHP modülleri etkinleştirilmemiş. WebAuthn parolasız kimlik doğrulaması kullanıyorsanız, bu modüller gereklidir.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "32 bit bir PHP sürümü çalıştırıyorsunuz gibi görünüyor. Nextcloud 26 sürümü ve üzerinin iyi çalışması için 64 bit kullanılmalıdır. Lütfen işletim sisteminizi ve PHP sürümünüzü 64 bit olacak şekilde yükseltin! Ayrıntılı bilgi almak için {linkstart}ilgili belgeler sayfasına bakabilirsiniz↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Bu kopyadaki php-imagick modülünde SVG desteği yok. Daha iyi başarım ve uyumluluk için bu modülün kurulması önemle önerilir.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Veritabanında büyük tamsayıya dönüştürülecek bazı sütunlar eksik. Sütun türlerini büyük tablolara dönüştürme işlemi uzun sürebileceğinden bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken bekleyen değişiklikleri el ile uygulamak için \"occ db:convert-filecache-bigint\" komutunu yürütün. Bu işlem yapılırken Nextcloud kopyası çevrimdışı olur. Ayrıntılı bilgi almak için {linkstart}belgeler ↗{linkend} bölümüne bakabilirsiniz.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "Şu anda veritabanı olarak SQLite kullanılıyor. Daha büyük kurulumlar için farklı bir veritabanı arka ucuna geçmenizi öneriyoruz.",
@@ -422,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "Diğer uygulamalar menüsü",
"Settings menu" : "Ayarlar menüsü",
"The password is wrong. Try again." : "Parola yanlış. Yeniden deneyin.",
- "Setup two-factor authentication" : "İki aşamalı kimlik doğrulama kurulumu"
+ "Setup two-factor authentication" : "İki aşamalı kimlik doğrulama kurulumu",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "32 bit bir PHP sürümü çalıştırıyorsunuz gibi görünüyor. Nextcloud 26 sürümü ve üzerinin iyi çalışması için 64 bit kullanılmalıdır. Lütfen işletim sisteminizi ve PHP sürümünüzü 64 bit olacak şekilde yükseltin! Ayrıntılı bilgi almak için {linkstart}ilgili belgeler sayfasına bakabilirsiniz↗{linkend}."
},
"nplurals=2; plural=(n > 1);");
diff --git a/core/l10n/tr.json b/core/l10n/tr.json
index 4038b109b4d..9c94ea07c15 100644
--- a/core/l10n/tr.json
+++ b/core/l10n/tr.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "Bu kopyada önerilen bazı PHP modülleri eksik. Daha iyi başarım ve uyumluluk için bu modüllerin kurulması önemle önerilir.",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "Tema uygulamasında olmasına rağmen \"imagick\" PHP modülü etkinleştirilmemiş. Favicon oluşturma işleminin doğru çalışması için bu modülü kurmanız ve etkinleştirmeniz gerekir.",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "\"gmp\" ve/veya \"bcmath\" PHP modülleri etkinleştirilmemiş. WebAuthn parolasız kimlik doğrulaması kullanıyorsanız, bu modüller gereklidir.",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "32 bit bir PHP sürümü çalıştırıyorsunuz gibi görünüyor. Nextcloud 26 sürümü ve üzerinin iyi çalışması için 64 bit kullanılmalıdır. Lütfen işletim sisteminizi ve PHP sürümünüzü 64 bit olacak şekilde yükseltin! Ayrıntılı bilgi almak için {linkstart}ilgili belgeler sayfasına bakabilirsiniz↗{linkend}.",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "Bu kopyadaki php-imagick modülünde SVG desteği yok. Daha iyi başarım ve uyumluluk için bu modülün kurulması önemle önerilir.",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "Veritabanında büyük tamsayıya dönüştürülecek bazı sütunlar eksik. Sütun türlerini büyük tablolara dönüştürme işlemi uzun sürebileceğinden bu işlem otomatik olarak yapılmaz. Sunucunuz normal çalışırken bekleyen değişiklikleri el ile uygulamak için \"occ db:convert-filecache-bigint\" komutunu yürütün. Bu işlem yapılırken Nextcloud kopyası çevrimdışı olur. Ayrıntılı bilgi almak için {linkstart}belgeler ↗{linkend} bölümüne bakabilirsiniz.",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "Şu anda veritabanı olarak SQLite kullanılıyor. Daha büyük kurulumlar için farklı bir veritabanı arka ucuna geçmenizi öneriyoruz.",
@@ -420,6 +419,7 @@
"More apps menu" : "Diğer uygulamalar menüsü",
"Settings menu" : "Ayarlar menüsü",
"The password is wrong. Try again." : "Parola yanlış. Yeniden deneyin.",
- "Setup two-factor authentication" : "İki aşamalı kimlik doğrulama kurulumu"
+ "Setup two-factor authentication" : "İki aşamalı kimlik doğrulama kurulumu",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "32 bit bir PHP sürümü çalıştırıyorsunuz gibi görünüyor. Nextcloud 26 sürümü ve üzerinin iyi çalışması için 64 bit kullanılmalıdır. Lütfen işletim sisteminizi ve PHP sürümünüzü 64 bit olacak şekilde yükseltin! Ayrıntılı bilgi almak için {linkstart}ilgili belgeler sayfasına bakabilirsiniz↗{linkend}."
},"pluralForm" :"nplurals=2; plural=(n > 1);"
} \ No newline at end of file
diff --git a/core/l10n/vi.js b/core/l10n/vi.js
index 9319a3ef9ef..1ab8eefa8ec 100644
--- a/core/l10n/vi.js
+++ b/core/l10n/vi.js
@@ -73,6 +73,8 @@ OC.L10N.register(
"Please contact your administrator." : "Vui lòng liên hệ với quản trị viên.",
"An internal error occurred." : "Đã xảy ra một lỗi nội bộ.",
"Please try again or contact your administrator." : "Vui lòng thử lại hoặc liên hệ quản trị của bạn.",
+ "Log in to {productName}" : "Đăng nhập vào {productName}",
+ "Account name or email" : "Tên tài khoản hoặc email",
"Password" : "Mật khẩu",
"User disabled" : "Vô hiệu hóa sử dụng",
"Username or email" : "Tên truy cập hoặc email",
diff --git a/core/l10n/vi.json b/core/l10n/vi.json
index 9b2d0e9babf..d6f00a234ec 100644
--- a/core/l10n/vi.json
+++ b/core/l10n/vi.json
@@ -71,6 +71,8 @@
"Please contact your administrator." : "Vui lòng liên hệ với quản trị viên.",
"An internal error occurred." : "Đã xảy ra một lỗi nội bộ.",
"Please try again or contact your administrator." : "Vui lòng thử lại hoặc liên hệ quản trị của bạn.",
+ "Log in to {productName}" : "Đăng nhập vào {productName}",
+ "Account name or email" : "Tên tài khoản hoặc email",
"Password" : "Mật khẩu",
"User disabled" : "Vô hiệu hóa sử dụng",
"Username or email" : "Tên truy cập hoặc email",
diff --git a/core/l10n/zh_HK.js b/core/l10n/zh_HK.js
index a310b59a7bf..3faaa167b03 100644
--- a/core/l10n/zh_HK.js
+++ b/core/l10n/zh_HK.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "您的 Nextcloud 缺少了某些建議的 PHP 模組。為了提升效能與相容性,強烈建議您安裝這些 PHP 模組。",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "雖然已啟用佈景主題應用程式,但並未啟用 PHP 模組「imagick」。為了讓 favicon 產生流程正常運作,您必須安裝並啟用此模組。",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "未啟用 PHP 模組「gmp」與「bcmath」。若您要使用 WebAuthn 免密碼驗證,這些模組就是必要的。",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "本系統安裝的 php-imagick 不支援 SVG,為了更好的相容性,建議安裝它。",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "數據庫中的某些列缺少對 big int 的轉換。由於更改大表上的列類型可能需要一些時間,因此無法自動更改它們。通過運行 “occ db:convert-filecache-bigint”,可以手動應用這些未決的更改。實例處於脫機狀態時需要執行此操作。有關更多詳細信息,請{linklink}關於此↗{linkend}的文檔頁面。",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "目前您的後端數據庫使用 SQLite,在大型服務當中,我們建議您使用其他的數據庫後端。",
@@ -422,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "更多應用程式選單",
"Settings menu" : "設定選單",
"The password is wrong. Try again." : "密碼錯誤,請重試",
- "Setup two-factor authentication" : "設定雙重認證"
+ "Setup two-factor authentication" : "設定雙重認證",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。"
},
"nplurals=1; plural=0;");
diff --git a/core/l10n/zh_HK.json b/core/l10n/zh_HK.json
index dc6196c6883..df4b85916df 100644
--- a/core/l10n/zh_HK.json
+++ b/core/l10n/zh_HK.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "您的 Nextcloud 缺少了某些建議的 PHP 模組。為了提升效能與相容性,強烈建議您安裝這些 PHP 模組。",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "雖然已啟用佈景主題應用程式,但並未啟用 PHP 模組「imagick」。為了讓 favicon 產生流程正常運作,您必須安裝並啟用此模組。",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "未啟用 PHP 模組「gmp」與「bcmath」。若您要使用 WebAuthn 免密碼驗證,這些模組就是必要的。",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "本系統安裝的 php-imagick 不支援 SVG,為了更好的相容性,建議安裝它。",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "數據庫中的某些列缺少對 big int 的轉換。由於更改大表上的列類型可能需要一些時間,因此無法自動更改它們。通過運行 “occ db:convert-filecache-bigint”,可以手動應用這些未決的更改。實例處於脫機狀態時需要執行此操作。有關更多詳細信息,請{linklink}關於此↗{linkend}的文檔頁面。",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "目前您的後端數據庫使用 SQLite,在大型服務當中,我們建議您使用其他的數據庫後端。",
@@ -420,6 +419,7 @@
"More apps menu" : "更多應用程式選單",
"Settings menu" : "設定選單",
"The password is wrong. Try again." : "密碼錯誤,請重試",
- "Setup two-factor authentication" : "設定雙重認證"
+ "Setup two-factor authentication" : "設定雙重認證",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/core/l10n/zh_TW.js b/core/l10n/zh_TW.js
index 7dd903b661e..4613141515a 100644
--- a/core/l10n/zh_TW.js
+++ b/core/l10n/zh_TW.js
@@ -100,7 +100,6 @@ OC.L10N.register(
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "您的 Nextcloud 缺少了某些建議的 PHP 模組。為了提升效能與相容性,強烈建議您安裝這些 PHP 模組。",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "雖然已啟用佈景主題應用程式,但並未啟用 PHP 模組「imagick」。為了讓 favicon 產生流程正常運作,您必須安裝並啟用此模組。",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "未啟用 PHP 模組「gmp」與「bcmath」。若您要使用 WebAuthn 免密碼驗證,這些模組就是必要的。",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "系統安裝的 php-imagick 不支援 SVG,為了更好的相容性,建議安裝它。",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "資料庫的有些欄位缺少 big int 格式轉換。因為欄位格式轉換需要一些時間,所以沒有自動轉換。您可以執行 \"occ db:convert-filecache-bigint\" 手動完成轉換,轉換時 Nextcloud 服務必須處於離線狀態。詳情請參閱{linkstart}關於這個問題的文件頁面 ↗{linkend}。",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "目前您的後端資料庫使用 SQLite,在大型服務當中,我們建議您使用其他的資料庫後端。",
@@ -422,6 +421,7 @@ OC.L10N.register(
"More apps menu" : "更多應用程式選單",
"Settings menu" : "設定選單",
"The password is wrong. Try again." : "密碼錯誤,請重試",
- "Setup two-factor authentication" : "設定雙因素驗證"
+ "Setup two-factor authentication" : "設定雙因素驗證",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。"
},
"nplurals=1; plural=0;");
diff --git a/core/l10n/zh_TW.json b/core/l10n/zh_TW.json
index 3d3c95bf94e..4ec0c131f47 100644
--- a/core/l10n/zh_TW.json
+++ b/core/l10n/zh_TW.json
@@ -98,7 +98,6 @@
"This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them." : "您的 Nextcloud 缺少了某些建議的 PHP 模組。為了提升效能與相容性,強烈建議您安裝這些 PHP 模組。",
"The PHP module \"imagick\" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module." : "雖然已啟用佈景主題應用程式,但並未啟用 PHP 模組「imagick」。為了讓 favicon 產生流程正常運作,您必須安裝並啟用此模組。",
"The PHP modules \"gmp\" and/or \"bcmath\" are not enabled. If you use WebAuthn passwordless authentication, these modules are required." : "未啟用 PHP 模組「gmp」與「bcmath」。若您要使用 WebAuthn 免密碼驗證,這些模組就是必要的。",
- "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。",
"Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it." : "系統安裝的 php-imagick 不支援 SVG,為了更好的相容性,建議安裝它。",
"Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read {linkstart}the documentation page about this ↗{linkend}." : "資料庫的有些欄位缺少 big int 格式轉換。因為欄位格式轉換需要一些時間,所以沒有自動轉換。您可以執行 \"occ db:convert-filecache-bigint\" 手動完成轉換,轉換時 Nextcloud 服務必須處於離線狀態。詳情請參閱{linkstart}關於這個問題的文件頁面 ↗{linkend}。",
"SQLite is currently being used as the backend database. For larger installations we recommend that you switch to a different database backend." : "目前您的後端資料庫使用 SQLite,在大型服務當中,我們建議您使用其他的資料庫後端。",
@@ -420,6 +419,7 @@
"More apps menu" : "更多應用程式選單",
"Settings menu" : "設定選單",
"The password is wrong. Try again." : "密碼錯誤,請重試",
- "Setup two-factor authentication" : "設定雙因素驗證"
+ "Setup two-factor authentication" : "設定雙因素驗證",
+ "It seems like you are running a 32-bit PHP version. Nextcloud 26 and higher require 64-bit. Please upgrade your OS and PHP to 64-bit! For further details read {linkstart}the documentation page about this ↗{linkend}." : "您似乎正在執行 32 位元版本的 PHP。Nextcloud 26 或更新版本需要使用 64 位元的版本。請將您的作業系統與 PHP 升級至 64 位元!要取得更多詳細資訊,請閱讀{linkstart}關於此問題的文件 ↗{linkend}。"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/dist/files_versions-files_versions.js b/dist/files_versions-files_versions.js
index 1049d123732..379dc000a91 100644
--- a/dist/files_versions-files_versions.js
+++ b/dist/files_versions-files_versions.js
@@ -1,3 +1,3 @@
/*! For license information please see files_versions-files_versions.js.LICENSE.txt */
-!function(){var e,i={22420:function(e,i,o){"use strict";o(29088),o(47673);var l=o(94702),s=o.n(l),r=o(97834),a=o.n(r);!function(){if(OCA.Files.DetailTabView){var e=OCA.Files.DetailTabView.extend({id:"versionsTabView",className:"tab versionsTabView",_template:null,$versionsContainer:null,events:{"click .revertVersion":"_onClickRevertVersion"},initialize:function(){OCA.Files.DetailTabView.prototype.initialize.apply(this,arguments),this.collection=new OCA.Versions.VersionCollection,this.collection.on("request",this._onRequest,this),this.collection.on("sync",this._onEndRequest,this),this.collection.on("update",this._onUpdate,this),this.collection.on("error",this._onError,this),this.collection.on("add",this._onAddModel,this)},getLabel:function(){return t("files_versions","Versions")},getIcon:function(){return"icon-history"},nextPage:function(){this._loading||this.collection.getFileInfo()&&this.collection.getFileInfo().isDirectory()||this.collection.fetch()},_onClickRevertVersion:function(e){var n=this,i=$(e.target),o=this.collection.getFileInfo();i.is("li")||(i=i.closest("li")),e.preventDefault();var l=i.attr("data-revision"),s=this.collection.get(l);s.revert({success:function(){n.$versionsContainer.empty(),n.collection.setFileInfo(o),n.collection.reset([],{silent:!0}),n.collection.fetch(),n.$el.find(".versions").removeClass("hidden"),o.trigger("busy",o,!1),o.set({size:s.get("size"),mtime:1e3*s.get("timestamp"),etag:s.get("id")+s.get("timestamp")})},error:function(){o.trigger("busy",o,!1),n.$el.find(".versions").removeClass("hidden"),n._toggleLoading(!1),OC.Notification.show(t("files_version","Failed to revert {file} to revision {timestamp}.",{file:s.getFullPath(),timestamp:OC.Util.formatDate(1e3*s.get("timestamp"))}),{type:"error"})}}),this._toggleLoading(!0),o.trigger("busy",o,!0)},_toggleLoading:function(e){this._loading=e,this.$el.find(".loading").toggleClass("hidden",!e)},_onRequest:function(){this._toggleLoading(!0)},_onEndRequest:function(){this._toggleLoading(!1),this.$el.find(".empty").toggleClass("hidden",!!this.collection.length)},_onAddModel:function(e){var n=$(this.itemTemplate(this._formatItem(e)));this.$versionsContainer.append(n),n.find(".has-tooltip").tooltip()},template:function(e){return a()(e)},itemTemplate:function(e){return s()(e)},setFileInfo:function(e){e?(this.render(),this.collection.setFileInfo(e),this.collection.reset([],{silent:!0}),this.nextPage()):(this.render(),this.collection.reset())},_formatItem:function(e){var i=1e3*e.get("timestamp"),o=e.has("size")?e.get("size"):0,l=OC.MimeType.getIconUrl(e.get("mimetype")),s=new Image;return s.onload=function(){$("li[data-revision="+e.get("id")+"] .preview").attr("src",e.getPreviewUrl())},s.src=e.getPreviewUrl(),_.extend({versionId:e.get("id"),formattedTimestamp:OC.Util.formatDate(i),relativeTimestamp:OC.Util.relativeModifiedDate(i),millisecondsTimestamp:i,humanReadableSize:OC.Util.humanFileSize(o,!0),altSize:n("files","%n byte","%n bytes",o),hasDetails:e.has("size"),downloadUrl:e.getDownloadUrl(),downloadIconUrl:OC.imagePath("core","actions/download"),downloadName:e.get("name"),revertIconUrl:OC.imagePath("core","actions/history"),previewUrl:l,revertLabel:t("files_versions","Restore"),canRevert:0!=(this.collection.getFileInfo().get("permissions")&OC.PERMISSION_UPDATE)},e.attributes)},render:function(){this.$el.html(this.template({emptyResultLabel:t("files_versions","No other versions available")})),this.$el.find(".has-tooltip").tooltip(),this.$versionsContainer=this.$el.find("ul.versions"),this.delegateEvents()},canDisplay:function(e){return!!e&&!e.isDirectory()}});OCA.Versions=OCA.Versions||{},OCA.Versions.VersionsTabView=e}}(),o(29020);var c=o(93379),u=o.n(c),d=o(7795),p=o.n(d),m=o(90569),v=o.n(m),h=o(3565),f=o.n(h),A=o(19216),g=o.n(A),C=o(44589),b=o.n(C),w=o(42028),y={};y.styleTagTransform=b(),y.setAttributes=f(),y.insert=v().bind(null,"head"),y.domAPI=p(),y.insertStyleElement=g(),u()(w.Z,y),w.Z&&w.Z.locals&&w.Z.locals,window.OCA.Versions=OCA.Versions},29020:function(){OCA.Versions=OCA.Versions||{},OCA.Versions.Util={attach:function(e){"trashbin"!==e.id&&"files.public"!==e.id&&e.registerTabView(new OCA.Versions.VersionsTabView("versionsTabView",{order:-10}))}},OC.Plugins.register("OCA.Files.FileList",OCA.Versions.Util)},47673:function(){var e;e=OC.Backbone.Collection.extend({model:OCA.Versions.VersionModel,sync:OC.Backbone.davSync,_fileInfo:null,_currentUser:null,_client:null,setFileInfo:function(e){this._fileInfo=e},getFileInfo:function(){return this._fileInfo},setCurrentUser:function(e){this._currentUser=e},getCurrentUser:function(){return this._currentUser||OC.getCurrentUser().uid},setClient:function(e){this._client=e},getClient:function(){return this._client||new OC.Files.Client({host:OC.getHost(),root:OC.linkToRemoteBase("dav")+"/versions/"+this.getCurrentUser(),useHTTPS:"https"===OC.getProtocol()})},url:function(){return OC.linkToRemoteBase("dav")+"/versions/"+this.getCurrentUser()+"/versions/"+this._fileInfo.get("id")},parse:function(e){var n=this._fileInfo.getFullPath(),t=this._fileInfo.get("id"),i=this._fileInfo.get("name"),o=this.getCurrentUser(),l=this.getClient();return _.map(e,(function(e){return e.fullPath=n,e.fileId=t,e.name=i,e.timestamp=parseInt(moment(new Date(e.timestamp)).format("X"),10),e.id=OC.basename(e.href),e.size=parseInt(e.size,10),e.user=o,e.client=l,e}))}}),OCA.Versions=OCA.Versions||{},OCA.Versions.VersionCollection=e},29088:function(){var e;e=OC.Backbone.Model.extend({sync:OC.Backbone.davSync,davProperties:{size:"{DAV:}getcontentlength",mimetype:"{DAV:}getcontenttype",timestamp:"{DAV:}getlastmodified"},revert:function(e){e=e?_.clone(e):{};var n=this;return this.get("client").move("/versions/"+this.get("fileId")+"/"+this.get("id"),"/restore/target",!0).done((function(){e.success&&e.success.call(e.context,n,{},e),n.trigger("revert",n,e)})).fail((function(){e.error&&e.error.call(e.context,n,{},e),n.trigger("error",n,{},e)}))},getFullPath:function(){return this.get("fullPath")},getPreviewUrl:function(){var e=OC.generateUrl("/apps/files_versions/preview"),n={file:this.get("fullPath"),version:this.get("id")};return e+"?"+OC.buildQueryString(n)},getDownloadUrl:function(){return OC.linkToRemoteBase("dav")+"/versions/"+this.get("user")+"/versions/"+this.get("fileId")+"/"+this.get("id")}}),OCA.Versions=OCA.Versions||{},OCA.Versions.VersionModel=e},42028:function(e,n,t){"use strict";var i=t(87537),o=t.n(i),l=t(23645),s=t.n(l)()(o());s.push([e.id,".versionsTabView .clear-float {\n\tclear: both;\n}\n\n.versionsTabView li {\n\twidth: 100%;\n\tcursor: default;\n\theight: 56px;\n\tfloat: left;\n\tborder-bottom: 1px solid rgba(100,100,100,.1);\n}\n.versionsTabView li:last-child {\n\tborder-bottom: none;\n}\n\n.versionsTabView a,\n.versionsTabView div > span {\n\tvertical-align: middle;\n\topacity: .5;\n}\n\n.versionsTabView li a{\n\tpadding: 15px 10px 11px;\n}\n\n.versionsTabView a:hover,\n.versionsTabView a:focus {\n\topacity: 1;\n}\n\n.versionsTabView .preview-container {\n\tdisplay: inline-block;\n vertical-align: top;\n}\n\n.versionsTabView .version-container img, .revertVersion img {\n\tfilter: var(--background-invert-if-dark);\n}\n\n.versionsTabView img {\n\tcursor: pointer;\n\tpadding-right: 4px;\n}\n\n.versionsTabView img.preview {\n\tcursor: default;\n}\n\n.versionsTabView .version-container {\n\tdisplay: inline-block;\n}\n\n.versionsTabView .versiondate {\n\tmin-width: 100px;\n\tvertical-align: super;\n}\n\n.versionsTabView .version-details {\n\ttext-align: left;\n}\n\n.versionsTabView .version-details > span {\n\tpadding: 0 10px;\n}\n\n.versionsTabView .revertVersion {\n\tcursor: pointer;\n\tfloat: right;\n\tmargin-right: -10px;\n}\n","",{version:3,sources:["webpack://./apps/files_versions/src/css/versions.css"],names:[],mappings:"AAAA;CACC,WAAW;AACZ;;AAEA;CACC,WAAW;CACX,eAAe;CACf,YAAY;CACZ,WAAW;CACX,6CAA6C;AAC9C;AACA;CACC,mBAAmB;AACpB;;AAEA;;CAEC,sBAAsB;CACtB,WAAW;AACZ;;AAEA;CACC,uBAAuB;AACxB;;AAEA;;CAEC,UAAU;AACX;;AAEA;CACC,qBAAqB;EACpB,mBAAmB;AACrB;;AAEA;CACC,wCAAwC;AACzC;;AAEA;CACC,eAAe;CACf,kBAAkB;AACnB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;CAChB,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;AACjB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,eAAe;CACf,YAAY;CACZ,mBAAmB;AACpB",sourcesContent:[".versionsTabView .clear-float {\n\tclear: both;\n}\n\n.versionsTabView li {\n\twidth: 100%;\n\tcursor: default;\n\theight: 56px;\n\tfloat: left;\n\tborder-bottom: 1px solid rgba(100,100,100,.1);\n}\n.versionsTabView li:last-child {\n\tborder-bottom: none;\n}\n\n.versionsTabView a,\n.versionsTabView div > span {\n\tvertical-align: middle;\n\topacity: .5;\n}\n\n.versionsTabView li a{\n\tpadding: 15px 10px 11px;\n}\n\n.versionsTabView a:hover,\n.versionsTabView a:focus {\n\topacity: 1;\n}\n\n.versionsTabView .preview-container {\n\tdisplay: inline-block;\n vertical-align: top;\n}\n\n.versionsTabView .version-container img, .revertVersion img {\n\tfilter: var(--background-invert-if-dark);\n}\n\n.versionsTabView img {\n\tcursor: pointer;\n\tpadding-right: 4px;\n}\n\n.versionsTabView img.preview {\n\tcursor: default;\n}\n\n.versionsTabView .version-container {\n\tdisplay: inline-block;\n}\n\n.versionsTabView .versiondate {\n\tmin-width: 100px;\n\tvertical-align: super;\n}\n\n.versionsTabView .version-details {\n\ttext-align: left;\n}\n\n.versionsTabView .version-details > span {\n\tpadding: 0 10px;\n}\n\n.versionsTabView .revertVersion {\n\tcursor: pointer;\n\tfloat: right;\n\tmargin-right: -10px;\n}\n"],sourceRoot:""}]),n.Z=s},94702:function(e,n,t){var i=t(40202);e.exports=(i.default||i).template({1:function(e,n,t,i,o){var l,s=null!=n?n:e.nullContext||{},r=e.hooks.helperMissing,a="function",c=e.escapeExpression,u=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'\t\t\t\t<div class="version-details">\n\t\t\t\t\t<span class="size has-tooltip" title="'+c(typeof(l=null!=(l=u(t,"altSize")||(null!=n?u(n,"altSize"):n))?l:r)===a?l.call(s,{name:"altSize",hash:{},data:o,loc:{start:{line:14,column:43},end:{line:14,column:54}}}):l)+'">'+c(typeof(l=null!=(l=u(t,"humanReadableSize")||(null!=n?u(n,"humanReadableSize"):n))?l:r)===a?l.call(s,{name:"humanReadableSize",hash:{},data:o,loc:{start:{line:14,column:56},end:{line:14,column:77}}}):l)+"</span>\n\t\t\t\t</div>\n"},3:function(e,n,t,i,o){var l,s=null!=n?n:e.nullContext||{},r=e.hooks.helperMissing,a="function",c=e.escapeExpression,u=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'\t\t\t<a href="#" class="revertVersion" title="'+c(typeof(l=null!=(l=u(t,"revertLabel")||(null!=n?u(n,"revertLabel"):n))?l:r)===a?l.call(s,{name:"revertLabel",hash:{},data:o,loc:{start:{line:19,column:44},end:{line:19,column:59}}}):l)+'"><img src="'+c(typeof(l=null!=(l=u(t,"revertIconUrl")||(null!=n?u(n,"revertIconUrl"):n))?l:r)===a?l.call(s,{name:"revertIconUrl",hash:{},data:o,loc:{start:{line:19,column:71},end:{line:19,column:88}}}):l)+'" /></a>\n'},compiler:[8,">= 4.3.0"],main:function(e,n,t,i,o){var l,s,r,a=null!=n?n:e.nullContext||{},c=e.hooks.helperMissing,u="function",d=e.escapeExpression,p=e.hooks.blockHelperMissing,m=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]},v='<li data-revision="'+d(typeof(s=null!=(s=m(t,"id")||(null!=n?m(n,"id"):n))?s:c)===u?s.call(a,{name:"id",hash:{},data:o,loc:{start:{line:1,column:19},end:{line:1,column:25}}}):s)+'">\n\t<div>\n\t\t<div class="preview-container">\n\t\t\t<img class="preview" src="'+d(typeof(s=null!=(s=m(t,"previewUrl")||(null!=n?m(n,"previewUrl"):n))?s:c)===u?s.call(a,{name:"previewUrl",hash:{},data:o,loc:{start:{line:4,column:29},end:{line:4,column:43}}}):s)+'" width="44" height="44"/>\n\t\t</div>\n\t\t<div class="version-container">\n\t\t\t<div>\n\t\t\t\t<a href="'+d(typeof(s=null!=(s=m(t,"downloadUrl")||(null!=n?m(n,"downloadUrl"):n))?s:c)===u?s.call(a,{name:"downloadUrl",hash:{},data:o,loc:{start:{line:8,column:13},end:{line:8,column:28}}}):s)+'" class="downloadVersion" download="'+d(typeof(s=null!=(s=m(t,"downloadName")||(null!=n?m(n,"downloadName"):n))?s:c)===u?s.call(a,{name:"downloadName",hash:{},data:o,loc:{start:{line:8,column:64},end:{line:8,column:80}}}):s)+'"><img src="'+d(typeof(s=null!=(s=m(t,"downloadIconUrl")||(null!=n?m(n,"downloadIconUrl"):n))?s:c)===u?s.call(a,{name:"downloadIconUrl",hash:{},data:o,loc:{start:{line:8,column:92},end:{line:8,column:111}}}):s)+'" />\n\t\t\t\t\t<span class="versiondate has-tooltip live-relative-timestamp" data-timestamp="'+d(typeof(s=null!=(s=m(t,"millisecondsTimestamp")||(null!=n?m(n,"millisecondsTimestamp"):n))?s:c)===u?s.call(a,{name:"millisecondsTimestamp",hash:{},data:o,loc:{start:{line:9,column:83},end:{line:9,column:108}}}):s)+'" title="'+d(typeof(s=null!=(s=m(t,"formattedTimestamp")||(null!=n?m(n,"formattedTimestamp"):n))?s:c)===u?s.call(a,{name:"formattedTimestamp",hash:{},data:o,loc:{start:{line:9,column:117},end:{line:9,column:139}}}):s)+'">'+d(typeof(s=null!=(s=m(t,"relativeTimestamp")||(null!=n?m(n,"relativeTimestamp"):n))?s:c)===u?s.call(a,{name:"relativeTimestamp",hash:{},data:o,loc:{start:{line:9,column:141},end:{line:9,column:162}}}):s)+"</span>\n\t\t\t\t</a>\n\t\t\t</div>\n";return s=null!=(s=m(t,"hasDetails")||(null!=n?m(n,"hasDetails"):n))?s:c,r={name:"hasDetails",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:12,column:3},end:{line:16,column:18}}},l=typeof s===u?s.call(a,r):s,m(t,"hasDetails")||(l=p.call(n,l,r)),null!=l&&(v+=l),v+="\t\t</div>\n",s=null!=(s=m(t,"canRevert")||(null!=n?m(n,"canRevert"):n))?s:c,r={name:"canRevert",hash:{},fn:e.program(3,o,0),inverse:e.noop,data:o,loc:{start:{line:18,column:2},end:{line:20,column:16}}},l=typeof s===u?s.call(a,r):s,m(t,"canRevert")||(l=p.call(n,l,r)),null!=l&&(v+=l),v+"\t</div>\n</li>\n"},useData:!0})},97834:function(e,n,t){var i=t(40202);e.exports=(i.default||i).template({compiler:[8,">= 4.3.0"],main:function(e,n,t,i,o){var l,s=null!=n?n:e.nullContext||{},r=e.hooks.helperMissing,a="function",c=e.escapeExpression,u=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'<ul class="versions"></ul>\n<div class="clear-float"></div>\n<div class="empty hidden">\n\t<div class="emptycontent">\n\t\t<div class="icon-history"></div>\n\t\t<p>'+c(typeof(l=null!=(l=u(t,"emptyResultLabel")||(null!=n?u(n,"emptyResultLabel"):n))?l:r)===a?l.call(s,{name:"emptyResultLabel",hash:{},data:o,loc:{start:{line:6,column:5},end:{line:6,column:25}}}):l)+'</p>\n\t</div>\n</div>\n<input type="button" class="showMoreVersions hidden" value="'+c(typeof(l=null!=(l=u(t,"moreVersionsLabel")||(null!=n?u(n,"moreVersionsLabel"):n))?l:r)===a?l.call(s,{name:"moreVersionsLabel",hash:{},data:o,loc:{start:{line:9,column:60},end:{line:9,column:81}}}):l)+'" name="show-more-versions" id="show-more-versions" />\n<div class="loading hidden" style="height: 50px"></div>\n'},useData:!0})}},o={};function l(e){var n=o[e];if(void 0!==n)return n.exports;var t=o[e]={id:e,loaded:!1,exports:{}};return i[e].call(t.exports,t,t.exports,l),t.loaded=!0,t.exports}l.m=i,l.amdD=function(){throw new Error("define cannot be used indirect")},l.amdO={},e=[],l.O=function(n,t,i,o){if(!t){var s=1/0;for(u=0;u<e.length;u++){t=e[u][0],i=e[u][1],o=e[u][2];for(var r=!0,a=0;a<t.length;a++)(!1&o||s>=o)&&Object.keys(l.O).every((function(e){return l.O[e](t[a])}))?t.splice(a--,1):(r=!1,o<s&&(s=o));if(r){e.splice(u--,1);var c=i();void 0!==c&&(n=c)}}return n}o=o||0;for(var u=e.length;u>0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[t,i,o]},l.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(n,{a:n}),n},l.d=function(e,n){for(var t in n)l.o(n,t)&&!l.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},l.j=1358,function(){l.b=document.baseURI||self.location.href;var e={1358:0};l.O.j=function(n){return 0===e[n]};var n=function(n,t){var i,o,s=t[0],r=t[1],a=t[2],c=0;if(s.some((function(n){return 0!==e[n]}))){for(i in r)l.o(r,i)&&(l.m[i]=r[i]);if(a)var u=a(l)}for(n&&n(t);c<s.length;c++)o=s[c],l.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return l.O(u)},t=self.webpackChunknextcloud=self.webpackChunknextcloud||[];t.forEach(n.bind(null,0)),t.push=n.bind(null,t.push.bind(t))}(),l.nc=void 0;var s=l.O(void 0,[7874],(function(){return l(22420)}));s=l.O(s)}();
-//# sourceMappingURL=files_versions-files_versions.js.map?v=07d99389476b56e30820 \ No newline at end of file
+!function(){var e,i={22420:function(e,i,o){"use strict";o(29088),o(47673);var l=o(94702),r=o.n(l),s=o(97834),a=o.n(s);!function(){if(OCA.Files.DetailTabView){var e=OCA.Files.DetailTabView.extend({id:"versionsTabView",className:"tab versionsTabView",_template:null,$versionsContainer:null,events:{"click .revertVersion":"_onClickRevertVersion"},initialize:function(){OCA.Files.DetailTabView.prototype.initialize.apply(this,arguments),this.collection=new OCA.Versions.VersionCollection,this.collection.on("request",this._onRequest,this),this.collection.on("sync",this._onEndRequest,this),this.collection.on("update",this._onUpdate,this),this.collection.on("error",this._onError,this),this.collection.on("add",this._onAddModel,this)},getLabel:function(){return t("files_versions","Versions")},getIcon:function(){return"icon-history"},nextPage:function(){this._loading||this.collection.getFileInfo()&&this.collection.getFileInfo().isDirectory()||this.collection.fetch()},_onClickRevertVersion:function(e){var n=this,i=$(e.target),o=this.collection.getFileInfo();i.is("li")||(i=i.closest("li")),e.preventDefault();var l=i.attr("data-revision"),r=this.collection.get(l);r.revert({success:function(){n.$versionsContainer.empty(),n.collection.setFileInfo(o),n.collection.reset([],{silent:!0}),n.collection.fetch(),n.$el.find(".versions").removeClass("hidden"),o.trigger("busy",o,!1),o.set({size:r.get("size"),mtime:1e3*r.get("timestamp"),etag:r.get("id")+r.get("timestamp")})},error:function(){o.trigger("busy",o,!1),n.$el.find(".versions").removeClass("hidden"),n._toggleLoading(!1),OC.Notification.show(t("files_version","Failed to revert {file} to revision {timestamp}.",{file:r.getFullPath(),timestamp:OC.Util.formatDate(1e3*r.get("timestamp"))}),{type:"error"})}}),this._toggleLoading(!0),o.trigger("busy",o,!0)},_toggleLoading:function(e){this._loading=e,this.$el.find(".loading").toggleClass("hidden",!e)},_onRequest:function(){this._toggleLoading(!0)},_onEndRequest:function(){this._toggleLoading(!1),this.$el.find(".empty").toggleClass("hidden",!!this.collection.length)},_onAddModel:function(e){var n=$(this.itemTemplate(this._formatItem(e)));this.$versionsContainer.append(n),n.find(".has-tooltip").tooltip()},template:function(e){return a()(e)},itemTemplate:function(e){return r()(e)},setFileInfo:function(e){e?(this.render(),this.collection.setFileInfo(e),this.collection.reset([],{silent:!0}),this.nextPage()):(this.render(),this.collection.reset())},_formatItem:function(e){var i=1e3*e.get("timestamp"),o=e.has("size")?e.get("size"):0,l=OC.MimeType.getIconUrl(e.get("mimetype")),r=new Image;return r.onload=function(){$("li[data-revision="+e.get("id")+"] .preview").attr("src",e.getPreviewUrl())},r.src=e.getPreviewUrl(),_.extend({versionId:e.get("id"),formattedTimestamp:OC.Util.formatDate(i),relativeTimestamp:OC.Util.relativeModifiedDate(i),millisecondsTimestamp:i,humanReadableSize:OC.Util.humanFileSize(o,!0),altSize:n("files","%n byte","%n bytes",o),hasDetails:e.has("size"),downloadUrl:e.getDownloadUrl(),downloadIconUrl:OC.imagePath("core","actions/download"),downloadName:e.get("name"),revertIconUrl:OC.imagePath("core","actions/history"),previewUrl:l,revertLabel:t("files_versions","Restore"),canRevert:0!=(this.collection.getFileInfo().get("permissions")&OC.PERMISSION_UPDATE)},e.attributes)},render:function(){this.$el.html(this.template({emptyResultLabel:t("files_versions","No other versions available")})),this.$el.find(".has-tooltip").tooltip(),this.$versionsContainer=this.$el.find("ul.versions"),this.delegateEvents()},canDisplay:function(e){return!!e&&!e.isDirectory()}});OCA.Versions=OCA.Versions||{},OCA.Versions.VersionsTabView=e}}(),o(29020);var c=o(93379),u=o.n(c),d=o(7795),p=o.n(d),m=o(90569),v=o.n(m),h=o(3565),f=o.n(h),A=o(19216),g=o.n(A),C=o(44589),b=o.n(C),w=o(42028),y={};y.styleTagTransform=b(),y.setAttributes=f(),y.insert=v().bind(null,"head"),y.domAPI=p(),y.insertStyleElement=g(),u()(w.Z,y),w.Z&&w.Z.locals&&w.Z.locals,window.OCA.Versions=OCA.Versions},29020:function(){OCA.Versions=OCA.Versions||{},OCA.Versions.Util={attach:function(e){"trashbin"!==e.id&&"files.public"!==e.id&&e.registerTabView(new OCA.Versions.VersionsTabView("versionsTabView",{order:-10}))}},OC.Plugins.register("OCA.Files.FileList",OCA.Versions.Util)},47673:function(){var e;e=OC.Backbone.Collection.extend({model:OCA.Versions.VersionModel,sync:OC.Backbone.davSync,_fileInfo:null,_currentUser:null,_client:null,setFileInfo:function(e){this._fileInfo=e},getFileInfo:function(){return this._fileInfo},setCurrentUser:function(e){this._currentUser=e},getCurrentUser:function(){return this._currentUser||OC.getCurrentUser().uid},setClient:function(e){this._client=e},getClient:function(){return this._client||new OC.Files.Client({host:OC.getHost(),root:OC.linkToRemoteBase("dav")+"/versions/"+this.getCurrentUser(),useHTTPS:"https"===OC.getProtocol()})},url:function(){return OC.linkToRemoteBase("dav")+"/versions/"+this.getCurrentUser()+"/versions/"+this._fileInfo.get("id")},parse:function(e){var n=this._fileInfo.getFullPath(),t=this._fileInfo.get("id"),i=this._fileInfo.get("name"),o=this.getCurrentUser(),l=this.getClient();return _.map(e,(function(e){return e.fullPath=n,e.fileId=t,e.name=i,e.timestamp=parseInt(moment(new Date(e.timestamp)).format("X"),10),e.id=OC.basename(e.href),e.size=parseInt(e.size,10),e.user=o,e.client=l,e}))}}),OCA.Versions=OCA.Versions||{},OCA.Versions.VersionCollection=e},29088:function(){var e;e=OC.Backbone.Model.extend({sync:OC.Backbone.davSync,davProperties:{size:"{DAV:}getcontentlength",mimetype:"{DAV:}getcontenttype",timestamp:"{DAV:}getlastmodified"},revert:function(e){e=e?_.clone(e):{};var n=this;return this.get("client").move("/versions/"+this.get("fileId")+"/"+this.get("id"),"/restore/target",!0).done((function(){e.success&&e.success.call(e.context,n,{},e),n.trigger("revert",n,e)})).fail((function(){e.error&&e.error.call(e.context,n,{},e),n.trigger("error",n,{},e)}))},getFullPath:function(){return this.get("fullPath")},getPreviewUrl:function(){var e=OC.generateUrl("/apps/files_versions/preview"),n={file:this.get("fullPath"),version:this.get("id")};return e+"?"+OC.buildQueryString(n)},getDownloadUrl:function(){return OC.linkToRemoteBase("dav")+"/versions/"+this.get("user")+"/versions/"+this.get("fileId")+"/"+this.get("id")}}),OCA.Versions=OCA.Versions||{},OCA.Versions.VersionModel=e},42028:function(e,n,t){"use strict";var i=t(87537),o=t.n(i),l=t(23645),r=t.n(l)()(o());r.push([e.id,".versionsTabView .clear-float {\n\tclear: both;\n}\n\n.versionsTabView li {\n\twidth: 100%;\n\tcursor: default;\n\theight: 56px;\n\tfloat: left;\n\tborder-bottom: 1px solid rgba(100,100,100,.1);\n}\n.versionsTabView li:last-child {\n\tborder-bottom: none;\n}\n\n.versionsTabView a,\n.versionsTabView div > span {\n\tvertical-align: middle;\n\topacity: .5;\n}\n\n.versionsTabView li a{\n\tpadding: 15px 10px 11px;\n}\n\n.versionsTabView a:hover,\n.versionsTabView a:focus {\n\topacity: 1;\n}\n\n.versionsTabView .preview-container {\n\tdisplay: inline-block;\n vertical-align: top;\n}\n\n.versionsTabView .version-container img, .revertVersion img {\n\tfilter: var(--background-invert-if-dark);\n}\n\n.versionsTabView img {\n\tcursor: pointer;\n\tpadding-right: 4px;\n}\n\n.versionsTabView img.preview {\n\tcursor: default;\n}\n\n.versionsTabView .version-container {\n\tdisplay: inline-block;\n}\n\n.versionsTabView .versiondate {\n\tmin-width: 100px;\n\tvertical-align: super;\n}\n\n.versionsTabView .version-details {\n\ttext-align: left;\n}\n\n.versionsTabView .version-details > span {\n\tpadding: 0 10px;\n}\n\n.versionsTabView .revertVersion {\n\tcursor: pointer;\n\tfloat: right;\n\tmargin-right: -10px;\n}\n\n.versionsTabView .emptycontent {\n\tmargin-top: 50px !important;\n}\n","",{version:3,sources:["webpack://./apps/files_versions/src/css/versions.css"],names:[],mappings:"AAAA;CACC,WAAW;AACZ;;AAEA;CACC,WAAW;CACX,eAAe;CACf,YAAY;CACZ,WAAW;CACX,6CAA6C;AAC9C;AACA;CACC,mBAAmB;AACpB;;AAEA;;CAEC,sBAAsB;CACtB,WAAW;AACZ;;AAEA;CACC,uBAAuB;AACxB;;AAEA;;CAEC,UAAU;AACX;;AAEA;CACC,qBAAqB;EACpB,mBAAmB;AACrB;;AAEA;CACC,wCAAwC;AACzC;;AAEA;CACC,eAAe;CACf,kBAAkB;AACnB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;CAChB,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;AACjB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,eAAe;CACf,YAAY;CACZ,mBAAmB;AACpB;;AAEA;CACC,2BAA2B;AAC5B",sourcesContent:[".versionsTabView .clear-float {\n\tclear: both;\n}\n\n.versionsTabView li {\n\twidth: 100%;\n\tcursor: default;\n\theight: 56px;\n\tfloat: left;\n\tborder-bottom: 1px solid rgba(100,100,100,.1);\n}\n.versionsTabView li:last-child {\n\tborder-bottom: none;\n}\n\n.versionsTabView a,\n.versionsTabView div > span {\n\tvertical-align: middle;\n\topacity: .5;\n}\n\n.versionsTabView li a{\n\tpadding: 15px 10px 11px;\n}\n\n.versionsTabView a:hover,\n.versionsTabView a:focus {\n\topacity: 1;\n}\n\n.versionsTabView .preview-container {\n\tdisplay: inline-block;\n vertical-align: top;\n}\n\n.versionsTabView .version-container img, .revertVersion img {\n\tfilter: var(--background-invert-if-dark);\n}\n\n.versionsTabView img {\n\tcursor: pointer;\n\tpadding-right: 4px;\n}\n\n.versionsTabView img.preview {\n\tcursor: default;\n}\n\n.versionsTabView .version-container {\n\tdisplay: inline-block;\n}\n\n.versionsTabView .versiondate {\n\tmin-width: 100px;\n\tvertical-align: super;\n}\n\n.versionsTabView .version-details {\n\ttext-align: left;\n}\n\n.versionsTabView .version-details > span {\n\tpadding: 0 10px;\n}\n\n.versionsTabView .revertVersion {\n\tcursor: pointer;\n\tfloat: right;\n\tmargin-right: -10px;\n}\n\n.versionsTabView .emptycontent {\n\tmargin-top: 50px !important;\n}\n"],sourceRoot:""}]),n.Z=r},94702:function(e,n,t){var i=t(40202);e.exports=(i.default||i).template({1:function(e,n,t,i,o){var l,r=null!=n?n:e.nullContext||{},s=e.hooks.helperMissing,a="function",c=e.escapeExpression,u=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'\t\t\t\t<div class="version-details">\n\t\t\t\t\t<span class="size has-tooltip" title="'+c(typeof(l=null!=(l=u(t,"altSize")||(null!=n?u(n,"altSize"):n))?l:s)===a?l.call(r,{name:"altSize",hash:{},data:o,loc:{start:{line:14,column:43},end:{line:14,column:54}}}):l)+'">'+c(typeof(l=null!=(l=u(t,"humanReadableSize")||(null!=n?u(n,"humanReadableSize"):n))?l:s)===a?l.call(r,{name:"humanReadableSize",hash:{},data:o,loc:{start:{line:14,column:56},end:{line:14,column:77}}}):l)+"</span>\n\t\t\t\t</div>\n"},3:function(e,n,t,i,o){var l,r=null!=n?n:e.nullContext||{},s=e.hooks.helperMissing,a="function",c=e.escapeExpression,u=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'\t\t\t<a href="#" class="revertVersion" title="'+c(typeof(l=null!=(l=u(t,"revertLabel")||(null!=n?u(n,"revertLabel"):n))?l:s)===a?l.call(r,{name:"revertLabel",hash:{},data:o,loc:{start:{line:19,column:44},end:{line:19,column:59}}}):l)+'"><img src="'+c(typeof(l=null!=(l=u(t,"revertIconUrl")||(null!=n?u(n,"revertIconUrl"):n))?l:s)===a?l.call(r,{name:"revertIconUrl",hash:{},data:o,loc:{start:{line:19,column:71},end:{line:19,column:88}}}):l)+'" /></a>\n'},compiler:[8,">= 4.3.0"],main:function(e,n,t,i,o){var l,r,s,a=null!=n?n:e.nullContext||{},c=e.hooks.helperMissing,u="function",d=e.escapeExpression,p=e.hooks.blockHelperMissing,m=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]},v='<li data-revision="'+d(typeof(r=null!=(r=m(t,"id")||(null!=n?m(n,"id"):n))?r:c)===u?r.call(a,{name:"id",hash:{},data:o,loc:{start:{line:1,column:19},end:{line:1,column:25}}}):r)+'">\n\t<div>\n\t\t<div class="preview-container">\n\t\t\t<img class="preview" src="'+d(typeof(r=null!=(r=m(t,"previewUrl")||(null!=n?m(n,"previewUrl"):n))?r:c)===u?r.call(a,{name:"previewUrl",hash:{},data:o,loc:{start:{line:4,column:29},end:{line:4,column:43}}}):r)+'" width="44" height="44"/>\n\t\t</div>\n\t\t<div class="version-container">\n\t\t\t<div>\n\t\t\t\t<a href="'+d(typeof(r=null!=(r=m(t,"downloadUrl")||(null!=n?m(n,"downloadUrl"):n))?r:c)===u?r.call(a,{name:"downloadUrl",hash:{},data:o,loc:{start:{line:8,column:13},end:{line:8,column:28}}}):r)+'" class="downloadVersion" download="'+d(typeof(r=null!=(r=m(t,"downloadName")||(null!=n?m(n,"downloadName"):n))?r:c)===u?r.call(a,{name:"downloadName",hash:{},data:o,loc:{start:{line:8,column:64},end:{line:8,column:80}}}):r)+'"><img src="'+d(typeof(r=null!=(r=m(t,"downloadIconUrl")||(null!=n?m(n,"downloadIconUrl"):n))?r:c)===u?r.call(a,{name:"downloadIconUrl",hash:{},data:o,loc:{start:{line:8,column:92},end:{line:8,column:111}}}):r)+'" />\n\t\t\t\t\t<span class="versiondate has-tooltip live-relative-timestamp" data-timestamp="'+d(typeof(r=null!=(r=m(t,"millisecondsTimestamp")||(null!=n?m(n,"millisecondsTimestamp"):n))?r:c)===u?r.call(a,{name:"millisecondsTimestamp",hash:{},data:o,loc:{start:{line:9,column:83},end:{line:9,column:108}}}):r)+'" title="'+d(typeof(r=null!=(r=m(t,"formattedTimestamp")||(null!=n?m(n,"formattedTimestamp"):n))?r:c)===u?r.call(a,{name:"formattedTimestamp",hash:{},data:o,loc:{start:{line:9,column:117},end:{line:9,column:139}}}):r)+'">'+d(typeof(r=null!=(r=m(t,"relativeTimestamp")||(null!=n?m(n,"relativeTimestamp"):n))?r:c)===u?r.call(a,{name:"relativeTimestamp",hash:{},data:o,loc:{start:{line:9,column:141},end:{line:9,column:162}}}):r)+"</span>\n\t\t\t\t</a>\n\t\t\t</div>\n";return r=null!=(r=m(t,"hasDetails")||(null!=n?m(n,"hasDetails"):n))?r:c,s={name:"hasDetails",hash:{},fn:e.program(1,o,0),inverse:e.noop,data:o,loc:{start:{line:12,column:3},end:{line:16,column:18}}},l=typeof r===u?r.call(a,s):r,m(t,"hasDetails")||(l=p.call(n,l,s)),null!=l&&(v+=l),v+="\t\t</div>\n",r=null!=(r=m(t,"canRevert")||(null!=n?m(n,"canRevert"):n))?r:c,s={name:"canRevert",hash:{},fn:e.program(3,o,0),inverse:e.noop,data:o,loc:{start:{line:18,column:2},end:{line:20,column:16}}},l=typeof r===u?r.call(a,s):r,m(t,"canRevert")||(l=p.call(n,l,s)),null!=l&&(v+=l),v+"\t</div>\n</li>\n"},useData:!0})},97834:function(e,n,t){var i=t(40202);e.exports=(i.default||i).template({compiler:[8,">= 4.3.0"],main:function(e,n,t,i,o){var l,r=null!=n?n:e.nullContext||{},s=e.hooks.helperMissing,a="function",c=e.escapeExpression,u=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'<ul class="versions"></ul>\n<div class="clear-float"></div>\n<div class="empty hidden">\n\t<div class="emptycontent">\n\t\t<div class="icon-history"></div>\n\t\t<p>'+c(typeof(l=null!=(l=u(t,"emptyResultLabel")||(null!=n?u(n,"emptyResultLabel"):n))?l:s)===a?l.call(r,{name:"emptyResultLabel",hash:{},data:o,loc:{start:{line:6,column:5},end:{line:6,column:25}}}):l)+'</p>\n\t</div>\n</div>\n<input type="button" class="showMoreVersions hidden" value="'+c(typeof(l=null!=(l=u(t,"moreVersionsLabel")||(null!=n?u(n,"moreVersionsLabel"):n))?l:s)===a?l.call(r,{name:"moreVersionsLabel",hash:{},data:o,loc:{start:{line:9,column:60},end:{line:9,column:81}}}):l)+'" name="show-more-versions" id="show-more-versions" />\n<div class="loading hidden" style="height: 50px"></div>\n'},useData:!0})}},o={};function l(e){var n=o[e];if(void 0!==n)return n.exports;var t=o[e]={id:e,loaded:!1,exports:{}};return i[e].call(t.exports,t,t.exports,l),t.loaded=!0,t.exports}l.m=i,l.amdD=function(){throw new Error("define cannot be used indirect")},l.amdO={},e=[],l.O=function(n,t,i,o){if(!t){var r=1/0;for(u=0;u<e.length;u++){t=e[u][0],i=e[u][1],o=e[u][2];for(var s=!0,a=0;a<t.length;a++)(!1&o||r>=o)&&Object.keys(l.O).every((function(e){return l.O[e](t[a])}))?t.splice(a--,1):(s=!1,o<r&&(r=o));if(s){e.splice(u--,1);var c=i();void 0!==c&&(n=c)}}return n}o=o||0;for(var u=e.length;u>0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[t,i,o]},l.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(n,{a:n}),n},l.d=function(e,n){for(var t in n)l.o(n,t)&&!l.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},l.j=1358,function(){l.b=document.baseURI||self.location.href;var e={1358:0};l.O.j=function(n){return 0===e[n]};var n=function(n,t){var i,o,r=t[0],s=t[1],a=t[2],c=0;if(r.some((function(n){return 0!==e[n]}))){for(i in s)l.o(s,i)&&(l.m[i]=s[i]);if(a)var u=a(l)}for(n&&n(t);c<r.length;c++)o=r[c],l.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return l.O(u)},t=self.webpackChunknextcloud=self.webpackChunknextcloud||[];t.forEach(n.bind(null,0)),t.push=n.bind(null,t.push.bind(t))}(),l.nc=void 0;var r=l.O(void 0,[7874],(function(){return l(22420)}));r=l.O(r)}();
+//# sourceMappingURL=files_versions-files_versions.js.map?v=984b1da8ab17d399e190 \ No newline at end of file
diff --git a/dist/files_versions-files_versions.js.map b/dist/files_versions-files_versions.js.map
index a321ab13765..f6f42513cd4 100644
--- a/dist/files_versions-files_versions.js.map
+++ b/dist/files_versions-files_versions.js.map
@@ -1 +1 @@
-{"version":3,"file":"files_versions-files_versions.js?v=07d99389476b56e30820","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/files_versions/src/versionstabview.js","webpack://nextcloud/./apps/files_versions/src/css/versions.css?1aef","webpack:///nextcloud/apps/files_versions/src/files_versions.js","webpack:///nextcloud/apps/files_versions/src/filesplugin.js","webpack:///nextcloud/apps/files_versions/src/versioncollection.js","webpack:///nextcloud/apps/files_versions/src/versionmodel.js","webpack:///nextcloud/apps/files_versions/src/css/versions.css","webpack:///nextcloud/apps/files_versions/src/templates/item.handlebars","webpack:///nextcloud/apps/files_versions/src/templates/template.handlebars","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2015\n *\n * @author Jan-Christoph Borchardt <hey@jancborchardt.net>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author noveens <noveen.sachdeva@research.iiit.ac.in>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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\nimport ItemTemplate from './templates/item.handlebars'\nimport Template from './templates/template.handlebars';\n\n(function() {\n\tif (!OCA.Files.DetailTabView) {\n\t\t// Only register the versions tab within the files app\n\t\treturn\n\t}\n\t/**\n\t * @memberof OCA.Versions\n\t */\n\tconst VersionsTabView = OCA.Files.DetailTabView.extend(/** @lends OCA.Versions.VersionsTabView.prototype */{\n\t\tid: 'versionsTabView',\n\t\tclassName: 'tab versionsTabView',\n\n\t\t_template: null,\n\n\t\t$versionsContainer: null,\n\n\t\tevents: {\n\t\t\t'click .revertVersion': '_onClickRevertVersion',\n\t\t},\n\n\t\tinitialize() {\n\t\t\tOCA.Files.DetailTabView.prototype.initialize.apply(this, arguments)\n\t\t\tthis.collection = new OCA.Versions.VersionCollection()\n\t\t\tthis.collection.on('request', this._onRequest, this)\n\t\t\tthis.collection.on('sync', this._onEndRequest, this)\n\t\t\tthis.collection.on('update', this._onUpdate, this)\n\t\t\tthis.collection.on('error', this._onError, this)\n\t\t\tthis.collection.on('add', this._onAddModel, this)\n\t\t},\n\n\t\tgetLabel() {\n\t\t\treturn t('files_versions', 'Versions')\n\t\t},\n\n\t\tgetIcon() {\n\t\t\treturn 'icon-history'\n\t\t},\n\n\t\tnextPage() {\n\t\t\tif (this._loading) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.collection.getFileInfo() && this.collection.getFileInfo().isDirectory()) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.collection.fetch()\n\t\t},\n\n\t\t_onClickRevertVersion(ev) {\n\t\t\tconst self = this\n\t\t\tlet $target = $(ev.target)\n\t\t\tconst fileInfoModel = this.collection.getFileInfo()\n\t\t\tif (!$target.is('li')) {\n\t\t\t\t$target = $target.closest('li')\n\t\t\t}\n\n\t\t\tev.preventDefault()\n\t\t\tconst revision = $target.attr('data-revision')\n\n\t\t\tconst versionModel = this.collection.get(revision)\n\t\t\tversionModel.revert({\n\t\t\t\tsuccess() {\n\t\t\t\t\t// reset and re-fetch the updated collection\n\t\t\t\t\tself.$versionsContainer.empty()\n\t\t\t\t\tself.collection.setFileInfo(fileInfoModel)\n\t\t\t\t\tself.collection.reset([], { silent: true })\n\t\t\t\t\tself.collection.fetch()\n\n\t\t\t\t\tself.$el.find('.versions').removeClass('hidden')\n\n\t\t\t\t\t// update original model\n\t\t\t\t\tfileInfoModel.trigger('busy', fileInfoModel, false)\n\t\t\t\t\tfileInfoModel.set({\n\t\t\t\t\t\tsize: versionModel.get('size'),\n\t\t\t\t\t\tmtime: versionModel.get('timestamp') * 1000,\n\t\t\t\t\t\t// temp dummy, until we can do a PROPFIND\n\t\t\t\t\t\tetag: versionModel.get('id') + versionModel.get('timestamp'),\n\t\t\t\t\t})\n\t\t\t\t},\n\n\t\t\t\terror() {\n\t\t\t\t\tfileInfoModel.trigger('busy', fileInfoModel, false)\n\t\t\t\t\tself.$el.find('.versions').removeClass('hidden')\n\t\t\t\t\tself._toggleLoading(false)\n\t\t\t\t\tOC.Notification.show(t('files_version', 'Failed to revert {file} to revision {timestamp}.',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfile: versionModel.getFullPath(),\n\t\t\t\t\t\t\ttimestamp: OC.Util.formatDate(versionModel.get('timestamp') * 1000),\n\t\t\t\t\t\t}),\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: 'error',\n\t\t\t\t\t}\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t})\n\n\t\t\t// spinner\n\t\t\tthis._toggleLoading(true)\n\t\t\tfileInfoModel.trigger('busy', fileInfoModel, true)\n\t\t},\n\n\t\t_toggleLoading(state) {\n\t\t\tthis._loading = state\n\t\t\tthis.$el.find('.loading').toggleClass('hidden', !state)\n\t\t},\n\n\t\t_onRequest() {\n\t\t\tthis._toggleLoading(true)\n\t\t},\n\n\t\t_onEndRequest() {\n\t\t\tthis._toggleLoading(false)\n\t\t\tthis.$el.find('.empty').toggleClass('hidden', !!this.collection.length)\n\t\t},\n\n\t\t_onAddModel(model) {\n\t\t\tconst $el = $(this.itemTemplate(this._formatItem(model)))\n\t\t\tthis.$versionsContainer.append($el)\n\t\t\t$el.find('.has-tooltip').tooltip()\n\t\t},\n\n\t\ttemplate(data) {\n\t\t\treturn Template(data)\n\t\t},\n\n\t\titemTemplate(data) {\n\t\t\treturn ItemTemplate(data)\n\t\t},\n\n\t\tsetFileInfo(fileInfo) {\n\t\t\tif (fileInfo) {\n\t\t\t\tthis.render()\n\t\t\t\tthis.collection.setFileInfo(fileInfo)\n\t\t\t\tthis.collection.reset([], { silent: true })\n\t\t\t\tthis.nextPage()\n\t\t\t} else {\n\t\t\t\tthis.render()\n\t\t\t\tthis.collection.reset()\n\t\t\t}\n\t\t},\n\n\t\t_formatItem(version) {\n\t\t\tconst timestamp = version.get('timestamp') * 1000\n\t\t\tconst size = version.has('size') ? version.get('size') : 0\n\t\t\tconst preview = OC.MimeType.getIconUrl(version.get('mimetype'))\n\t\t\tconst img = new Image()\n\t\t\timg.onload = function() {\n\t\t\t\t$('li[data-revision=' + version.get('id') + '] .preview').attr('src', version.getPreviewUrl())\n\t\t\t}\n\t\t\timg.src = version.getPreviewUrl()\n\n\t\t\treturn _.extend({\n\t\t\t\tversionId: version.get('id'),\n\t\t\t\tformattedTimestamp: OC.Util.formatDate(timestamp),\n\t\t\t\trelativeTimestamp: OC.Util.relativeModifiedDate(timestamp),\n\t\t\t\tmillisecondsTimestamp: timestamp,\n\t\t\t\thumanReadableSize: OC.Util.humanFileSize(size, true),\n\t\t\t\taltSize: n('files', '%n byte', '%n bytes', size),\n\t\t\t\thasDetails: version.has('size'),\n\t\t\t\tdownloadUrl: version.getDownloadUrl(),\n\t\t\t\tdownloadIconUrl: OC.imagePath('core', 'actions/download'),\n\t\t\t\tdownloadName: version.get('name'),\n\t\t\t\trevertIconUrl: OC.imagePath('core', 'actions/history'),\n\t\t\t\tpreviewUrl: preview,\n\t\t\t\trevertLabel: t('files_versions', 'Restore'),\n\t\t\t\tcanRevert: (this.collection.getFileInfo().get('permissions') & OC.PERMISSION_UPDATE) !== 0,\n\t\t\t}, version.attributes)\n\t\t},\n\n\t\t/**\n\t\t * Renders this details view\n\t\t */\n\t\trender() {\n\t\t\tthis.$el.html(this.template({\n\t\t\t\temptyResultLabel: t('files_versions', 'No other versions available'),\n\t\t\t}))\n\t\t\tthis.$el.find('.has-tooltip').tooltip()\n\t\t\tthis.$versionsContainer = this.$el.find('ul.versions')\n\t\t\tthis.delegateEvents()\n\t\t},\n\n\t\t/**\n\t\t * Returns true for files, false for folders.\n\t\t *\n\t\t * @param {FileInfo} fileInfo fileInfo\n\t\t * @return {boolean} true for files, false for folders\n\t\t */\n\t\tcanDisplay(fileInfo) {\n\t\t\tif (!fileInfo) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn !fileInfo.isDirectory()\n\t\t},\n\t})\n\n\tOCA.Versions = OCA.Versions || {}\n\n\tOCA.Versions.VersionsTabView = VersionsTabView\n})()\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!./versions.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!./versions.css\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @license AGPL-3.0-or-later\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\nimport './versionmodel'\nimport './versioncollection'\nimport './versionstabview'\nimport './filesplugin'\nimport './css/versions.css'\n\nwindow.OCA.Versions = OCA.Versions\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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(function() {\n\tOCA.Versions = OCA.Versions || {}\n\n\t/**\n\t * @namespace\n\t */\n\tOCA.Versions.Util = {\n\t\t/**\n\t\t * Initialize the versions plugin.\n\t\t *\n\t\t * @param {OCA.Files.FileList} fileList file list to be extended\n\t\t */\n\t\tattach(fileList) {\n\t\t\tif (fileList.id === 'trashbin' || fileList.id === 'files.public') {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tfileList.registerTabView(new OCA.Versions.VersionsTabView('versionsTabView', { order: -10 }))\n\t\t},\n\t}\n})()\n\nOC.Plugins.register('OCA.Files.FileList', OCA.Versions.Util)\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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(function() {\n\t/**\n\t * @memberof OCA.Versions\n\t */\n\tconst VersionCollection = OC.Backbone.Collection.extend({\n\t\tmodel: OCA.Versions.VersionModel,\n\t\tsync: OC.Backbone.davSync,\n\n\t\t/**\n\t\t * @member OCA.Files.FileInfoModel\n\t\t */\n\t\t_fileInfo: null,\n\n\t\t_currentUser: null,\n\n\t\t_client: null,\n\n\t\tsetFileInfo(fileInfo) {\n\t\t\tthis._fileInfo = fileInfo\n\t\t},\n\n\t\tgetFileInfo() {\n\t\t\treturn this._fileInfo\n\t\t},\n\n\t\tsetCurrentUser(user) {\n\t\t\tthis._currentUser = user\n\t\t},\n\n\t\tgetCurrentUser() {\n\t\t\treturn this._currentUser || OC.getCurrentUser().uid\n\t\t},\n\n\t\tsetClient(client) {\n\t\t\tthis._client = client\n\t\t},\n\n\t\tgetClient() {\n\t\t\treturn this._client || new OC.Files.Client({\n\t\t\t\thost: OC.getHost(),\n\t\t\t\troot: OC.linkToRemoteBase('dav') + '/versions/' + this.getCurrentUser(),\n\t\t\t\tuseHTTPS: OC.getProtocol() === 'https',\n\t\t\t})\n\t\t},\n\n\t\turl() {\n\t\t\treturn OC.linkToRemoteBase('dav') + '/versions/' + this.getCurrentUser() + '/versions/' + this._fileInfo.get('id')\n\t\t},\n\n\t\tparse(result) {\n\t\t\tconst fullPath = this._fileInfo.getFullPath()\n\t\t\tconst fileId = this._fileInfo.get('id')\n\t\t\tconst name = this._fileInfo.get('name')\n\t\t\tconst user = this.getCurrentUser()\n\t\t\tconst client = this.getClient()\n\t\t\treturn _.map(result, function(version) {\n\t\t\t\tversion.fullPath = fullPath\n\t\t\t\tversion.fileId = fileId\n\t\t\t\tversion.name = name\n\t\t\t\tversion.timestamp = parseInt(moment(new Date(version.timestamp)).format('X'), 10)\n\t\t\t\tversion.id = OC.basename(version.href)\n\t\t\t\tversion.size = parseInt(version.size, 10)\n\t\t\t\tversion.user = user\n\t\t\t\tversion.client = client\n\t\t\t\treturn version\n\t\t\t})\n\t\t},\n\t})\n\n\tOCA.Versions = OCA.Versions || {}\n\n\tOCA.Versions.VersionCollection = VersionCollection\n})()\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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(function() {\n\t/**\n\t * @memberof OCA.Versions\n\t */\n\tconst VersionModel = OC.Backbone.Model.extend({\n\t\tsync: OC.Backbone.davSync,\n\n\t\tdavProperties: {\n\t\t\tsize: '{DAV:}getcontentlength',\n\t\t\tmimetype: '{DAV:}getcontenttype',\n\t\t\ttimestamp: '{DAV:}getlastmodified',\n\t\t},\n\n\t\t/**\n\t\t * Restores the original file to this revision\n\t\t *\n\t\t * @param {object} [options] options\n\t\t * @return {Promise}\n\t\t */\n\t\trevert(options) {\n\t\t\toptions = options ? _.clone(options) : {}\n\t\t\tconst model = this\n\n\t\t\tconst client = this.get('client')\n\n\t\t\treturn client.move('/versions/' + this.get('fileId') + '/' + this.get('id'), '/restore/target', true)\n\t\t\t\t.done(function() {\n\t\t\t\t\tif (options.success) {\n\t\t\t\t\t\toptions.success.call(options.context, model, {}, options)\n\t\t\t\t\t}\n\t\t\t\t\tmodel.trigger('revert', model, options)\n\t\t\t\t})\n\t\t\t\t.fail(function() {\n\t\t\t\t\tif (options.error) {\n\t\t\t\t\t\toptions.error.call(options.context, model, {}, options)\n\t\t\t\t\t}\n\t\t\t\t\tmodel.trigger('error', model, {}, options)\n\t\t\t\t})\n\t\t},\n\n\t\tgetFullPath() {\n\t\t\treturn this.get('fullPath')\n\t\t},\n\n\t\tgetPreviewUrl() {\n\t\t\tconst url = OC.generateUrl('/apps/files_versions/preview')\n\t\t\tconst params = {\n\t\t\t\tfile: this.get('fullPath'),\n\t\t\t\tversion: this.get('id'),\n\t\t\t}\n\t\t\treturn url + '?' + OC.buildQueryString(params)\n\t\t},\n\n\t\tgetDownloadUrl() {\n\t\t\treturn OC.linkToRemoteBase('dav') + '/versions/' + this.get('user') + '/versions/' + this.get('fileId') + '/' + this.get('id')\n\t\t},\n\t})\n\n\tOCA.Versions = OCA.Versions || {}\n\n\tOCA.Versions.VersionModel = VersionModel\n})()\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".versionsTabView .clear-float {\\n\\tclear: both;\\n}\\n\\n.versionsTabView li {\\n\\twidth: 100%;\\n\\tcursor: default;\\n\\theight: 56px;\\n\\tfloat: left;\\n\\tborder-bottom: 1px solid rgba(100,100,100,.1);\\n}\\n.versionsTabView li:last-child {\\n\\tborder-bottom: none;\\n}\\n\\n.versionsTabView a,\\n.versionsTabView div > span {\\n\\tvertical-align: middle;\\n\\topacity: .5;\\n}\\n\\n.versionsTabView li a{\\n\\tpadding: 15px 10px 11px;\\n}\\n\\n.versionsTabView a:hover,\\n.versionsTabView a:focus {\\n\\topacity: 1;\\n}\\n\\n.versionsTabView .preview-container {\\n\\tdisplay: inline-block;\\n vertical-align: top;\\n}\\n\\n.versionsTabView .version-container img, .revertVersion img {\\n\\tfilter: var(--background-invert-if-dark);\\n}\\n\\n.versionsTabView img {\\n\\tcursor: pointer;\\n\\tpadding-right: 4px;\\n}\\n\\n.versionsTabView img.preview {\\n\\tcursor: default;\\n}\\n\\n.versionsTabView .version-container {\\n\\tdisplay: inline-block;\\n}\\n\\n.versionsTabView .versiondate {\\n\\tmin-width: 100px;\\n\\tvertical-align: super;\\n}\\n\\n.versionsTabView .version-details {\\n\\ttext-align: left;\\n}\\n\\n.versionsTabView .version-details > span {\\n\\tpadding: 0 10px;\\n}\\n\\n.versionsTabView .revertVersion {\\n\\tcursor: pointer;\\n\\tfloat: right;\\n\\tmargin-right: -10px;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/css/versions.css\"],\"names\":[],\"mappings\":\"AAAA;CACC,WAAW;AACZ;;AAEA;CACC,WAAW;CACX,eAAe;CACf,YAAY;CACZ,WAAW;CACX,6CAA6C;AAC9C;AACA;CACC,mBAAmB;AACpB;;AAEA;;CAEC,sBAAsB;CACtB,WAAW;AACZ;;AAEA;CACC,uBAAuB;AACxB;;AAEA;;CAEC,UAAU;AACX;;AAEA;CACC,qBAAqB;EACpB,mBAAmB;AACrB;;AAEA;CACC,wCAAwC;AACzC;;AAEA;CACC,eAAe;CACf,kBAAkB;AACnB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;CAChB,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;AACjB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,eAAe;CACf,YAAY;CACZ,mBAAmB;AACpB\",\"sourcesContent\":[\".versionsTabView .clear-float {\\n\\tclear: both;\\n}\\n\\n.versionsTabView li {\\n\\twidth: 100%;\\n\\tcursor: default;\\n\\theight: 56px;\\n\\tfloat: left;\\n\\tborder-bottom: 1px solid rgba(100,100,100,.1);\\n}\\n.versionsTabView li:last-child {\\n\\tborder-bottom: none;\\n}\\n\\n.versionsTabView a,\\n.versionsTabView div > span {\\n\\tvertical-align: middle;\\n\\topacity: .5;\\n}\\n\\n.versionsTabView li a{\\n\\tpadding: 15px 10px 11px;\\n}\\n\\n.versionsTabView a:hover,\\n.versionsTabView a:focus {\\n\\topacity: 1;\\n}\\n\\n.versionsTabView .preview-container {\\n\\tdisplay: inline-block;\\n vertical-align: top;\\n}\\n\\n.versionsTabView .version-container img, .revertVersion img {\\n\\tfilter: var(--background-invert-if-dark);\\n}\\n\\n.versionsTabView img {\\n\\tcursor: pointer;\\n\\tpadding-right: 4px;\\n}\\n\\n.versionsTabView img.preview {\\n\\tcursor: default;\\n}\\n\\n.versionsTabView .version-container {\\n\\tdisplay: inline-block;\\n}\\n\\n.versionsTabView .versiondate {\\n\\tmin-width: 100px;\\n\\tvertical-align: super;\\n}\\n\\n.versionsTabView .version-details {\\n\\ttext-align: left;\\n}\\n\\n.versionsTabView .version-details > span {\\n\\tpadding: 0 10px;\\n}\\n\\n.versionsTabView .revertVersion {\\n\\tcursor: pointer;\\n\\tfloat: right;\\n\\tmargin-right: -10px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"\t\t\t\t<div class=\\\"version-details\\\">\\n\t\t\t\t\t<span class=\\\"size has-tooltip\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"altSize\") || (depth0 != null ? lookupProperty(depth0,\"altSize\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"altSize\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":14,\"column\":43},\"end\":{\"line\":14,\"column\":54}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"humanReadableSize\") || (depth0 != null ? lookupProperty(depth0,\"humanReadableSize\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"humanReadableSize\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":14,\"column\":56},\"end\":{\"line\":14,\"column\":77}}}) : helper)))\n + \"</span>\\n\t\t\t\t</div>\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"\t\t\t<a href=\\\"#\\\" class=\\\"revertVersion\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"revertLabel\") || (depth0 != null ? lookupProperty(depth0,\"revertLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"revertLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":19,\"column\":44},\"end\":{\"line\":19,\"column\":59}}}) : helper)))\n + \"\\\"><img src=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"revertIconUrl\") || (depth0 != null ? lookupProperty(depth0,\"revertIconUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"revertIconUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":19,\"column\":71},\"end\":{\"line\":19,\"column\":88}}}) : helper)))\n + \"\\\" /></a>\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, options, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, alias5=container.hooks.blockHelperMissing, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n }, buffer = \n \"<li data-revision=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":19},\"end\":{\"line\":1,\"column\":25}}}) : helper)))\n + \"\\\">\\n\t<div>\\n\t\t<div class=\\\"preview-container\\\">\\n\t\t\t<img class=\\\"preview\\\" src=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"previewUrl\") || (depth0 != null ? lookupProperty(depth0,\"previewUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"previewUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":4,\"column\":29},\"end\":{\"line\":4,\"column\":43}}}) : helper)))\n + \"\\\" width=\\\"44\\\" height=\\\"44\\\"/>\\n\t\t</div>\\n\t\t<div class=\\\"version-container\\\">\\n\t\t\t<div>\\n\t\t\t\t<a href=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"downloadUrl\") || (depth0 != null ? lookupProperty(depth0,\"downloadUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"downloadUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":13},\"end\":{\"line\":8,\"column\":28}}}) : helper)))\n + \"\\\" class=\\\"downloadVersion\\\" download=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"downloadName\") || (depth0 != null ? lookupProperty(depth0,\"downloadName\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"downloadName\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":64},\"end\":{\"line\":8,\"column\":80}}}) : helper)))\n + \"\\\"><img src=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"downloadIconUrl\") || (depth0 != null ? lookupProperty(depth0,\"downloadIconUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"downloadIconUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":92},\"end\":{\"line\":8,\"column\":111}}}) : helper)))\n + \"\\\" />\\n\t\t\t\t\t<span class=\\\"versiondate has-tooltip live-relative-timestamp\\\" data-timestamp=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"millisecondsTimestamp\") || (depth0 != null ? lookupProperty(depth0,\"millisecondsTimestamp\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"millisecondsTimestamp\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":83},\"end\":{\"line\":9,\"column\":108}}}) : helper)))\n + \"\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"formattedTimestamp\") || (depth0 != null ? lookupProperty(depth0,\"formattedTimestamp\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"formattedTimestamp\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":117},\"end\":{\"line\":9,\"column\":139}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"relativeTimestamp\") || (depth0 != null ? lookupProperty(depth0,\"relativeTimestamp\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"relativeTimestamp\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":141},\"end\":{\"line\":9,\"column\":162}}}) : helper)))\n + \"</span>\\n\t\t\t\t</a>\\n\t\t\t</div>\\n\";\n stack1 = ((helper = (helper = lookupProperty(helpers,\"hasDetails\") || (depth0 != null ? lookupProperty(depth0,\"hasDetails\") : depth0)) != null ? helper : alias2),(options={\"name\":\"hasDetails\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":12,\"column\":3},\"end\":{\"line\":16,\"column\":18}}}),(typeof helper === alias3 ? helper.call(alias1,options) : helper));\n if (!lookupProperty(helpers,\"hasDetails\")) { stack1 = alias5.call(depth0,stack1,options)}\n if (stack1 != null) { buffer += stack1; }\n buffer += \"\t\t</div>\\n\";\n stack1 = ((helper = (helper = lookupProperty(helpers,\"canRevert\") || (depth0 != null ? lookupProperty(depth0,\"canRevert\") : depth0)) != null ? helper : alias2),(options={\"name\":\"canRevert\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":18,\"column\":2},\"end\":{\"line\":20,\"column\":16}}}),(typeof helper === alias3 ? helper.call(alias1,options) : helper));\n if (!lookupProperty(helpers,\"canRevert\")) { stack1 = alias5.call(depth0,stack1,options)}\n if (stack1 != null) { buffer += stack1; }\n return buffer + \"\t</div>\\n</li>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<ul class=\\\"versions\\\"></ul>\\n<div class=\\\"clear-float\\\"></div>\\n<div class=\\\"empty hidden\\\">\\n\t<div class=\\\"emptycontent\\\">\\n\t\t<div class=\\\"icon-history\\\"></div>\\n\t\t<p>\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"emptyResultLabel\") || (depth0 != null ? lookupProperty(depth0,\"emptyResultLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"emptyResultLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":6,\"column\":5},\"end\":{\"line\":6,\"column\":25}}}) : helper)))\n + \"</p>\\n\t</div>\\n</div>\\n<input type=\\\"button\\\" class=\\\"showMoreVersions hidden\\\" value=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"moreVersionsLabel\") || (depth0 != null ? lookupProperty(depth0,\"moreVersionsLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"moreVersionsLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":60},\"end\":{\"line\":9,\"column\":81}}}) : helper)))\n + \"\\\" name=\\\"show-more-versions\\\" id=\\\"show-more-versions\\\" />\\n<div class=\\\"loading hidden\\\" style=\\\"height: 50px\\\"></div>\\n\";\n},\"useData\":true});","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1358;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1358: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(22420); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OCA","Files","DetailTabView","VersionsTabView","extend","id","className","_template","$versionsContainer","events","initialize","prototype","apply","this","arguments","collection","Versions","VersionCollection","on","_onRequest","_onEndRequest","_onUpdate","_onError","_onAddModel","getLabel","t","getIcon","nextPage","_loading","getFileInfo","isDirectory","fetch","_onClickRevertVersion","ev","self","$target","$","target","fileInfoModel","is","closest","preventDefault","revision","attr","versionModel","get","revert","success","empty","setFileInfo","reset","silent","$el","find","removeClass","trigger","set","size","mtime","etag","error","_toggleLoading","OC","Notification","show","file","getFullPath","timestamp","Util","formatDate","type","state","toggleClass","length","model","itemTemplate","_formatItem","append","tooltip","template","data","Template","ItemTemplate","fileInfo","render","version","has","preview","MimeType","getIconUrl","img","Image","onload","getPreviewUrl","src","_","versionId","formattedTimestamp","relativeTimestamp","relativeModifiedDate","millisecondsTimestamp","humanReadableSize","humanFileSize","altSize","n","hasDetails","downloadUrl","getDownloadUrl","downloadIconUrl","imagePath","downloadName","revertIconUrl","previewUrl","revertLabel","canRevert","PERMISSION_UPDATE","attributes","html","emptyResultLabel","delegateEvents","canDisplay","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","window","attach","fileList","registerTabView","order","Plugins","register","Backbone","Collection","VersionModel","sync","davSync","_fileInfo","_currentUser","_client","setCurrentUser","user","getCurrentUser","uid","setClient","client","getClient","Client","host","getHost","root","linkToRemoteBase","useHTTPS","getProtocol","url","parse","result","fullPath","fileId","name","map","parseInt","moment","Date","format","basename","href","Model","davProperties","mimetype","clone","move","done","call","context","fail","generateUrl","params","buildQueryString","___CSS_LOADER_EXPORT___","push","module","Handlebars","exports","container","depth0","helpers","partials","helper","alias1","nullContext","alias2","hooks","helperMissing","alias3","alias4","escapeExpression","lookupProperty","parent","propertyName","Object","hasOwnProperty","stack1","alias5","blockHelperMissing","buffer","program","noop","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","loaded","__webpack_modules__","m","amdD","Error","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","key","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","e","obj","prop","Symbol","toStringTag","value","nmd","paths","children","b","document","baseURI","location","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"files_versions-files_versions.js?v=984b1da8ab17d399e190","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/apps/files_versions/src/versionstabview.js","webpack://nextcloud/./apps/files_versions/src/css/versions.css?1aef","webpack:///nextcloud/apps/files_versions/src/files_versions.js","webpack:///nextcloud/apps/files_versions/src/filesplugin.js","webpack:///nextcloud/apps/files_versions/src/versioncollection.js","webpack:///nextcloud/apps/files_versions/src/versionmodel.js","webpack:///nextcloud/apps/files_versions/src/css/versions.css","webpack:///nextcloud/apps/files_versions/src/templates/item.handlebars","webpack:///nextcloud/apps/files_versions/src/templates/template.handlebars","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/amd define","webpack:///nextcloud/webpack/runtime/amd options","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * Copyright (c) 2015\n *\n * @author Jan-Christoph Borchardt <hey@jancborchardt.net>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Julius Härtl <jus@bitgrid.net>\n * @author Michael Jobst <mjobst+github@tecratech.de>\n * @author noveens <noveen.sachdeva@research.iiit.ac.in>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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\nimport ItemTemplate from './templates/item.handlebars'\nimport Template from './templates/template.handlebars';\n\n(function() {\n\tif (!OCA.Files.DetailTabView) {\n\t\t// Only register the versions tab within the files app\n\t\treturn\n\t}\n\t/**\n\t * @memberof OCA.Versions\n\t */\n\tconst VersionsTabView = OCA.Files.DetailTabView.extend(/** @lends OCA.Versions.VersionsTabView.prototype */{\n\t\tid: 'versionsTabView',\n\t\tclassName: 'tab versionsTabView',\n\n\t\t_template: null,\n\n\t\t$versionsContainer: null,\n\n\t\tevents: {\n\t\t\t'click .revertVersion': '_onClickRevertVersion',\n\t\t},\n\n\t\tinitialize() {\n\t\t\tOCA.Files.DetailTabView.prototype.initialize.apply(this, arguments)\n\t\t\tthis.collection = new OCA.Versions.VersionCollection()\n\t\t\tthis.collection.on('request', this._onRequest, this)\n\t\t\tthis.collection.on('sync', this._onEndRequest, this)\n\t\t\tthis.collection.on('update', this._onUpdate, this)\n\t\t\tthis.collection.on('error', this._onError, this)\n\t\t\tthis.collection.on('add', this._onAddModel, this)\n\t\t},\n\n\t\tgetLabel() {\n\t\t\treturn t('files_versions', 'Versions')\n\t\t},\n\n\t\tgetIcon() {\n\t\t\treturn 'icon-history'\n\t\t},\n\n\t\tnextPage() {\n\t\t\tif (this._loading) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (this.collection.getFileInfo() && this.collection.getFileInfo().isDirectory()) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.collection.fetch()\n\t\t},\n\n\t\t_onClickRevertVersion(ev) {\n\t\t\tconst self = this\n\t\t\tlet $target = $(ev.target)\n\t\t\tconst fileInfoModel = this.collection.getFileInfo()\n\t\t\tif (!$target.is('li')) {\n\t\t\t\t$target = $target.closest('li')\n\t\t\t}\n\n\t\t\tev.preventDefault()\n\t\t\tconst revision = $target.attr('data-revision')\n\n\t\t\tconst versionModel = this.collection.get(revision)\n\t\t\tversionModel.revert({\n\t\t\t\tsuccess() {\n\t\t\t\t\t// reset and re-fetch the updated collection\n\t\t\t\t\tself.$versionsContainer.empty()\n\t\t\t\t\tself.collection.setFileInfo(fileInfoModel)\n\t\t\t\t\tself.collection.reset([], { silent: true })\n\t\t\t\t\tself.collection.fetch()\n\n\t\t\t\t\tself.$el.find('.versions').removeClass('hidden')\n\n\t\t\t\t\t// update original model\n\t\t\t\t\tfileInfoModel.trigger('busy', fileInfoModel, false)\n\t\t\t\t\tfileInfoModel.set({\n\t\t\t\t\t\tsize: versionModel.get('size'),\n\t\t\t\t\t\tmtime: versionModel.get('timestamp') * 1000,\n\t\t\t\t\t\t// temp dummy, until we can do a PROPFIND\n\t\t\t\t\t\tetag: versionModel.get('id') + versionModel.get('timestamp'),\n\t\t\t\t\t})\n\t\t\t\t},\n\n\t\t\t\terror() {\n\t\t\t\t\tfileInfoModel.trigger('busy', fileInfoModel, false)\n\t\t\t\t\tself.$el.find('.versions').removeClass('hidden')\n\t\t\t\t\tself._toggleLoading(false)\n\t\t\t\t\tOC.Notification.show(t('files_version', 'Failed to revert {file} to revision {timestamp}.',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfile: versionModel.getFullPath(),\n\t\t\t\t\t\t\ttimestamp: OC.Util.formatDate(versionModel.get('timestamp') * 1000),\n\t\t\t\t\t\t}),\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: 'error',\n\t\t\t\t\t}\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t})\n\n\t\t\t// spinner\n\t\t\tthis._toggleLoading(true)\n\t\t\tfileInfoModel.trigger('busy', fileInfoModel, true)\n\t\t},\n\n\t\t_toggleLoading(state) {\n\t\t\tthis._loading = state\n\t\t\tthis.$el.find('.loading').toggleClass('hidden', !state)\n\t\t},\n\n\t\t_onRequest() {\n\t\t\tthis._toggleLoading(true)\n\t\t},\n\n\t\t_onEndRequest() {\n\t\t\tthis._toggleLoading(false)\n\t\t\tthis.$el.find('.empty').toggleClass('hidden', !!this.collection.length)\n\t\t},\n\n\t\t_onAddModel(model) {\n\t\t\tconst $el = $(this.itemTemplate(this._formatItem(model)))\n\t\t\tthis.$versionsContainer.append($el)\n\t\t\t$el.find('.has-tooltip').tooltip()\n\t\t},\n\n\t\ttemplate(data) {\n\t\t\treturn Template(data)\n\t\t},\n\n\t\titemTemplate(data) {\n\t\t\treturn ItemTemplate(data)\n\t\t},\n\n\t\tsetFileInfo(fileInfo) {\n\t\t\tif (fileInfo) {\n\t\t\t\tthis.render()\n\t\t\t\tthis.collection.setFileInfo(fileInfo)\n\t\t\t\tthis.collection.reset([], { silent: true })\n\t\t\t\tthis.nextPage()\n\t\t\t} else {\n\t\t\t\tthis.render()\n\t\t\t\tthis.collection.reset()\n\t\t\t}\n\t\t},\n\n\t\t_formatItem(version) {\n\t\t\tconst timestamp = version.get('timestamp') * 1000\n\t\t\tconst size = version.has('size') ? version.get('size') : 0\n\t\t\tconst preview = OC.MimeType.getIconUrl(version.get('mimetype'))\n\t\t\tconst img = new Image()\n\t\t\timg.onload = function() {\n\t\t\t\t$('li[data-revision=' + version.get('id') + '] .preview').attr('src', version.getPreviewUrl())\n\t\t\t}\n\t\t\timg.src = version.getPreviewUrl()\n\n\t\t\treturn _.extend({\n\t\t\t\tversionId: version.get('id'),\n\t\t\t\tformattedTimestamp: OC.Util.formatDate(timestamp),\n\t\t\t\trelativeTimestamp: OC.Util.relativeModifiedDate(timestamp),\n\t\t\t\tmillisecondsTimestamp: timestamp,\n\t\t\t\thumanReadableSize: OC.Util.humanFileSize(size, true),\n\t\t\t\taltSize: n('files', '%n byte', '%n bytes', size),\n\t\t\t\thasDetails: version.has('size'),\n\t\t\t\tdownloadUrl: version.getDownloadUrl(),\n\t\t\t\tdownloadIconUrl: OC.imagePath('core', 'actions/download'),\n\t\t\t\tdownloadName: version.get('name'),\n\t\t\t\trevertIconUrl: OC.imagePath('core', 'actions/history'),\n\t\t\t\tpreviewUrl: preview,\n\t\t\t\trevertLabel: t('files_versions', 'Restore'),\n\t\t\t\tcanRevert: (this.collection.getFileInfo().get('permissions') & OC.PERMISSION_UPDATE) !== 0,\n\t\t\t}, version.attributes)\n\t\t},\n\n\t\t/**\n\t\t * Renders this details view\n\t\t */\n\t\trender() {\n\t\t\tthis.$el.html(this.template({\n\t\t\t\temptyResultLabel: t('files_versions', 'No other versions available'),\n\t\t\t}))\n\t\t\tthis.$el.find('.has-tooltip').tooltip()\n\t\t\tthis.$versionsContainer = this.$el.find('ul.versions')\n\t\t\tthis.delegateEvents()\n\t\t},\n\n\t\t/**\n\t\t * Returns true for files, false for folders.\n\t\t *\n\t\t * @param {FileInfo} fileInfo fileInfo\n\t\t * @return {boolean} true for files, false for folders\n\t\t */\n\t\tcanDisplay(fileInfo) {\n\t\t\tif (!fileInfo) {\n\t\t\t\treturn false\n\t\t\t}\n\t\t\treturn !fileInfo.isDirectory()\n\t\t},\n\t})\n\n\tOCA.Versions = OCA.Versions || {}\n\n\tOCA.Versions.VersionsTabView = VersionsTabView\n})()\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!./versions.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!./versions.css\";\n export default content && content.locals ? content.locals : undefined;\n","/**\n * @copyright Copyright (c) 2016 Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @author Roeland Jago Douma <roeland@famdouma.nl>\n *\n * @license AGPL-3.0-or-later\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\nimport './versionmodel'\nimport './versioncollection'\nimport './versionstabview'\nimport './filesplugin'\nimport './css/versions.css'\n\nwindow.OCA.Versions = OCA.Versions\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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(function() {\n\tOCA.Versions = OCA.Versions || {}\n\n\t/**\n\t * @namespace\n\t */\n\tOCA.Versions.Util = {\n\t\t/**\n\t\t * Initialize the versions plugin.\n\t\t *\n\t\t * @param {OCA.Files.FileList} fileList file list to be extended\n\t\t */\n\t\tattach(fileList) {\n\t\t\tif (fileList.id === 'trashbin' || fileList.id === 'files.public') {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tfileList.registerTabView(new OCA.Versions.VersionsTabView('versionsTabView', { order: -10 }))\n\t\t},\n\t}\n})()\n\nOC.Plugins.register('OCA.Files.FileList', OCA.Versions.Util)\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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(function() {\n\t/**\n\t * @memberof OCA.Versions\n\t */\n\tconst VersionCollection = OC.Backbone.Collection.extend({\n\t\tmodel: OCA.Versions.VersionModel,\n\t\tsync: OC.Backbone.davSync,\n\n\t\t/**\n\t\t * @member OCA.Files.FileInfoModel\n\t\t */\n\t\t_fileInfo: null,\n\n\t\t_currentUser: null,\n\n\t\t_client: null,\n\n\t\tsetFileInfo(fileInfo) {\n\t\t\tthis._fileInfo = fileInfo\n\t\t},\n\n\t\tgetFileInfo() {\n\t\t\treturn this._fileInfo\n\t\t},\n\n\t\tsetCurrentUser(user) {\n\t\t\tthis._currentUser = user\n\t\t},\n\n\t\tgetCurrentUser() {\n\t\t\treturn this._currentUser || OC.getCurrentUser().uid\n\t\t},\n\n\t\tsetClient(client) {\n\t\t\tthis._client = client\n\t\t},\n\n\t\tgetClient() {\n\t\t\treturn this._client || new OC.Files.Client({\n\t\t\t\thost: OC.getHost(),\n\t\t\t\troot: OC.linkToRemoteBase('dav') + '/versions/' + this.getCurrentUser(),\n\t\t\t\tuseHTTPS: OC.getProtocol() === 'https',\n\t\t\t})\n\t\t},\n\n\t\turl() {\n\t\t\treturn OC.linkToRemoteBase('dav') + '/versions/' + this.getCurrentUser() + '/versions/' + this._fileInfo.get('id')\n\t\t},\n\n\t\tparse(result) {\n\t\t\tconst fullPath = this._fileInfo.getFullPath()\n\t\t\tconst fileId = this._fileInfo.get('id')\n\t\t\tconst name = this._fileInfo.get('name')\n\t\t\tconst user = this.getCurrentUser()\n\t\t\tconst client = this.getClient()\n\t\t\treturn _.map(result, function(version) {\n\t\t\t\tversion.fullPath = fullPath\n\t\t\t\tversion.fileId = fileId\n\t\t\t\tversion.name = name\n\t\t\t\tversion.timestamp = parseInt(moment(new Date(version.timestamp)).format('X'), 10)\n\t\t\t\tversion.id = OC.basename(version.href)\n\t\t\t\tversion.size = parseInt(version.size, 10)\n\t\t\t\tversion.user = user\n\t\t\t\tversion.client = client\n\t\t\t\treturn version\n\t\t\t})\n\t\t},\n\t})\n\n\tOCA.Versions = OCA.Versions || {}\n\n\tOCA.Versions.VersionCollection = VersionCollection\n})()\n","/**\n * Copyright (c) 2015\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n * @author Robin Appelman <robin@icewind.nl>\n * @author Vincent Petry <vincent@nextcloud.com>\n *\n * @license AGPL-3.0-or-later\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(function() {\n\t/**\n\t * @memberof OCA.Versions\n\t */\n\tconst VersionModel = OC.Backbone.Model.extend({\n\t\tsync: OC.Backbone.davSync,\n\n\t\tdavProperties: {\n\t\t\tsize: '{DAV:}getcontentlength',\n\t\t\tmimetype: '{DAV:}getcontenttype',\n\t\t\ttimestamp: '{DAV:}getlastmodified',\n\t\t},\n\n\t\t/**\n\t\t * Restores the original file to this revision\n\t\t *\n\t\t * @param {object} [options] options\n\t\t * @return {Promise}\n\t\t */\n\t\trevert(options) {\n\t\t\toptions = options ? _.clone(options) : {}\n\t\t\tconst model = this\n\n\t\t\tconst client = this.get('client')\n\n\t\t\treturn client.move('/versions/' + this.get('fileId') + '/' + this.get('id'), '/restore/target', true)\n\t\t\t\t.done(function() {\n\t\t\t\t\tif (options.success) {\n\t\t\t\t\t\toptions.success.call(options.context, model, {}, options)\n\t\t\t\t\t}\n\t\t\t\t\tmodel.trigger('revert', model, options)\n\t\t\t\t})\n\t\t\t\t.fail(function() {\n\t\t\t\t\tif (options.error) {\n\t\t\t\t\t\toptions.error.call(options.context, model, {}, options)\n\t\t\t\t\t}\n\t\t\t\t\tmodel.trigger('error', model, {}, options)\n\t\t\t\t})\n\t\t},\n\n\t\tgetFullPath() {\n\t\t\treturn this.get('fullPath')\n\t\t},\n\n\t\tgetPreviewUrl() {\n\t\t\tconst url = OC.generateUrl('/apps/files_versions/preview')\n\t\t\tconst params = {\n\t\t\t\tfile: this.get('fullPath'),\n\t\t\t\tversion: this.get('id'),\n\t\t\t}\n\t\t\treturn url + '?' + OC.buildQueryString(params)\n\t\t},\n\n\t\tgetDownloadUrl() {\n\t\t\treturn OC.linkToRemoteBase('dav') + '/versions/' + this.get('user') + '/versions/' + this.get('fileId') + '/' + this.get('id')\n\t\t},\n\t})\n\n\tOCA.Versions = OCA.Versions || {}\n\n\tOCA.Versions.VersionModel = VersionModel\n})()\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".versionsTabView .clear-float {\\n\\tclear: both;\\n}\\n\\n.versionsTabView li {\\n\\twidth: 100%;\\n\\tcursor: default;\\n\\theight: 56px;\\n\\tfloat: left;\\n\\tborder-bottom: 1px solid rgba(100,100,100,.1);\\n}\\n.versionsTabView li:last-child {\\n\\tborder-bottom: none;\\n}\\n\\n.versionsTabView a,\\n.versionsTabView div > span {\\n\\tvertical-align: middle;\\n\\topacity: .5;\\n}\\n\\n.versionsTabView li a{\\n\\tpadding: 15px 10px 11px;\\n}\\n\\n.versionsTabView a:hover,\\n.versionsTabView a:focus {\\n\\topacity: 1;\\n}\\n\\n.versionsTabView .preview-container {\\n\\tdisplay: inline-block;\\n vertical-align: top;\\n}\\n\\n.versionsTabView .version-container img, .revertVersion img {\\n\\tfilter: var(--background-invert-if-dark);\\n}\\n\\n.versionsTabView img {\\n\\tcursor: pointer;\\n\\tpadding-right: 4px;\\n}\\n\\n.versionsTabView img.preview {\\n\\tcursor: default;\\n}\\n\\n.versionsTabView .version-container {\\n\\tdisplay: inline-block;\\n}\\n\\n.versionsTabView .versiondate {\\n\\tmin-width: 100px;\\n\\tvertical-align: super;\\n}\\n\\n.versionsTabView .version-details {\\n\\ttext-align: left;\\n}\\n\\n.versionsTabView .version-details > span {\\n\\tpadding: 0 10px;\\n}\\n\\n.versionsTabView .revertVersion {\\n\\tcursor: pointer;\\n\\tfloat: right;\\n\\tmargin-right: -10px;\\n}\\n\\n.versionsTabView .emptycontent {\\n\\tmargin-top: 50px !important;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_versions/src/css/versions.css\"],\"names\":[],\"mappings\":\"AAAA;CACC,WAAW;AACZ;;AAEA;CACC,WAAW;CACX,eAAe;CACf,YAAY;CACZ,WAAW;CACX,6CAA6C;AAC9C;AACA;CACC,mBAAmB;AACpB;;AAEA;;CAEC,sBAAsB;CACtB,WAAW;AACZ;;AAEA;CACC,uBAAuB;AACxB;;AAEA;;CAEC,UAAU;AACX;;AAEA;CACC,qBAAqB;EACpB,mBAAmB;AACrB;;AAEA;CACC,wCAAwC;AACzC;;AAEA;CACC,eAAe;CACf,kBAAkB;AACnB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;CAChB,qBAAqB;AACtB;;AAEA;CACC,gBAAgB;AACjB;;AAEA;CACC,eAAe;AAChB;;AAEA;CACC,eAAe;CACf,YAAY;CACZ,mBAAmB;AACpB;;AAEA;CACC,2BAA2B;AAC5B\",\"sourcesContent\":[\".versionsTabView .clear-float {\\n\\tclear: both;\\n}\\n\\n.versionsTabView li {\\n\\twidth: 100%;\\n\\tcursor: default;\\n\\theight: 56px;\\n\\tfloat: left;\\n\\tborder-bottom: 1px solid rgba(100,100,100,.1);\\n}\\n.versionsTabView li:last-child {\\n\\tborder-bottom: none;\\n}\\n\\n.versionsTabView a,\\n.versionsTabView div > span {\\n\\tvertical-align: middle;\\n\\topacity: .5;\\n}\\n\\n.versionsTabView li a{\\n\\tpadding: 15px 10px 11px;\\n}\\n\\n.versionsTabView a:hover,\\n.versionsTabView a:focus {\\n\\topacity: 1;\\n}\\n\\n.versionsTabView .preview-container {\\n\\tdisplay: inline-block;\\n vertical-align: top;\\n}\\n\\n.versionsTabView .version-container img, .revertVersion img {\\n\\tfilter: var(--background-invert-if-dark);\\n}\\n\\n.versionsTabView img {\\n\\tcursor: pointer;\\n\\tpadding-right: 4px;\\n}\\n\\n.versionsTabView img.preview {\\n\\tcursor: default;\\n}\\n\\n.versionsTabView .version-container {\\n\\tdisplay: inline-block;\\n}\\n\\n.versionsTabView .versiondate {\\n\\tmin-width: 100px;\\n\\tvertical-align: super;\\n}\\n\\n.versionsTabView .version-details {\\n\\ttext-align: left;\\n}\\n\\n.versionsTabView .version-details > span {\\n\\tpadding: 0 10px;\\n}\\n\\n.versionsTabView .revertVersion {\\n\\tcursor: pointer;\\n\\tfloat: right;\\n\\tmargin-right: -10px;\\n}\\n\\n.versionsTabView .emptycontent {\\n\\tmargin-top: 50px !important;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"1\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"\t\t\t\t<div class=\\\"version-details\\\">\\n\t\t\t\t\t<span class=\\\"size has-tooltip\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"altSize\") || (depth0 != null ? lookupProperty(depth0,\"altSize\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"altSize\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":14,\"column\":43},\"end\":{\"line\":14,\"column\":54}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"humanReadableSize\") || (depth0 != null ? lookupProperty(depth0,\"humanReadableSize\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"humanReadableSize\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":14,\"column\":56},\"end\":{\"line\":14,\"column\":77}}}) : helper)))\n + \"</span>\\n\t\t\t\t</div>\\n\";\n},\"3\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"\t\t\t<a href=\\\"#\\\" class=\\\"revertVersion\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"revertLabel\") || (depth0 != null ? lookupProperty(depth0,\"revertLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"revertLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":19,\"column\":44},\"end\":{\"line\":19,\"column\":59}}}) : helper)))\n + \"\\\"><img src=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"revertIconUrl\") || (depth0 != null ? lookupProperty(depth0,\"revertIconUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"revertIconUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":19,\"column\":71},\"end\":{\"line\":19,\"column\":88}}}) : helper)))\n + \"\\\" /></a>\\n\";\n},\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var stack1, helper, options, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, alias5=container.hooks.blockHelperMissing, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n }, buffer = \n \"<li data-revision=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"id\") || (depth0 != null ? lookupProperty(depth0,\"id\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"id\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":1,\"column\":19},\"end\":{\"line\":1,\"column\":25}}}) : helper)))\n + \"\\\">\\n\t<div>\\n\t\t<div class=\\\"preview-container\\\">\\n\t\t\t<img class=\\\"preview\\\" src=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"previewUrl\") || (depth0 != null ? lookupProperty(depth0,\"previewUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"previewUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":4,\"column\":29},\"end\":{\"line\":4,\"column\":43}}}) : helper)))\n + \"\\\" width=\\\"44\\\" height=\\\"44\\\"/>\\n\t\t</div>\\n\t\t<div class=\\\"version-container\\\">\\n\t\t\t<div>\\n\t\t\t\t<a href=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"downloadUrl\") || (depth0 != null ? lookupProperty(depth0,\"downloadUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"downloadUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":13},\"end\":{\"line\":8,\"column\":28}}}) : helper)))\n + \"\\\" class=\\\"downloadVersion\\\" download=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"downloadName\") || (depth0 != null ? lookupProperty(depth0,\"downloadName\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"downloadName\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":64},\"end\":{\"line\":8,\"column\":80}}}) : helper)))\n + \"\\\"><img src=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"downloadIconUrl\") || (depth0 != null ? lookupProperty(depth0,\"downloadIconUrl\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"downloadIconUrl\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":8,\"column\":92},\"end\":{\"line\":8,\"column\":111}}}) : helper)))\n + \"\\\" />\\n\t\t\t\t\t<span class=\\\"versiondate has-tooltip live-relative-timestamp\\\" data-timestamp=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"millisecondsTimestamp\") || (depth0 != null ? lookupProperty(depth0,\"millisecondsTimestamp\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"millisecondsTimestamp\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":83},\"end\":{\"line\":9,\"column\":108}}}) : helper)))\n + \"\\\" title=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"formattedTimestamp\") || (depth0 != null ? lookupProperty(depth0,\"formattedTimestamp\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"formattedTimestamp\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":117},\"end\":{\"line\":9,\"column\":139}}}) : helper)))\n + \"\\\">\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"relativeTimestamp\") || (depth0 != null ? lookupProperty(depth0,\"relativeTimestamp\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"relativeTimestamp\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":141},\"end\":{\"line\":9,\"column\":162}}}) : helper)))\n + \"</span>\\n\t\t\t\t</a>\\n\t\t\t</div>\\n\";\n stack1 = ((helper = (helper = lookupProperty(helpers,\"hasDetails\") || (depth0 != null ? lookupProperty(depth0,\"hasDetails\") : depth0)) != null ? helper : alias2),(options={\"name\":\"hasDetails\",\"hash\":{},\"fn\":container.program(1, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":12,\"column\":3},\"end\":{\"line\":16,\"column\":18}}}),(typeof helper === alias3 ? helper.call(alias1,options) : helper));\n if (!lookupProperty(helpers,\"hasDetails\")) { stack1 = alias5.call(depth0,stack1,options)}\n if (stack1 != null) { buffer += stack1; }\n buffer += \"\t\t</div>\\n\";\n stack1 = ((helper = (helper = lookupProperty(helpers,\"canRevert\") || (depth0 != null ? lookupProperty(depth0,\"canRevert\") : depth0)) != null ? helper : alias2),(options={\"name\":\"canRevert\",\"hash\":{},\"fn\":container.program(3, data, 0),\"inverse\":container.noop,\"data\":data,\"loc\":{\"start\":{\"line\":18,\"column\":2},\"end\":{\"line\":20,\"column\":16}}}),(typeof helper === alias3 ? helper.call(alias1,options) : helper));\n if (!lookupProperty(helpers,\"canRevert\")) { stack1 = alias5.call(depth0,stack1,options)}\n if (stack1 != null) { buffer += stack1; }\n return buffer + \"\t</div>\\n</li>\\n\";\n},\"useData\":true});","var Handlebars = require(\"../../../../node_modules/handlebars/runtime.js\");\nfunction __default(obj) { return obj && (obj.__esModule ? obj[\"default\"] : obj); }\nmodule.exports = (Handlebars[\"default\"] || Handlebars).template({\"compiler\":[8,\">= 4.3.0\"],\"main\":function(container,depth0,helpers,partials,data) {\n var helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=\"function\", alias4=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n };\n\n return \"<ul class=\\\"versions\\\"></ul>\\n<div class=\\\"clear-float\\\"></div>\\n<div class=\\\"empty hidden\\\">\\n\t<div class=\\\"emptycontent\\\">\\n\t\t<div class=\\\"icon-history\\\"></div>\\n\t\t<p>\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"emptyResultLabel\") || (depth0 != null ? lookupProperty(depth0,\"emptyResultLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"emptyResultLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":6,\"column\":5},\"end\":{\"line\":6,\"column\":25}}}) : helper)))\n + \"</p>\\n\t</div>\\n</div>\\n<input type=\\\"button\\\" class=\\\"showMoreVersions hidden\\\" value=\\\"\"\n + alias4(((helper = (helper = lookupProperty(helpers,\"moreVersionsLabel\") || (depth0 != null ? lookupProperty(depth0,\"moreVersionsLabel\") : depth0)) != null ? helper : alias2),(typeof helper === alias3 ? helper.call(alias1,{\"name\":\"moreVersionsLabel\",\"hash\":{},\"data\":data,\"loc\":{\"start\":{\"line\":9,\"column\":60},\"end\":{\"line\":9,\"column\":81}}}) : helper)))\n + \"\\\" name=\\\"show-more-versions\\\" id=\\\"show-more-versions\\\" />\\n<div class=\\\"loading hidden\\\" style=\\\"height: 50px\\\"></div>\\n\";\n},\"useData\":true});","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 1358;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1358: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(22420); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","OCA","Files","DetailTabView","VersionsTabView","extend","id","className","_template","$versionsContainer","events","initialize","prototype","apply","this","arguments","collection","Versions","VersionCollection","on","_onRequest","_onEndRequest","_onUpdate","_onError","_onAddModel","getLabel","t","getIcon","nextPage","_loading","getFileInfo","isDirectory","fetch","_onClickRevertVersion","ev","self","$target","$","target","fileInfoModel","is","closest","preventDefault","revision","attr","versionModel","get","revert","success","empty","setFileInfo","reset","silent","$el","find","removeClass","trigger","set","size","mtime","etag","error","_toggleLoading","OC","Notification","show","file","getFullPath","timestamp","Util","formatDate","type","state","toggleClass","length","model","itemTemplate","_formatItem","append","tooltip","template","data","Template","ItemTemplate","fileInfo","render","version","has","preview","MimeType","getIconUrl","img","Image","onload","getPreviewUrl","src","_","versionId","formattedTimestamp","relativeTimestamp","relativeModifiedDate","millisecondsTimestamp","humanReadableSize","humanFileSize","altSize","n","hasDetails","downloadUrl","getDownloadUrl","downloadIconUrl","imagePath","downloadName","revertIconUrl","previewUrl","revertLabel","canRevert","PERMISSION_UPDATE","attributes","html","emptyResultLabel","delegateEvents","canDisplay","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","window","attach","fileList","registerTabView","order","Plugins","register","Backbone","Collection","VersionModel","sync","davSync","_fileInfo","_currentUser","_client","setCurrentUser","user","getCurrentUser","uid","setClient","client","getClient","Client","host","getHost","root","linkToRemoteBase","useHTTPS","getProtocol","url","parse","result","fullPath","fileId","name","map","parseInt","moment","Date","format","basename","href","Model","davProperties","mimetype","clone","move","done","call","context","fail","generateUrl","params","buildQueryString","___CSS_LOADER_EXPORT___","push","module","Handlebars","exports","container","depth0","helpers","partials","helper","alias1","nullContext","alias2","hooks","helperMissing","alias3","alias4","escapeExpression","lookupProperty","parent","propertyName","Object","hasOwnProperty","stack1","alias5","blockHelperMissing","buffer","program","noop","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","loaded","__webpack_modules__","m","amdD","Error","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","keys","every","key","splice","r","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","e","obj","prop","Symbol","toStringTag","value","nmd","paths","children","b","document","baseURI","location","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","nc","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file
diff --git a/lib/l10n/bg.js b/lib/l10n/bg.js
index 1aec125bdf9..e02d36b8921 100644
--- a/lib/l10n/bg.js
+++ b/lib/l10n/bg.js
@@ -127,6 +127,8 @@ OC.L10N.register(
"PostgreSQL username and/or password not valid" : "Невалидно PostgreSQL потребителско име и/или парола.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X не се подържа и %s няма да работи правилно на тази платформа. Използвайте го на свой собствен риск!",
"For the best results, please consider using a GNU/Linux server instead." : "За най-добри резултати, моля, помисли дали не бихте желали да използваште GNU/Linux сървър.",
+ "It seems that this %s instance is running on a 32-bit PHP environment. 64-bit is required for 26 and higher." : "Изглежда, че този екземпляр %s работи в 32-битова PHP среда. За версия 26 и по-висока е нужна 64-битова среда.",
+ "Please switch to 64-bit PHP." : "Моля, превключете на 64-битов PHP.",
"Set an admin username." : "Задайте потребителско име за администратор.",
"Set an admin password." : "Задай парола за администратор.",
"Cannot create or write into the data directory %s" : "Неуспешно създаване или записване в директорията с данни \"data\" %s",
diff --git a/lib/l10n/bg.json b/lib/l10n/bg.json
index 0a6db671a9e..564486afd93 100644
--- a/lib/l10n/bg.json
+++ b/lib/l10n/bg.json
@@ -125,6 +125,8 @@
"PostgreSQL username and/or password not valid" : "Невалидно PostgreSQL потребителско име и/или парола.",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X не се подържа и %s няма да работи правилно на тази платформа. Използвайте го на свой собствен риск!",
"For the best results, please consider using a GNU/Linux server instead." : "За най-добри резултати, моля, помисли дали не бихте желали да използваште GNU/Linux сървър.",
+ "It seems that this %s instance is running on a 32-bit PHP environment. 64-bit is required for 26 and higher." : "Изглежда, че този екземпляр %s работи в 32-битова PHP среда. За версия 26 и по-висока е нужна 64-битова среда.",
+ "Please switch to 64-bit PHP." : "Моля, превключете на 64-битов PHP.",
"Set an admin username." : "Задайте потребителско име за администратор.",
"Set an admin password." : "Задай парола за администратор.",
"Cannot create or write into the data directory %s" : "Неуспешно създаване или записване в директорията с данни \"data\" %s",
diff --git a/lib/l10n/cs.js b/lib/l10n/cs.js
index a01adac3c11..1ed9b3ac932 100644
--- a/lib/l10n/cs.js
+++ b/lib/l10n/cs.js
@@ -80,7 +80,7 @@ OC.L10N.register(
"Module with ID: %s does not exist. Please enable it in your apps settings or contact your administrator." : "Modul s identifikátorem: %s neexistuje. Povolte ho v nastavení aplikací, nebo se obraťte na správce.",
"File already exists" : "Soubor už existuje",
"Invalid path" : "Neplatný popis umístění",
- "Failed to create file from template" : "Vytvoření souboru ze šablony selhalo",
+ "Failed to create file from template" : "Vytvoření souboru ze šablony se nezdařilo",
"Templates" : "Šablony",
"File name is a reserved word" : "Název souboru je rezervované slovo",
"File name contains at least one invalid character" : "Název souboru obsahuje přinejmenším jeden neplatný znak",
diff --git a/lib/l10n/cs.json b/lib/l10n/cs.json
index 1952d8d5ecb..18d3f7dcafe 100644
--- a/lib/l10n/cs.json
+++ b/lib/l10n/cs.json
@@ -78,7 +78,7 @@
"Module with ID: %s does not exist. Please enable it in your apps settings or contact your administrator." : "Modul s identifikátorem: %s neexistuje. Povolte ho v nastavení aplikací, nebo se obraťte na správce.",
"File already exists" : "Soubor už existuje",
"Invalid path" : "Neplatný popis umístění",
- "Failed to create file from template" : "Vytvoření souboru ze šablony selhalo",
+ "Failed to create file from template" : "Vytvoření souboru ze šablony se nezdařilo",
"Templates" : "Šablony",
"File name is a reserved word" : "Název souboru je rezervované slovo",
"File name contains at least one invalid character" : "Název souboru obsahuje přinejmenším jeden neplatný znak",
diff --git a/lib/l10n/es.js b/lib/l10n/es.js
index d5371399a8d..1e078b3b6ac 100644
--- a/lib/l10n/es.js
+++ b/lib/l10n/es.js
@@ -127,6 +127,8 @@ OC.L10N.register(
"PostgreSQL username and/or password not valid" : "Usuario y/o contraseña de PostgreSQL no válidos",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X no está soportado y %s no funcionará bien en esta plataforma. ¡Úsala bajo tu propio riesgo! ",
"For the best results, please consider using a GNU/Linux server instead." : "Para obtener los mejores resultados, considera utilizar un servidor GNU/Linux.",
+ "It seems that this %s instance is running on a 32-bit PHP environment. 64-bit is required for 26 and higher." : "Parece que esta %s instancia está ejecutándose en un ambiente PHP de 32 bits. Se requiere 64 bits para 26 y superiores.",
+ "Please switch to 64-bit PHP." : "Por favor cambie a PHP de 64 bits",
"Set an admin username." : "Configurar un nombre de usuario del administrador",
"Set an admin password." : "Configurar la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear o escribir en la carpeta de datos %s",
diff --git a/lib/l10n/es.json b/lib/l10n/es.json
index 92a4951990a..2bcb6b0f644 100644
--- a/lib/l10n/es.json
+++ b/lib/l10n/es.json
@@ -125,6 +125,8 @@
"PostgreSQL username and/or password not valid" : "Usuario y/o contraseña de PostgreSQL no válidos",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X no está soportado y %s no funcionará bien en esta plataforma. ¡Úsala bajo tu propio riesgo! ",
"For the best results, please consider using a GNU/Linux server instead." : "Para obtener los mejores resultados, considera utilizar un servidor GNU/Linux.",
+ "It seems that this %s instance is running on a 32-bit PHP environment. 64-bit is required for 26 and higher." : "Parece que esta %s instancia está ejecutándose en un ambiente PHP de 32 bits. Se requiere 64 bits para 26 y superiores.",
+ "Please switch to 64-bit PHP." : "Por favor cambie a PHP de 64 bits",
"Set an admin username." : "Configurar un nombre de usuario del administrador",
"Set an admin password." : "Configurar la contraseña del administrador.",
"Cannot create or write into the data directory %s" : "No se puede crear o escribir en la carpeta de datos %s",
diff --git a/lib/l10n/lv.js b/lib/l10n/lv.js
index 3a8c9940fb2..8ca9eae8786 100644
--- a/lib/l10n/lv.js
+++ b/lib/l10n/lv.js
@@ -5,6 +5,7 @@ OC.L10N.register(
"See %s" : "Skatīt %s",
"Sample configuration detected" : "Atrasta konfigurācijas paraugs",
"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" : "Konstatēts, ka paraug konfigurācija ir nokopēta. Tas var izjaukt jūsu instalāciju un nav atbalstīts. Lūdzu, izlasiet dokumentāciju, pirms veicat izmaiņas config.php",
+ "404" : "404",
"%1$s and %2$s" : "%1$s un %2$s",
"%1$s, %2$s and %3$s" : "%1$s, %2$s un %3$s",
"%1$s, %2$s, %3$s and %4$s" : "%1$s, %2$s, %3$s un %4$s",
@@ -32,6 +33,7 @@ OC.L10N.register(
"_%n minute ago_::_%n minutes ago_" : ["%n minūtes atpakaļ","%n minūtes atpakaļ","%n minūtēm"],
"seconds ago" : "sekundēm",
"File already exists" : "Datne jau pastāv",
+ "File name is a reserved word" : "Faila nosaukums ir rezervēts vārds",
"File name is too long" : "Datnes nosaukums ir pārāk garš",
"Empty filename is not allowed" : "Tukšs datnes nosaukums nav atļauts",
"__language_name__" : "Latviešu",
@@ -55,6 +57,7 @@ OC.L10N.register(
"Oracle connection could not be established" : "Nevar izveidot savienojumu ar Oracle",
"Oracle username and/or password not valid" : "Nav derīga Oracle parole un/vai lietotājvārds",
"PostgreSQL username and/or password not valid" : "Nav derīga PostgreSQL parole un/vai lietotājvārds",
+ "Please switch to 64-bit PHP." : "Lūdzu, pārejiet uz 64 bitu PHP.",
"Set an admin username." : "Iestatiet administratora lietotājvārdu.",
"Set an admin password." : "Iestatiet administratora paroli.",
"Open »%s«" : "Atvērt »%s«",
diff --git a/lib/l10n/lv.json b/lib/l10n/lv.json
index 340b2ac500f..7669b59eb0b 100644
--- a/lib/l10n/lv.json
+++ b/lib/l10n/lv.json
@@ -3,6 +3,7 @@
"See %s" : "Skatīt %s",
"Sample configuration detected" : "Atrasta konfigurācijas paraugs",
"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" : "Konstatēts, ka paraug konfigurācija ir nokopēta. Tas var izjaukt jūsu instalāciju un nav atbalstīts. Lūdzu, izlasiet dokumentāciju, pirms veicat izmaiņas config.php",
+ "404" : "404",
"%1$s and %2$s" : "%1$s un %2$s",
"%1$s, %2$s and %3$s" : "%1$s, %2$s un %3$s",
"%1$s, %2$s, %3$s and %4$s" : "%1$s, %2$s, %3$s un %4$s",
@@ -30,6 +31,7 @@
"_%n minute ago_::_%n minutes ago_" : ["%n minūtes atpakaļ","%n minūtes atpakaļ","%n minūtēm"],
"seconds ago" : "sekundēm",
"File already exists" : "Datne jau pastāv",
+ "File name is a reserved word" : "Faila nosaukums ir rezervēts vārds",
"File name is too long" : "Datnes nosaukums ir pārāk garš",
"Empty filename is not allowed" : "Tukšs datnes nosaukums nav atļauts",
"__language_name__" : "Latviešu",
@@ -53,6 +55,7 @@
"Oracle connection could not be established" : "Nevar izveidot savienojumu ar Oracle",
"Oracle username and/or password not valid" : "Nav derīga Oracle parole un/vai lietotājvārds",
"PostgreSQL username and/or password not valid" : "Nav derīga PostgreSQL parole un/vai lietotājvārds",
+ "Please switch to 64-bit PHP." : "Lūdzu, pārejiet uz 64 bitu PHP.",
"Set an admin username." : "Iestatiet administratora lietotājvārdu.",
"Set an admin password." : "Iestatiet administratora paroli.",
"Open »%s«" : "Atvērt »%s«",
diff --git a/lib/l10n/sk.js b/lib/l10n/sk.js
index bb6bd2f8a36..1a6d482b42b 100644
--- a/lib/l10n/sk.js
+++ b/lib/l10n/sk.js
@@ -8,6 +8,8 @@ OC.L10N.register(
"The files of the app %1$s were not replaced correctly. Make sure it is a version compatible with the server." : "Súbory aplikácie %1$s neboli správne nahradené. Uistite sa, že to je verzia kompatibilná so serverom.",
"Sample configuration detected" : "Detekovaná bola vzorová konfigurácia",
"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" : "Zistilo sa, že konfigurácia bola skopírovaná zo vzorových súborov. Takáto konfigurácia nie je podporovaná a môže poškodiť vašu inštaláciu. Prečítajte si dokumentáciu pred vykonaním zmien v config.php",
+ "404" : "404",
+ "The page could not be found on the server." : "Stránka nebola nájdená na serveri.",
"%s email verification" : "%s overenie e-mailu",
"Email verification" : "Overenie e-mailu",
"Click the following button to confirm your email." : "Kliknite na tlačítko pre potvrdenie vašeho e-mailu.",
@@ -125,6 +127,8 @@ OC.L10N.register(
"PostgreSQL username and/or password not valid" : "Používateľské meno a/alebo heslo pre PostgreSQL databázu je neplatné",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X nie je podporovaný a %s nebude správne fungovať na tejto platforme. Použite ho na vlastné riziko!",
"For the best results, please consider using a GNU/Linux server instead." : "Pre dosiahnutie najlepších výsledkov, prosím zvážte použitie GNU/Linux servera.",
+ "It seems that this %s instance is running on a 32-bit PHP environment. 64-bit is required for 26 and higher." : "Zdá sa, že inštancia %s beží v 32-bitovom prostredí PHP. Pre vezie 26 a vyššie sa vyžaduje 64-bit.",
+ "Please switch to 64-bit PHP." : "Prosím prepnite na 64-bit PHP.",
"Set an admin username." : "Zadajte používateľské meno administrátora.",
"Set an admin password." : "Zadajte heslo administrátora.",
"Cannot create or write into the data directory %s" : "Nemožno vytvoriť alebo zapisovať do priečinka dát %s",
@@ -148,6 +152,7 @@ OC.L10N.register(
"%1$s shared »%2$s« with you." : "%1$s vám sprístupnil »%2$s«.",
"Click the button below to open it." : "Pre otvorenie klienta kliknite na tlačítko nižšie.",
"The requested share does not exist anymore" : "Požadované sprístupnenie už neexistuje",
+ "The user limit has been reached and the user was not created. Check your notifications to learn more." : "Bol dosiahnutý limit používateľov a používateľ nebol vytvorený. Pozrite sa do upozornení pre viac informácií.",
"Could not find category \"%s\"" : "Nemožno nájsť danú kategóriu \"%s\"",
"Sunday" : "Nedeľa",
"Monday" : "Pondelok",
diff --git a/lib/l10n/sk.json b/lib/l10n/sk.json
index f16b8b970b6..6d317dec501 100644
--- a/lib/l10n/sk.json
+++ b/lib/l10n/sk.json
@@ -6,6 +6,8 @@
"The files of the app %1$s were not replaced correctly. Make sure it is a version compatible with the server." : "Súbory aplikácie %1$s neboli správne nahradené. Uistite sa, že to je verzia kompatibilná so serverom.",
"Sample configuration detected" : "Detekovaná bola vzorová konfigurácia",
"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" : "Zistilo sa, že konfigurácia bola skopírovaná zo vzorových súborov. Takáto konfigurácia nie je podporovaná a môže poškodiť vašu inštaláciu. Prečítajte si dokumentáciu pred vykonaním zmien v config.php",
+ "404" : "404",
+ "The page could not be found on the server." : "Stránka nebola nájdená na serveri.",
"%s email verification" : "%s overenie e-mailu",
"Email verification" : "Overenie e-mailu",
"Click the following button to confirm your email." : "Kliknite na tlačítko pre potvrdenie vašeho e-mailu.",
@@ -123,6 +125,8 @@
"PostgreSQL username and/or password not valid" : "Používateľské meno a/alebo heslo pre PostgreSQL databázu je neplatné",
"Mac OS X is not supported and %s will not work properly on this platform. Use it at your own risk! " : "Mac OS X nie je podporovaný a %s nebude správne fungovať na tejto platforme. Použite ho na vlastné riziko!",
"For the best results, please consider using a GNU/Linux server instead." : "Pre dosiahnutie najlepších výsledkov, prosím zvážte použitie GNU/Linux servera.",
+ "It seems that this %s instance is running on a 32-bit PHP environment. 64-bit is required for 26 and higher." : "Zdá sa, že inštancia %s beží v 32-bitovom prostredí PHP. Pre vezie 26 a vyššie sa vyžaduje 64-bit.",
+ "Please switch to 64-bit PHP." : "Prosím prepnite na 64-bit PHP.",
"Set an admin username." : "Zadajte používateľské meno administrátora.",
"Set an admin password." : "Zadajte heslo administrátora.",
"Cannot create or write into the data directory %s" : "Nemožno vytvoriť alebo zapisovať do priečinka dát %s",
@@ -146,6 +150,7 @@
"%1$s shared »%2$s« with you." : "%1$s vám sprístupnil »%2$s«.",
"Click the button below to open it." : "Pre otvorenie klienta kliknite na tlačítko nižšie.",
"The requested share does not exist anymore" : "Požadované sprístupnenie už neexistuje",
+ "The user limit has been reached and the user was not created. Check your notifications to learn more." : "Bol dosiahnutý limit používateľov a používateľ nebol vytvorený. Pozrite sa do upozornení pre viac informácií.",
"Could not find category \"%s\"" : "Nemožno nájsť danú kategóriu \"%s\"",
"Sunday" : "Nedeľa",
"Monday" : "Pondelok",
diff --git a/lib/public/Calendar/ICalendar.php b/lib/public/Calendar/ICalendar.php
index e1644ca82aa..2631ef327fc 100644
--- a/lib/public/Calendar/ICalendar.php
+++ b/lib/public/Calendar/ICalendar.php
@@ -40,6 +40,7 @@ interface ICalendar {
public function getKey(): string;
/**
+ * In comparison to getKey() this function returns a unique uri within the scope of the principal
* @since 24.0.0
*/
public function getUri(): string;