| Server IP : 85.214.143.32 / Your IP : 216.73.216.199 Web Server : nginx/1.24.0 System : Linux datensicherung.webdress.site 6.8.0-139-generic #139-Ubuntu SMP PREEMPT_DYNAMIC Sat Aug 1 03:52:05 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/nextcloud/dist/ |
Upload File : |
{"version":3,"file":"files-settings-admin.js?v=95af5e4287e503e70bb4","mappings":"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","sources":["webpack:///nextcloud/apps/files/src/models/SanitizeFilenameStatus.ts","webpack:///nextcloud/apps/files/src/utils/logger.ts","webpack:///nextcloud/apps/files/src/components/Settings/SettingsSanitizeFilenames.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/apps/files/src/components/Settings/SettingsSanitizeFilenames.vue","webpack://nextcloud/./apps/files/src/components/Settings/SettingsSanitizeFilenames.vue?9c7d","webpack://nextcloud/./apps/files/src/components/Settings/SettingsSanitizeFilenames.vue?5bf7","webpack:///nextcloud/apps/files/src/views/SettingsAdmin.vue?vue&type=script&setup=true&lang=ts","webpack:///nextcloud/apps/files/src/views/SettingsAdmin.vue","webpack://nextcloud/./apps/files/src/views/SettingsAdmin.vue?ea47","webpack://nextcloud/./apps/files/src/views/SettingsAdmin.vue?d1ca","webpack:///nextcloud/apps/files/src/main-settings-admin.ts","webpack:///nextcloud/apps/files/src/components/Settings/SettingsSanitizeFilenames.vue?vue&type=style&index=0&id=51ab1271&prod&scoped=true&lang=css","webpack:///nextcloud/apps/files/src/views/SettingsAdmin.vue?vue&type=style&index=0&id=739c627a&prod&scoped=true&lang=css","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/set anonymous default export name","webpack:///nextcloud/webpack/runtime/wrap commonjs module","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["/*!\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n/**\n * The current status of the filename sanitization\n */\nexport var SanitizeFilenameStatus;\n(function (SanitizeFilenameStatus) {\n SanitizeFilenameStatus[SanitizeFilenameStatus[\"Unknown\"] = 0] = \"Unknown\";\n SanitizeFilenameStatus[SanitizeFilenameStatus[\"Scheduled\"] = 1] = \"Scheduled\";\n SanitizeFilenameStatus[SanitizeFilenameStatus[\"Running\"] = 2] = \"Running\";\n SanitizeFilenameStatus[SanitizeFilenameStatus[\"Done\"] = 3] = \"Done\";\n SanitizeFilenameStatus[SanitizeFilenameStatus[\"Error\"] = 4] = \"Error\";\n})(SanitizeFilenameStatus || (SanitizeFilenameStatus = {}));\n","/*!\n * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getLoggerBuilder } from '@nextcloud/logger';\nexport const logger = getLoggerBuilder()\n .setApp('files')\n .detectUser()\n .build();\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsSanitizeFilenames.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsSanitizeFilenames.vue?vue&type=script&setup=true&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_setup.isRunning)?_c(_setup.NcNoteCard,[_c('div',{staticClass:\"sanitize-filenames__progress-container\"},[_c('p',[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files', 'Filename sanitization in progress.'))+\"\\n\\t\\t\\t\"),_c('br'),_vm._v(\" \"),(_setup.processedUsers > 0)?[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files', 'Currently {processedUsers} of {totalUsers} accounts are already processed.', { processedUsers: _setup.processedUsers, totalUsers: _setup.totalUsers }))+\"\\n\\t\\t\\t\")]:[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files', 'Preparing …'))+\"\\n\\t\\t\\t\")]],2),_vm._v(\" \"),_c(_setup.NcProgressBar,{attrs:{\"value\":_setup.progress,\"size\":12}}),_vm._v(\" \"),_c(_setup.NcButton,{attrs:{\"variant\":\"tertiary\"},on:{\"click\":_setup.refreshStatus},scopedSlots:_vm._u([(_setup.loading)?{key:\"icon\",fn:function(){return [_c(_setup.NcLoadingIcon)]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files', 'Refresh'))+\"\\n\\t\\t\")])],1)]):(_setup.status === _setup.SanitizeFilenameStatus.Done)?_c(_setup.NcNoteCard,{attrs:{\"type\":\"success\"}},[_vm._v(\"\\n\\t\"+_vm._s(_setup.t('files', 'All files have been santized for Windows filename support.'))+\"\\n\")]):_c('form',{staticClass:\"sanitize-filenames__form\",attrs:{\"disabled\":_setup.loading},on:{\"submit\":function($event){$event.stopPropagation();$event.preventDefault();return _setup.startSanitization.apply(null, arguments)}}},[(_setup.status === _setup.SanitizeFilenameStatus.Error)?_c(_setup.NcNoteCard,{attrs:{\"type\":\"error\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'Some files could not be sanitized, please check your logs.'))+\"\\n\\t\\t\"),_c('ul',{staticClass:\"sanitize-filenames__errors\",attrs:{\"aria-label\":_setup.t('files', 'Sanitization errors')}},_vm._l((Object.entries(_setup.errors)),function([user, failedFiles]){return _c('li',{key:user},[_c('h4',[_vm._v(_vm._s(user)+\":\")]),_vm._v(\" \"),_c('ul',{attrs:{\"aria-label\":_setup.t('files', 'Not sanitized filenames')}},_vm._l((failedFiles),function(file){return _c('li',{key:file},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(file)+\"\\n\\t\\t\\t\\t\\t\")])}),0)])}),0)]):_vm._e(),_vm._v(\" \"),_c(_setup.NcNoteCard,[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'Windows filename support has been enabled.'))+\"\\n\\t\\t\"),_c('br'),_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'While this blocks users from creating new files with unsupported filenames, existing files are not yet renamed and thus still may break sync on Windows.'))+\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'You can trigger a rename of files with invalid filenames, this will be done in the background and may take some time.'))+\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'Please note that this may cause high workload on the sync clients.'))+\"\\n\\t\")]),_vm._v(\" \"),_c('fieldset',{staticClass:\"sanitize-filenames__fields\"},[_c(_setup.NcInputField,{attrs:{\"label\":_setup.t('files', 'Limit'),\"helper-text\":_setup.t('files', 'This allows to configure how many users should be processed in one background job run.'),\"min\":\"1\",\"type\":\"number\"},model:{value:(_setup.renameLimit),callback:function ($$v) {_setup.renameLimit=$$v},expression:\"renameLimit\"}}),_vm._v(\" \"),_c(_setup.NcButton,{attrs:{\"type\":\"submit\",\"variant\":\"error\"},scopedSlots:_vm._u([(_setup.loading)?{key:\"icon\",fn:function(){return [_c(_setup.NcLoadingIcon)]},proxy:true}:null],null,true)},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_setup.t('files', 'Sanitize filenames'))+\"\\n\\t\\t\\t\"),(_setup.loading)?_c('span',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\"+_vm._s(_setup.t('files', '(starting)'))+\"\\n\\t\\t\\t\")]):_vm._e()])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsSanitizeFilenames.vue?vue&type=style&index=0&id=51ab1271&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsSanitizeFilenames.vue?vue&type=style&index=0&id=51ab1271&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SettingsSanitizeFilenames.vue?vue&type=template&id=51ab1271&scoped=true\"\nimport script from \"./SettingsSanitizeFilenames.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SettingsSanitizeFilenames.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./SettingsSanitizeFilenames.vue?vue&type=style&index=0&id=51ab1271&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"51ab1271\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdmin.vue?vue&type=script&setup=true&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??clonedRuleSet-6.use[1]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdmin.vue?vue&type=script&setup=true&lang=ts\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c(_setup.NcSettingsSection,{attrs:{\"doc-url\":_setup.docUrl,\"name\":_setup.t('files', 'Files compatibility'),\"description\":_setup.description}},[_c(_setup.NcCheckboxRadioSwitch,{attrs:{\"model-value\":_setup.hasWindowsSupport,\"disabled\":_setup.isRunningSanitization,\"loading\":_setup.loading,\"type\":\"switch\"},on:{\"update:model-value\":_setup.toggleWindowsFilenameSupport}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'Enforce Windows compatibility'))+\"\\n\\t\")]),_vm._v(\" \"),_c('p',{staticClass:\"hint\"},[_vm._v(\"\\n\\t\\t\"+_vm._s(_setup.t('files', 'This will block filenames not valid on Windows systems, like using reserved names or special characters. But this will not enforce compatibility of case sensitivity.'))+\"\\n\\t\")]),_vm._v(\" \"),(_setup.hasWindowsSupport)?_c(_setup.SettingsSanitizeFilenames):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\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!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdmin.vue?vue&type=style&index=0&id=739c627a&prod&scoped=true&lang=css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdmin.vue?vue&type=style&index=0&id=739c627a&prod&scoped=true&lang=css\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./SettingsAdmin.vue?vue&type=template&id=739c627a&scoped=true\"\nimport script from \"./SettingsAdmin.vue?vue&type=script&setup=true&lang=ts\"\nexport * from \"./SettingsAdmin.vue?vue&type=script&setup=true&lang=ts\"\nimport style0 from \"./SettingsAdmin.vue?vue&type=style&index=0&id=739c627a&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"739c627a\",\n null\n \n)\n\nexport default component.exports","/**\n * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { getCSPNonce } from '@nextcloud/auth';\nimport { t } from '@nextcloud/l10n';\nimport Vue from 'vue';\nimport PersonalSettings from './views/SettingsAdmin.vue';\n__webpack_nonce__ = getCSPNonce();\nVue.prototype.t = t;\nconst View = Vue.extend(PersonalSettings);\nconst instance = new View();\ninstance.$mount('#files-admin-settings');\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, `\n.sanitize-filenames__progress-container[data-v-51ab1271] {\n\talign-items: end;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: var(--default-grid-baseline);\n}\n.sanitize-filenames__form[data-v-51ab1271] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: var(--default-grid-baseline);\n}\n.sanitize-filenames__fields[data-v-51ab1271] {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: var(--default-grid-baseline);\n\n\talign-items: end;\n\tmax-width: 400px;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/components/Settings/SettingsSanitizeFilenames.vue\"],\"names\":[],\"mappings\":\";AAkKA;CACA,gBAAA;CACA,aAAA;CACA,sBAAA;CACA,iCAAA;AACA;AAEA;CACA,aAAA;CACA,sBAAA;CACA,iCAAA;AACA;AAEA;CACA,aAAA;CACA,sBAAA;CACA,iCAAA;;CAEA,gBAAA;CACA,gBAAA;AACA\",\"sourcesContent\":[\"<!--\\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\\n - SPDX-License-Identifier: AGPL-3.0-or-later\\n-->\\n\\n<script setup lang=\\\"ts\\\">\\nimport type { OCSResponse } from '@nextcloud/typings/ocs'\\n\\nimport axios, { isAxiosError } from '@nextcloud/axios'\\nimport { showError } from '@nextcloud/dialogs'\\nimport { loadState } from '@nextcloud/initial-state'\\nimport { t } from '@nextcloud/l10n'\\nimport { generateOcsUrl } from '@nextcloud/router'\\nimport { computed, ref, shallowRef } from 'vue'\\nimport NcButton from '@nextcloud/vue/components/NcButton'\\nimport NcInputField from '@nextcloud/vue/components/NcInputField'\\nimport NcLoadingIcon from '@nextcloud/vue/components/NcLoadingIcon'\\nimport NcNoteCard from '@nextcloud/vue/components/NcNoteCard'\\nimport NcProgressBar from '@nextcloud/vue/components/NcProgressBar'\\nimport { SanitizeFilenameStatus } from '../../models/SanitizeFilenameStatus.ts'\\nimport { logger } from '../../utils/logger.ts'\\n\\ntype ApiStatus = { total: number, processed: number, errors?: Record<string, string[]>, status: SanitizeFilenameStatus }\\n\\nconst { status: initialStatus } = loadState<{ isRunningSanitization: boolean, status: ApiStatus }>('files', 'filesCompatibilitySettings')\\n\\nconst loading = ref(false)\\nconst renameLimit = ref(10)\\nconst status = ref(initialStatus.status)\\nconst processedUsers = ref(initialStatus.processed)\\nconst totalUsers = ref(initialStatus.total)\\nconst errors = shallowRef<ApiStatus['errors']>(initialStatus.errors || {})\\n\\nconst progress = computed(() => processedUsers.value > 0 ? Math.round((processedUsers.value * 100) / totalUsers.value) : 0)\\nconst isRunning = computed(() => status.value === SanitizeFilenameStatus.Scheduled || status.value === SanitizeFilenameStatus.Running)\\n\\n/**\\n * Start the sanitization process\\n */\\nasync function startSanitization() {\\n\\tif (isRunning.value) {\\n\\t\\treturn\\n\\t}\\n\\n\\ttry {\\n\\t\\tloading.value = true\\n\\t\\tawait axios.post(generateOcsUrl('apps/files/api/v1/filenames/sanitization'), {\\n\\t\\t\\tlimit: renameLimit.value,\\n\\t\\t})\\n\\t\\tstatus.value = SanitizeFilenameStatus.Scheduled\\n\\t} catch (error) {\\n\\t\\tlogger.error('Failed to start filename sanitization.', { error })\\n\\n\\t\\tif (isAxiosError(error) && error.response?.data?.ocs) {\\n\\t\\t\\tshowError((error.response.data as OCSResponse).ocs.meta.message!)\\n\\t\\t} else {\\n\\t\\t\\tshowError(t('files', 'Failed to start filename sanitization.'))\\n\\t\\t}\\n\\t} finally {\\n\\t\\tloading.value = false\\n\\t}\\n}\\n\\n/**\\n * Refresh the filename sanitization status\\n */\\nasync function refreshStatus() {\\n\\tif (loading.value) {\\n\\t\\treturn\\n\\t}\\n\\n\\ttry {\\n\\t\\tloading.value = true\\n\\t\\tconst { data } = await axios.get<OCSResponse<ApiStatus>>(generateOcsUrl('apps/files/api/v1/filenames/sanitization'))\\n\\t\\tstatus.value = data.ocs.data.status\\n\\t\\ttotalUsers.value = data.ocs.data.total\\n\\t\\tprocessedUsers.value = data.ocs.data.processed\\n\\t\\terrors.value = data.ocs.data.errors || {}\\n\\t} catch (error) {\\n\\t\\tlogger.error('Failed to refresh filename sanitization status.', { error })\\n\\t\\tshowError(t('files', 'Failed to refresh filename sanitization status.'))\\n\\t} finally {\\n\\t\\tloading.value = false\\n\\t}\\n}\\n</script>\\n\\n<template>\\n\\t<NcNoteCard v-if=\\\"isRunning\\\">\\n\\t\\t<div class=\\\"sanitize-filenames__progress-container\\\">\\n\\t\\t\\t<p>\\n\\t\\t\\t\\t{{ t('files', 'Filename sanitization in progress.') }}\\n\\t\\t\\t\\t<br>\\n\\t\\t\\t\\t<template v-if=\\\"processedUsers > 0\\\">\\n\\t\\t\\t\\t\\t{{ t('files', 'Currently {processedUsers} of {totalUsers} accounts are already processed.', { processedUsers, totalUsers }) }}\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t\\t<template v-else>\\n\\t\\t\\t\\t\\t{{ t('files', 'Preparing …') }}\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t</p>\\n\\t\\t\\t<NcProgressBar :value=\\\"progress\\\" :size=\\\"12\\\" />\\n\\t\\t\\t<NcButton variant=\\\"tertiary\\\" @click=\\\"refreshStatus\\\">\\n\\t\\t\\t\\t<template v-if=\\\"loading\\\" #icon>\\n\\t\\t\\t\\t\\t<NcLoadingIcon />\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t\\t{{ t('files', 'Refresh') }}\\n\\t\\t\\t</NcButton>\\n\\t\\t</div>\\n\\t</NcNoteCard>\\n\\n\\t<NcNoteCard v-else-if=\\\"status === SanitizeFilenameStatus.Done\\\" type=\\\"success\\\">\\n\\t\\t{{ t('files', 'All files have been santized for Windows filename support.') }}\\n\\t</NcNoteCard>\\n\\n\\t<form\\n\\t\\tv-else\\n\\t\\tclass=\\\"sanitize-filenames__form\\\"\\n\\t\\t:disabled=\\\"loading\\\"\\n\\t\\t@submit.stop.prevent=\\\"startSanitization\\\">\\n\\t\\t<NcNoteCard v-if=\\\"status === SanitizeFilenameStatus.Error\\\" type=\\\"error\\\">\\n\\t\\t\\t{{ t('files', 'Some files could not be sanitized, please check your logs.') }}\\n\\t\\t\\t<ul class=\\\"sanitize-filenames__errors\\\" :aria-label=\\\"t('files', 'Sanitization errors')\\\">\\n\\t\\t\\t\\t<li v-for=\\\"[user, failedFiles] of Object.entries(errors)\\\" :key=\\\"user\\\">\\n\\t\\t\\t\\t\\t<h4>{{ user }}:</h4>\\n\\t\\t\\t\\t\\t<ul :aria-label=\\\"t('files', 'Not sanitized filenames')\\\">\\n\\t\\t\\t\\t\\t\\t<li v-for=\\\"file of failedFiles\\\" :key=\\\"file\\\">\\n\\t\\t\\t\\t\\t\\t\\t{{ file }}\\n\\t\\t\\t\\t\\t\\t</li>\\n\\t\\t\\t\\t\\t</ul>\\n\\t\\t\\t\\t</li>\\n\\t\\t\\t</ul>\\n\\t\\t</NcNoteCard>\\n\\t\\t<NcNoteCard>\\n\\t\\t\\t{{ t('files', 'Windows filename support has been enabled.') }}\\n\\t\\t\\t<br>\\n\\t\\t\\t{{ t('files', 'While this blocks users from creating new files with unsupported filenames, existing files are not yet renamed and thus still may break sync on Windows.') }}\\n\\t\\t\\t{{ t('files', 'You can trigger a rename of files with invalid filenames, this will be done in the background and may take some time.') }}\\n\\t\\t\\t{{ t('files', 'Please note that this may cause high workload on the sync clients.') }}\\n\\t\\t</NcNoteCard>\\n\\n\\t\\t<fieldset class=\\\"sanitize-filenames__fields\\\">\\n\\t\\t\\t<NcInputField\\n\\t\\t\\t\\tv-model=\\\"renameLimit\\\"\\n\\t\\t\\t\\t:label=\\\"t('files', 'Limit')\\\"\\n\\t\\t\\t\\t:helper-text=\\\"t('files', 'This allows to configure how many users should be processed in one background job run.')\\\"\\n\\t\\t\\t\\tmin=\\\"1\\\"\\n\\t\\t\\t\\ttype=\\\"number\\\" />\\n\\n\\t\\t\\t<NcButton type=\\\"submit\\\" variant=\\\"error\\\">\\n\\t\\t\\t\\t<template v-if=\\\"loading\\\" #icon>\\n\\t\\t\\t\\t\\t<NcLoadingIcon />\\n\\t\\t\\t\\t</template>\\n\\t\\t\\t\\t{{ t('files', 'Sanitize filenames') }}\\n\\t\\t\\t\\t<span v-if=\\\"loading\\\" class=\\\"hidden-visually\\\">\\n\\t\\t\\t\\t\\t{{ t('files', '(starting)') }}\\n\\t\\t\\t\\t</span>\\n\\t\\t\\t</NcButton>\\n\\t\\t</fieldset>\\n\\t</form>\\n</template>\\n\\n<style scoped>\\n.sanitize-filenames__progress-container {\\n\\talign-items: end;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: var(--default-grid-baseline);\\n}\\n\\n.sanitize-filenames__form {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: var(--default-grid-baseline);\\n}\\n\\n.sanitize-filenames__fields {\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: var(--default-grid-baseline);\\n\\n\\talign-items: end;\\n\\tmax-width: 400px;\\n}\\n</style>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `\n.hint[data-v-739c627a] {\n\tcolor: var(--color-text-maxcontrast);\n\tmargin-inline-start: var(--border-radius-element);\n\tmargin-block-end: 1em;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files/src/views/SettingsAdmin.vue\"],\"names\":[],\"mappings\":\";AA0EA;CACA,oCAAA;CACA,iDAAA;CACA,qBAAA;AACA\",\"sourcesContent\":[\"<!--\\n - SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors\\n - SPDX-License-Identifier: AGPL-3.0-or-later\\n-->\\n\\n<script setup lang=\\\"ts\\\">\\nimport axios from '@nextcloud/axios'\\nimport { showError } from '@nextcloud/dialogs'\\nimport { loadState } from '@nextcloud/initial-state'\\nimport { t } from '@nextcloud/l10n'\\nimport { generateOcsUrl } from '@nextcloud/router'\\nimport { ref } from 'vue'\\nimport NcCheckboxRadioSwitch from '@nextcloud/vue/components/NcCheckboxRadioSwitch'\\nimport NcSettingsSection from '@nextcloud/vue/components/NcSettingsSection'\\nimport SettingsSanitizeFilenames from '../components/Settings/SettingsSanitizeFilenames.vue'\\nimport { logger } from '../utils/logger.ts'\\n\\nconst {\\n\\tdocUrl,\\n\\tisRunningSanitization,\\n\\twindowsSupport,\\n} = loadState<{ docUrl: string, isRunningSanitization: boolean, windowsSupport: boolean }>('files', 'filesCompatibilitySettings')\\n\\nconst description = t('files', 'Allow to restrict filenames to ensure files can be synced with all clients. By default all filenames valid on POSIX (e.g. Linux or macOS) are allowed.')\\n\\t+ '\\\\n' + t('files', 'After enabling the Windows compatible filenames, existing files cannot be modified anymore but can be renamed to valid new names by their owner.')\\n\\nconst loading = ref(false)\\nconst hasWindowsSupport = ref(windowsSupport)\\n\\n/**\\n * Toggle the Windows filename support on the backend.\\n *\\n * @param enabled - The new state to be set\\n */\\nasync function toggleWindowsFilenameSupport(enabled: boolean) {\\n\\tif (loading.value) {\\n\\t\\treturn\\n\\t}\\n\\n\\ttry {\\n\\t\\tloading.value = true\\n\\t\\tawait axios.post(generateOcsUrl('apps/files/api/v1/filenames/windows-compatibility'), { enabled })\\n\\t\\thasWindowsSupport.value = enabled\\n\\t} catch (error) {\\n\\t\\tshowError(t('files', 'Failed to toggle Windows filename support'))\\n\\t\\tlogger.error('Failed to toggle Windows filename support', { error })\\n\\t} finally {\\n\\t\\tloading.value = false\\n\\t}\\n}\\n</script>\\n\\n<template>\\n\\t<NcSettingsSection\\n\\t\\t:doc-url=\\\"docUrl\\\"\\n\\t\\t:name=\\\"t('files', 'Files compatibility')\\\"\\n\\t\\t:description=\\\"description\\\">\\n\\t\\t<NcCheckboxRadioSwitch\\n\\t\\t\\t:model-value=\\\"hasWindowsSupport\\\"\\n\\t\\t\\t:disabled=\\\"isRunningSanitization\\\"\\n\\t\\t\\t:loading=\\\"loading\\\"\\n\\t\\t\\ttype=\\\"switch\\\"\\n\\t\\t\\t@update:model-value=\\\"toggleWindowsFilenameSupport\\\">\\n\\t\\t\\t{{ t('files', 'Enforce Windows compatibility') }}\\n\\t\\t</NcCheckboxRadioSwitch>\\n\\t\\t<p class=\\\"hint\\\">\\n\\t\\t\\t{{ t('files', 'This will block filenames not valid on Windows systems, like using reserved names or special characters. But this will not enforce compatibility of case sensitivity.') }}\\n\\t\\t</p>\\n\\n\\t\\t<SettingsSanitizeFilenames v-if=\\\"hasWindowsSupport\\\" />\\n\\t</NcSettingsSection>\\n</template>\\n\\n<style scoped>\\n.hint {\\n\\tcolor: var(--color-text-maxcontrast);\\n\\tmargin-inline-start: var(--border-radius-element);\\n\\tmargin-block-end: 1em;\\n}\\n</style>\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// The module cache\nconst __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tconst 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\tconst 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","const deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tlet notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tlet [chunkIds, fn, priority] = deferred[i];\n\t\tlet fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tconst r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tconst getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter/value functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tif(Array.isArray(definition)) {\n\t\tvar i = 0;\n\t\twhile(i < definition.length) {\n\t\t\tvar key = definition[i++];\n\t\t\tvar binding = definition[i++];\n\t\t\tif(!__webpack_require__.o(exports, key)) {\n\t\t\t\tif(binding === 0) {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, value: definition[i++] });\n\t\t\t\t} else {\n\t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: binding });\n\t\t\t\t}\n\t\t\t} else if(binding === 0) { i++; }\n\t\t}\n\t} else {\n\t\tfor(var key in definition) {\n\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t\t}\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + {\"4005\":\"aee79e7f1049b5e8188f\",\"4017\":\"d1523b8db423fbe47986\",\"5236\":\"295a99f2ba6e3a05a834\",\"7859\":\"0aa7564896cee7ea552c\",\"8259\":\"e914ef6a65a38374620a\",\"8374\":\"e925f5901b71aeaa37db\",\"8689\":\"5fcce4026be999b251c3\"}[chunkId] + \"\";\n};","__webpack_require__.o = (obj, prop) => (Object.hasOwn(obj, prop))","const inProgress = {};\nconst dataWebpackPrefix = \"nextcloud-ui-legacy:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tlet script, needAttach;\n\tif(key !== undefined) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tconst s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tconst onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tconst doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode?.removeChild(script);\n\t\tdoneFns?.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tconst timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 5404;","// set .name for anonymous default exports per ES spec\n// skipped when the property is non-configurable (pre-ES2015 engines),\n// where Object.defineProperty would throw\n__webpack_require__.dn = (x) => {\n\tvar descriptor = Object.getOwnPropertyDescriptor(x, \"name\");\n\tif (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, \"name\", { value: \"default\", configurable: true });\n};","// execute a CommonJS module body with real module/exports objects, returning the final exports\n__webpack_require__.cjs = (body) => {\n\tconst mod = { exports: {} };\n\tbody.call(mod.exports, mod, mod.exports);\n\treturn mod.exports;\n};","let scriptUrl;\nif (globalThis.importScripts) scriptUrl = globalThis.location + \"\";\nconst document = globalThis.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript?.tagName.toUpperCase() === 'SCRIPT')\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tconst scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tlet i = scripts.length - 1;\n\t\t\twhile (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/^blob:/, \"\").replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nconst installedChunks = {\n\t5404: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tlet installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tconst promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tconst url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tconst error = new Error();\n\t\t\t\t\tconst loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tconst errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tconst realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\terror.event = event;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nconst webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tlet [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nconst chunkLoadingGlobal = globalThis[\"webpackChunknextcloud_ui_legacy\"] ||= [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nlet __webpack_exports__ = __webpack_require__.O(undefined, [4208], () => (__webpack_require__(86693)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["SanitizeFilenameStatus","logger","getLoggerBuilder","setApp","detectUser","build","Settings_SettingsSanitizeFilenamesvue_type_script_setup_true_lang_ts","_defineComponent","__name","setup","__props","status","initialStatus","loadState","loading","ref","renameLimit","processedUsers","processed","totalUsers","total","errors","shallowRef","progress","computed","value","Math","round","isRunning","Scheduled","Running","__sfc","startSanitization","async","axios","post","generateOcsUrl","limit","error","isAxiosError","response","data","ocs","showError","meta","message","t","refreshStatus","get","l10n_dist","NcButton","A","NcInputField","NcLoadingIcon","NcNoteCard","NcProgressBar","options","styleTagTransform","styleTagTransform_default","setAttributes","setAttributesWithoutAttributes_default","insert","insertBySelector_default","bind","domAPI","styleDomAPI_default","insertStyleElement","insertStyleElement_default","injectStylesIntoStyleTag_default","SettingsSanitizeFilenamesvue_type_style_index_0_id_51ab1271_prod_scoped_true_lang_css","locals","component","componentNormalizer","_vm","this","_c","_self","_setup","_setupProxy","staticClass","_v","_s","attrs","size","variant","on","click","scopedSlots","_u","key","fn","proxy","Done","type","disabled","submit","$event","stopPropagation","preventDefault","apply","arguments","Error","_l","Object","entries","user","failedFiles","file","_e","label","min","model","callback","$$v","expression","SettingsSanitizeFilenames","views_SettingsAdminvue_type_script_setup_true_lang_ts","docUrl","isRunningSanitization","windowsSupport","description","hasWindowsSupport","toggleWindowsFilenameSupport","enabled","NcCheckboxRadioSwitch","NcSettingsSection","SettingsAdminvue_type_style_index_0_id_739c627a_prod_scoped_true_lang_css_options","SettingsAdminvue_type_style_index_0_id_739c627a_prod_scoped_true_lang_css","SettingsAdmin","name","__webpack_nonce__","getCSPNonce","Vue","prototype","extend","PersonalSettings","$mount","___CSS_LOADER_EXPORT___","_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default","_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default","push","module","id","version","sources","names","mappings","sourcesContent","sourceRoot","__WEBPACK_DEFAULT_EXPORT__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","loaded","__webpack_modules__","call","m","deferred","O","result","chunkIds","priority","i","length","notFulfilled","Infinity","fulfilled","j","keys","every","splice","r","n","getter","__esModule","d","a","definition","Array","isArray","binding","o","defineProperty","enumerable","f","e","chunkId","Promise","all","reduce","promises","u","obj","prop","hasOwn","inProgress","dataWebpackPrefix","l","url","done","script","needAttach","scripts","document","getElementsByTagName","s","getAttribute","createElement","charset","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","timeout","doneFns","parentNode","removeChild","forEach","setTimeout","target","head","appendChild","Symbol","toStringTag","nmd","paths","children","dn","x","descriptor","getOwnPropertyDescriptor","writable","configurable","cjs","body","mod","scriptUrl","globalThis","importScripts","location","currentScript","tagName","toUpperCase","test","replace","p","b","baseURI","self","href","installedChunks","installedChunkData","promise","resolve","reject","loadingEnded","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}