TYPO3 v15 dev-main snapshot ()

This commit is contained in:
2026-08-10 22:31:31 +02:00
commit 3e43c11539
407 changed files with 51272 additions and 0 deletions
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import h from"@typo3/core/ajax/ajax-request.js";class n{constructor(){this.requests=[],this.requestCount=0,this.threshold=5,this.queue=[]}add(e){this.queue.push(e),this.handleNext()}flush(){this.queue=[],this.requests.forEach(e=>e.abort()),this.requests=[]}handleNext(){this.queue.length>0&&this.requestCount<this.threshold&&(this.incrementRequestCount(),this.sendRequest(this.queue.shift()).finally(()=>{this.decrementRequestCount(),this.handleNext()}))}async sendRequest(e){const t=new h(e.url);let s;return typeof e.method<"u"&&e.method.toUpperCase()==="POST"?s=t.post(e.data):s=t.withQueryArguments(e.data||{}).get(),this.requests.push(t),s.then(e.onfulfilled,e.onrejected).then(()=>{const u=this.requests.indexOf(t);this.requests.splice(u,1)})}incrementRequestCount(){this.requestCount++}decrementRequestCount(){this.requestCount>0&&this.requestCount--}}var i=new n;export{i as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
self.TYPO3={},import("@typo3/install/install.js");
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
self.TYPO3={},import("@typo3/install/installer.js");
+13
View File
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import t from"@typo3/core/document-service.js";import r from"@typo3/install/router.js";class e{constructor(){t.ready().then(()=>{r.initialize()})}}var o=new e;export{o as default};
File diff suppressed because one or more lines are too long
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
class s{setButtonState(t,e){t.disabled=!e}}export{s as AbstractInlineModule};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{topLevelModuleImport as d}from"@typo3/backend/utility/top-level-module-import.js";var n;(function(a){a.modalBody=".t3js-modal-body",a.modalContent=".t3js-module-content",a.modalFooter=".t3js-modal-footer"})(n||(n={}));class s{initialize(o){this.currentModal=o}getModalBody(){return this.findInModal(n.modalBody)}getModuleContent(){return this.findInModal(n.modalContent)}getModalFooter(){return this.findInModal(n.modalFooter)}findInModal(o){return this.currentModal.querySelector(o)}setModalButtonsState(o){this.getModalFooter()?.querySelectorAll("button").forEach(e=>{this.setModalButtonState(e,o)})}setModalButtonState(o,e){o.classList.toggle("disabled",!e),o.disabled=!e}async loadModuleFrameAgnostic(o){window.location!==window.parent.location?await d(o):await import(o)}renderProgressBar(o,e,l){this.loadModuleFrameAgnostic("@typo3/backend/element/progress-bar-element.js"),o=o||this.currentModal;const t=o.ownerDocument.createElement("typo3-backend-progress-bar");return typeof e=="object"&&Object.keys(e).forEach(r=>{t[r]=e[r]}),l==="append"?o.append(t):l==="prepend"?o.prepend(t):o.replaceChildren(t),t}}export{s as AbstractInteractableModule};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as c}from"@typo3/install/module/abstract-interactable-module.js";import l from"@typo3/backend/modal.js";import m from"@typo3/backend/notification.js";import f from"@typo3/core/ajax/ajax-request.js";import{InfoBox as h}from"@typo3/install/renderable/info-box.js";import i from"@typo3/install/router.js";import p from"@typo3/core/event/regular-event.js";var o;(function(n){n.executeTrigger=".t3js-environmentCheck-execute",n.outputContainer=".t3js-environmentCheck-output"})(o||(o={}));class d extends c{initialize(e){super.initialize(e),this.loadModuleFrameAgnostic("@typo3/install/renderable/info-box.js").then(()=>{this.runTests()}),new p("click",s=>{s.preventDefault(),this.runTests()}).delegateTo(e,o.executeTrigger)}runTests(){this.setModalButtonsState(!1);const e=this.getModalBody(),s=e.querySelector(o.outputContainer);s!==null&&this.renderProgressBar(s),new f(i.getUrl("environmentCheckGetStatus")).get({cache:"no-cache"}).then(async r=>{const t=await r.resolve();if(e.innerHTML=t.html,l.setButtons(t.buttons),t.success===!0&&typeof t.status=="object")for(const u of Object.values(t.status))for(const a of u)e.querySelector(o.outputContainer).append(h.create(a.severity,a.title,a.message));else m.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},r=>{i.handleAjaxError(r,e)}).finally(()=>{this.setModalButtonsState(!0)})}}var g=new d;export{g as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as y}from"@typo3/install/module/abstract-interactable-module.js";import f from"@typo3/backend/modal.js";import p from"@typo3/backend/notification.js";import d from"@typo3/core/ajax/ajax-request.js";import{InfoBox as l}from"@typo3/install/renderable/info-box.js";import S from"@typo3/install/renderable/severity.js";import u from"@typo3/install/router.js";import g from"@typo3/core/event/regular-event.js";var o;(function(a){a.outputContainer=".t3js-folderStructure-output",a.errorContainer=".t3js-folderStructure-errors",a.errorList=".t3js-folderStructure-errors-list",a.errorFixTrigger=".t3js-folderStructure-errors-fix",a.okContainer=".t3js-folderStructure-ok",a.okList=".t3js-folderStructure-ok-list",a.permissionContainer=".t3js-folderStructure-permissions"})(o||(o={}));class c extends y{static removeLoadingMessage(e){e.querySelector("typo3-backend-progress-bar").remove()}initialize(e){super.initialize(e),this.loadModuleFrameAgnostic("@typo3/install/renderable/info-box.js").then(()=>{this.getStatus()}),new g("click",r=>{r.preventDefault(),this.fix()}).delegateTo(e,o.errorFixTrigger)}getStatus(){const e=this.getModalBody();new d(u.getUrl("folderStructureGetStatus")).get({cache:"no-cache"}).then(async r=>{const t=await r.resolve();e.innerHTML=t.html,f.setButtons(t.buttons),t.success===!0&&Array.isArray(t.errorStatus)&&(t.errorStatus.length>0?(e.querySelector(o.errorContainer).style.display="block",e.querySelector(o.errorList).innerHTML="",t.errorStatus.forEach(i=>{e.querySelector(o.errorList).appendChild(l.create(i.severity,i.title,i.message))})):e.querySelector(o.errorContainer).style.display="none"),t.success===!0&&Array.isArray(t.okStatus)&&(t.okStatus.length>0?(e.querySelector(o.okContainer).style.display="block",e.querySelector(o.okList).innerHTML="",t.okStatus.forEach(i=>{e.querySelector(o.okList).appendChild(l.create(i.severity,i.title,i.message))})):e.querySelector(o.okContainer).style.display="none");let s=t.folderStructureFilePermissionStatus;const n=e.querySelector(o.permissionContainer);n.replaceChildren(l.create(s.severity,s.title,s.message)),s=t.folderStructureDirectoryPermissionStatus,n.appendChild(l.create(s.severity,s.title,s.message))},r=>{u.handleAjaxError(r,e)})}fix(){this.setModalButtonsState(!1);const e=this.getModalBody(),r=this.findInModal(o.outputContainer);r.style.display="block",this.renderProgressBar(r),new d(u.getUrl("folderStructureFix")).get({cache:"no-cache"}).then(async t=>{const s=await t.resolve();c.removeLoadingMessage(r),s.success===!0&&Array.isArray(s.fixedStatus)?(s.fixedStatus.length>0?s.fixedStatus.forEach(n=>{r.append(l.create(n.severity,n.title,n.message))}):r.append(l.create(S.warning,"Nothing fixed")),this.getStatus()):(r.style.display="none",p.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log."))},t=>{r.style.display="none",u.handleAjaxError(t,e)}).finally(()=>{this.setModalButtonsState(!0)})}}var h=new c;export{h as default};
@@ -0,0 +1,16 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as T}from"@typo3/install/module/abstract-interactable-module.js";import w from"@typo3/backend/modal.js";import y from"@typo3/backend/notification.js";import h from"@typo3/core/ajax/ajax-request.js";import{InfoBox as f}from"@typo3/install/renderable/info-box.js";import x from"@typo3/install/renderable/severity.js";import m from"@typo3/install/router.js";import A from"@typo3/core/event/regular-event.js";var o;(function(n){n.executeTrigger=".t3js-imageProcessing-execute",n.testContainer=".t3js-imageProcessing-twinContainer",n.twinImageTemplate="#t3js-imageProcessing-twinImage-template",n.commandContainer=".t3js-imageProcessing-command",n.commandText=".t3js-imageProcessing-command-text",n.twinImages=".t3js-imageProcessing-images"})(o||(o={}));class P extends T{initialize(t){super.initialize(t),this.loadModuleFrameAgnostic("@typo3/install/renderable/info-box.js").then(()=>{this.getData()}),new A("click",a=>{a.preventDefault(),this.runTests()}).delegateTo(t,o.executeTrigger)}getData(){const t=this.getModalBody();new h(m.getUrl("imageProcessingGetData")).get({cache:"no-cache"}).then(async a=>{const r=await a.resolve();r.success===!0?(t.innerHTML=r.html,w.setButtons(r.buttons),this.runTests()):y.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},a=>{m.handleAjaxError(a,t)})}runTests(){const t=this.getModalBody();this.setModalButtonsState(!1);const a=this.findInModal(o.twinImageTemplate),r=[];t.querySelectorAll(o.testContainer).forEach(c=>{c.replaceChildren(f.create(x.loading,"Loading..."));const p=new h(m.getUrl(c.dataset.test)).get({cache:"no-cache"}).then(async l=>{const e=await l.resolve();if(e.success===!0){c.innerHTML="",Array.isArray(e.status)&&e.status.forEach(s=>{c.append(f.create(s.severity,s.title,s.message))});const i=a.content.cloneNode(!0);if(e.fileExists===!0&&(i.querySelector("img.reference")?.setAttribute("src",e.referenceFile),i.querySelector("img.result")?.setAttribute("src",e.outputFile),i.querySelectorAll(o.twinImages).forEach(s=>s.hidden=!1)),Array.isArray(e.command)&&e.command.length>0){const s=i.querySelector(o.commandContainer);s!==null&&(s.hidden=!1);const g=[];e.command.forEach(u=>{g.push(`<strong>Command:</strong>
`+u[1]),u.length===3&&g.push(`<strong>Result:</strong>
`+u[2])});const d=i.querySelector(o.commandText);d!==null&&(d.innerHTML=g.join(`
`))}c.append(i)}},l=>{m.handleAjaxError(l,t)});r.push(p)}),Promise.all(r).then(()=>{this.setModalButtonsState(!0)})}}var j=new P;export{j as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as m}from"@typo3/install/module/abstract-interactable-module.js";import h from"@typo3/backend/modal.js";import i from"@typo3/backend/notification.js";import c from"@typo3/core/ajax/ajax-request.js";import{InfoBox as u}from"@typo3/install/renderable/info-box.js";import l from"@typo3/install/router.js";import d from"@typo3/core/event/regular-event.js";var a;(function(r){r.outputContainer=".t3js-mailTest-output",r.mailTestButton=".t3js-mailTest-execute"})(a||(a={}));class f extends m{initialize(s){super.initialize(s),this.loadModuleFrameAgnostic("@typo3/install/renderable/info-box.js").then(()=>{this.getData()}),new d("click",e=>{e.preventDefault(),this.send()}).delegateTo(s,a.mailTestButton),new d("submit",e=>{e.preventDefault(),this.send()}).delegateTo(s,"form")}getData(){const s=this.getModalBody();new c(l.getUrl("mailTestGetData")).get({cache:"no-cache"}).then(async e=>{const t=await e.resolve();if(t.success===!0){s.innerHTML=t.html;const n=this.findInModal(a.outputContainer);t.messages&&Array.isArray(t.messages)&&t.messages.forEach(o=>{n.append(u.create(o.severity,o.title,o.message))}),t.sendPossible&&h.setButtons(t.buttons)}else i.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},e=>{l.handleAjaxError(e,s)})}send(){this.setModalButtonsState(!1);const s=this.getModuleContent().dataset.mailTestToken,e=this.findInModal(a.outputContainer);this.renderProgressBar(e),new c(l.getUrl()).post({install:{action:"mailTest",token:s,email:this.findInModal(".t3js-mailTest-email").value}}).then(async t=>{const n=await t.resolve();e.innerHTML="",Array.isArray(n.status)?n.status.forEach(o=>{e.innerHTML="",e.append(u.create(o.severity,o.title,o.message))}):i.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},()=>{i.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")}).finally(()=>{this.setModalButtonsState(!0)})}}var p=new f;export{p as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import r from"@typo3/backend/notification.js";import s from"@typo3/core/ajax/ajax-request.js";import a from"@typo3/install/router.js";import{AbstractInteractableModule as n}from"@typo3/install/module/abstract-interactable-module.js";class i extends n{initialize(e){super.initialize(e),this.getData()}getData(){const e=this.getModalBody();new s(a.getUrl("phpInfoGetData")).get({cache:"no-cache"}).then(async t=>{const o=await t.resolve();o.success===!0?e.innerHTML=o.html:r.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},t=>{a.handleAjaxError(t,e)})}}var c=new i;export{c as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import s from"@typo3/backend/notification.js";import r from"@typo3/core/ajax/ajax-request.js";import a from"@typo3/install/router.js";import{AbstractInteractableModule as n}from"@typo3/install/module/abstract-interactable-module.js";class i extends n{initialize(e){super.initialize(e),this.getData()}getData(){const e=this.getModalBody();new r(a.getUrl("systemInformationGetData")).get({cache:"no-cache"}).then(async t=>{const o=await t.resolve();o.success===!0?e.innerHTML=o.html:s.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},t=>{a.handleAjaxError(t,e)})}}var c=new i;export{c as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import t from"@typo3/backend/notification.js";import o from"@typo3/core/ajax/ajax-request.js";import n from"@typo3/install/router.js";import{AbstractInlineModule as i}from"@typo3/install/module/abstract-inline-module.js";class c extends i{initialize(r){this.setButtonState(r,!1),new o(n.getUrl("cacheClearAll","maintenance")).get({cache:"no-cache"}).then(async s=>{const e=await s.resolve();e.success===!0&&Array.isArray(e.status)?e.status.length>0&&e.status.forEach(a=>{t.success(a.title,a.message)}):t.error("Something went wrong clearing caches")},()=>{t.error("Clearing caches failed","Clearing caches went wrong on the server side. Check the system for broken extensions or missing database tables and try again. Also ensure you are properly authenticated and the server does not report specific PHP parse errors or JavaScript errors are listed in the browser console.")}).finally(()=>{this.setButtonState(r,!0)})}}var l=new c;export{l as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{AbstractInteractableModule as T}from"@typo3/install/module/abstract-interactable-module.js";import h from"@typo3/backend/modal.js";import c from"@typo3/backend/notification.js";import u from"@typo3/core/ajax/ajax-request.js";import n from"@typo3/install/router.js";import g from"@typo3/core/event/regular-event.js";var t;(function(l){l.clearTrigger=".t3js-clearTables-clear",l.statsTrigger=".t3js-clearTables-stats",l.statContainer=".t3js-clearTables-stat-container",l.statTemplate="#t3js-clearTables-stat-template",l.statDescription=".t3js-clearTables-stat-description",l.statRows=".t3js-clearTables-stat-rows",l.statName=".t3js-clearTables-stat-name"})(t||(t={}));class b extends T{initialize(e){super.initialize(e),this.getStats(),new g("click",r=>{r.preventDefault(),e.querySelector(t.statContainer).innerHTML="",this.getStats()}).delegateTo(e,t.statsTrigger),new g("click",(r,s)=>{const a=s.closest(t.clearTrigger).dataset.table;r.preventDefault(),this.clear(a)}).delegateTo(e,t.clearTrigger)}getStats(){this.setModalButtonsState(!1);const e=this.getModalBody();new u(n.getUrl("clearTablesStats")).get({cache:"no-cache"}).then(async r=>{const s=await r.resolve();s.success===!0?(e.innerHTML=s.html,h.setButtons(s.buttons),Array.isArray(s.stats)&&s.stats.length>0&&s.stats.forEach(a=>{if(a.rowCount>0){const o=e.querySelector(t.statTemplate).content.cloneNode(!0);o.querySelector(t.statDescription).innerText=a.description,o.querySelector(t.statName).innerText=a.name,o.querySelector(t.statRows).innerText=a.rowCount,o.querySelector(t.clearTrigger).setAttribute("data-table",a.name),e.querySelector(t.statContainer).append(o)}})):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},r=>{n.handleAjaxError(r,e)}).finally(()=>{this.setModalButtonsState(!0)})}clear(e){const r=this.getModalBody(),s=this.getModuleContent().dataset.clearTablesClearToken;new u(n.getUrl()).post({install:{action:"clearTablesClear",token:s,table:e}}).then(async a=>{const o=await a.resolve();o.success===!0&&Array.isArray(o.status)?o.status.forEach(i=>{c.success(i.title,i.message)}):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log."),this.getStats()},a=>{n.handleAjaxError(a,r)})}}var d=new b;export{d as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{AbstractInteractableModule as g}from"@typo3/install/module/abstract-interactable-module.js";import y from"@typo3/backend/modal.js";import c from"@typo3/backend/notification.js";import u from"@typo3/core/ajax/ajax-request.js";import n from"@typo3/install/router.js";import p from"@typo3/core/event/regular-event.js";var a;(function(l){l.deleteTrigger=".t3js-clearTypo3temp-delete",l.statContainer=".t3js-clearTypo3temp-stat-container",l.statsTrigger=".t3js-clearTypo3temp-stats",l.statTemplate="#t3js-clearTypo3temp-stat-template",l.statNumberOfFiles=".t3js-clearTypo3temp-stat-numberOfFiles",l.statDirectory=".t3js-clearTypo3temp-stat-directory"})(a||(a={}));class m extends g{initialize(t){super.initialize(t),this.getStats(),new p("click",o=>{o.preventDefault(),t.querySelector(a.statContainer).innerHTML="",this.getStats()}).delegateTo(t,a.statsTrigger),new p("click",(o,e)=>{o.preventDefault();const r=e.dataset.folder,s=e.dataset.storageUid!==void 0?parseInt(e.dataset.storageUid,10):void 0;this.delete(r,s)}).delegateTo(t,a.deleteTrigger)}getStats(){this.setModalButtonsState(!1);const t=this.getModalBody();new u(n.getUrl("clearTypo3tempFilesStats")).get({cache:"no-cache"}).then(async o=>{const e=await o.resolve();e.success===!0?(t.innerHTML=e.html,y.setButtons(e.buttons),Array.isArray(e.stats)&&e.stats.length>0&&e.stats.forEach(r=>{if(r.numberOfFiles>0){const s=t.querySelector(a.statTemplate).content.cloneNode(!0);s.querySelector(a.statNumberOfFiles).innerText=r.numberOfFiles,s.querySelector(a.statDirectory).innerText=r.directory,s.querySelector(a.deleteTrigger).setAttribute("data-folder",r.directory),r.storageUid!==void 0&&s.querySelector(a.deleteTrigger).setAttribute("data-storage-uid",r.storageUid),t.querySelector(a.statContainer).append(s)}})):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},o=>{n.handleAjaxError(o,t)}).finally(()=>{this.setModalButtonsState(!0)})}delete(t,o){const e=this.getModalBody(),r=this.getModuleContent().dataset.clearTypo3tempDeleteToken;new u(n.getUrl()).post({install:{action:"clearTypo3tempFiles",token:r,folder:t,storageUid:o}}).then(async s=>{const i=await s.resolve();i.success===!0&&Array.isArray(i.status)?(i.status.forEach(d=>{c.success(d.title,d.message)}),this.getStats()):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},s=>{n.handleAjaxError(s,e)})}}var T=new m;export{T as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import c from"@typo3/backend/modal.js";import l from"@typo3/backend/notification.js";import u from"@typo3/core/ajax/ajax-request.js";import o from"@typo3/install/router.js";import m from"@typo3/install/module/password-strength.js";import{AbstractInteractableModule as h}from"@typo3/install/module/abstract-interactable-module.js";import p from"@typo3/core/event/regular-event.js";var e;(function(t){t.adminCreateButton=".t3js-createAdmin-create",t.adminUserInput=".t3js-createAdmin-user",t.adminRealNameInput=".t3js-createAdmin-realname",t.adminPasswordInput=".t3js-createAdmin-password",t.adminPasswordCheckInput=".t3js-createAdmin-password-check",t.adminEmailInput=".t3js-createAdmin-email",t.adminSysMaintainterInput=".t3js-createAdmin-system-maintainer"})(e||(e={}));class f extends h{initialize(a){super.initialize(a),this.getData(),new p("click",s=>{s.preventDefault(),this.create()}).delegateTo(a,e.adminCreateButton)}getData(){const a=this.getModalBody();new u(o.getUrl("createAdminGetData")).get({cache:"no-cache"}).then(async s=>{const r=await s.resolve();r.success===!0?(a.innerHTML=r.html,m.initialize(a.querySelector(".t3-install-form-password-strength")),c.setButtons(r.buttons)):l.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},s=>{o.handleAjaxError(s,a)})}create(){this.setModalButtonsState(!1);const a=this.getModalBody(),r={install:{action:"createAdmin",token:this.getModuleContent().dataset.createAdminToken,userName:this.findInModal(e.adminUserInput).value,userPassword:this.findInModal(e.adminPasswordInput).value,userPasswordCheck:this.findInModal(e.adminPasswordCheckInput).value,userEmail:this.findInModal(e.adminEmailInput).value,realName:this.findInModal(e.adminRealNameInput).value,userSystemMaintainer:this.findInModal(e.adminSysMaintainterInput).checked?1:0}};this.getModuleContent().querySelectorAll("input").forEach(n=>{n.disabled=!0}),new u(o.getUrl()).post(r).then(async n=>{const i=await n.resolve();i.success===!0&&Array.isArray(i.status)?(i.status.forEach(d=>{l.showMessage(d.title,d.message,d.severity)}),i.userCreated&&(this.findInModal(e.adminUserInput).value="",this.findInModal(e.adminPasswordInput).value="",this.findInModal(e.adminPasswordCheckInput).value="",this.findInModal(e.adminEmailInput).value="",this.findInModal(e.adminSysMaintainterInput).checked=!1)):l.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},n=>{o.handleAjaxError(n,a)}).finally(()=>{this.setModalButtonsState(!0),this.getModuleContent().querySelectorAll("input").forEach(n=>{n.disabled=!1})})}}var w=new f;export{w as default};
File diff suppressed because one or more lines are too long
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import t from"@typo3/backend/notification.js";import r from"@typo3/core/ajax/ajax-request.js";import n from"@typo3/install/router.js";import{AbstractInlineModule as u}from"@typo3/install/module/abstract-inline-module.js";class i extends u{initialize(s){this.setButtonState(s,!1),new r(n.getUrl("dumpAutoload")).get({cache:"no-cache"}).then(async o=>{const e=await o.resolve();e.success===!0&&Array.isArray(e.status)?e.status.length>0&&e.status.forEach(a=>{t.success(a.message)}):t.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},()=>{t.error("Autoloader not dumped","Dumping autoload files failed for unknown reasons. Check the system for broken extensions and try again.")}).finally(()=>{this.setButtonState(s,!0)})}}var l=new i;export{l as default};
File diff suppressed because one or more lines are too long
@@ -0,0 +1,25 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{AbstractInteractableModule as v}from"@typo3/install/module/abstract-interactable-module.js";import I from"@typo3/backend/modal.js";import k from"@typo3/backend/notification.js";import d from"@typo3/core/ajax/ajax-request.js";import a from"@typo3/install/router.js";import u from"@typo3/core/event/regular-event.js";import"@typo3/backend/element/icon-element.js";var o;(function(r){r.checkButton=".t3js-referenceIndex-check",r.updateButton=".t3js-referenceIndex-update",r.resultContainer=".t3js-referenceIndex-result"})(o||(o={}));class y extends v{initialize(t){super.initialize(t),this.loadContent(),new u("click",e=>{e.preventDefault(),this.check()}).delegateTo(t,o.checkButton),new u("click",e=>{e.preventDefault(),this.update()}).delegateTo(t,o.updateButton)}loadContent(){const t=this.getModalBody();new d(a.getUrl("referenceIndex")).get({cache:"no-cache"}).then(async e=>{const n=await e.resolve();n.success===!0&&n.html!==void 0&&(t.innerHTML=n.html,n.buttons!==void 0&&I.setButtons(n.buttons))},e=>{a.handleAjaxError(e,t)})}check(){this.processReferenceIndex(!0)}update(){this.processReferenceIndex(!1)}processReferenceIndex(t){this.setModalButtonsState(!1);const e=this.getModalBody(),n=e.querySelector(o.resultContainer),f=this.renderProgressBar(n,{label:t?"Checking reference index...":"Updating reference index..."});new d(a.getUrl()).post({install:{action:"referenceIndexUpdate",token:this.getModuleContent().dataset.referenceIndexToken,checkOnly:t?"1":"0"}}).then(async l=>{const s=await l.resolve();if(f.remove(),s.success===!0&&s.result&&n){const c=s.result.errors&&s.result.errors.length>0,h=c?"warning":"success",p=c?"actions-exclamation":"actions-check",m=s.result.resultText||(c?"Issues Found":"Reference index is up to date");let i="";c?i=`<ul class="list-unstyled">${s.result.errors.map(g=>`<li>${g}</li>`).join("")}</ul>`:i="Index integrity is perfect.";const x=`
<div class="callout callout-${h}">
<div class="callout-icon">
<span class="icon-emphasized">
<typo3-backend-icon identifier="${p}" size="small"></typo3-backend-icon>
</span>
</div>
<div class="callout-content">
<div class="callout-title">${m}</div>
<div class="callout-body">${i}</div>
</div>
</div>
`;n.innerHTML=x}else k.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},l=>{a.handleAjaxError(l,e)}).finally(()=>{this.setModalButtonsState(!0)})}}var w=new y;export{w as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import o from"@typo3/core/ajax/ajax-request.js";import{AbstractInlineModule as n}from"@typo3/install/module/abstract-inline-module.js";import s from"@typo3/backend/notification.js";import c from"@typo3/install/router.js";class i extends n{initialize(t){this.setButtonState(t,!1),new o(c.getUrl("resetBackendUserUc")).get({cache:"no-cache"}).then(async a=>{const e=await a.resolve();e.success===!0&&Array.isArray(e.status)?e.status.length>0&&e.status.forEach(r=>{s.success(r.title,r.message)}):s.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},()=>{s.error("Reset preferences of all backend users failed","Resetting preferences of all backend users failed for an unknown reason. Please check your server's logs for further investigation.")}).finally(()=>{this.setButtonState(t,!0)})}}var l=new i;export{l as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import r from"@typo3/core/event/regular-event.js";class o{initialize(s){new r("keyup",a=>{const e=a.target;this.checkPassword(e)}).bindTo(s),new r("blur",a=>{a.target.classList.remove("has-error","has-success","has-warning")}).bindTo(s),new r("focus",a=>{const e=a.target;this.checkPassword(e)}).bindTo(s)}checkPassword(s){const a=s.value,e=new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$","g"),t=new RegExp("^(?=.{8,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))).*$","g"),c=new RegExp("(?=.{8,}).*","g");s.classList.remove("has-error","has-success","has-warning"),a.length===0?s.classList.add("has-error"):c.test(a)?e.test(a)?s.classList.add("has-success"):(t.test(a),s.classList.add("has-warning")):s.classList.add("has-error")}}var n=new o;export{n as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import d from"@typo3/backend/modal.js";import l from"@typo3/backend/notification.js";import c from"@typo3/core/ajax/ajax-request.js";import o from"@typo3/install/router.js";import h from"@typo3/install/module/password-strength.js";import{AbstractInteractableModule as g}from"@typo3/install/module/abstract-interactable-module.js";import u from"@typo3/core/event/regular-event.js";var r;(function(i){i.changeButton=".t3js-changeInstallToolPassword-change"})(r||(r={}));class w extends g{initialize(s){super.initialize(s),this.getData(),new u("click",t=>{t.preventDefault(),this.change()}).delegateTo(s,r.changeButton)}getData(){const s=this.getModalBody();new c(o.getUrl("changeInstallToolPasswordGetData")).get({cache:"no-cache"}).then(async t=>{const e=await t.resolve();e.success===!0?(s.innerHTML=e.html,h.initialize(s.querySelector(".t3-install-form-password-strength")),d.setButtons(e.buttons)):l.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},t=>{o.handleAjaxError(t,s)})}change(){this.setModalButtonsState(!1);const s=this.getModalBody(),t=this.getModuleContent().dataset.installToolToken;new c(o.getUrl()).post({install:{action:"changeInstallToolPassword",token:t,password:this.findInModal(".t3js-changeInstallToolPassword-password").value,passwordCheck:this.findInModal(".t3js-changeInstallToolPassword-password-check").value}}).then(async e=>{const a=await e.resolve();a.success===!0&&Array.isArray(a.status)?a.status.forEach(n=>{l.showMessage(n.title,n.message,n.severity)}):l.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},e=>{o.handleAjaxError(e,s)}).finally(()=>{this.findInModal(".t3js-changeInstallToolPassword-password").value="",this.findInModal(".t3js-changeInstallToolPassword-password-check").value="",this.setModalButtonsState(!0)})}}var f=new w;export{f as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{Collapse as h}from"bootstrap";import"@typo3/install/renderable/wrap-group.js";import"@typo3/install/renderable/offset-group.js";import{AbstractInteractableModule as w}from"@typo3/install/module/abstract-interactable-module.js";import g from"@typo3/backend/module-menu.js";import u from"@typo3/backend/notification.js";import p from"@typo3/core/ajax/ajax-request.js";import l from"@typo3/install/router.js";import{topLevelModuleImport as f}from"@typo3/backend/utility/top-level-module-import.js";import c from"@typo3/core/event/regular-event.js";import y from"@typo3/core/event/debounce-event.js";var n;(function(d){d.formListener=".t3js-extensionConfiguration-form",d.searchInput=".t3js-extensionConfiguration-search"})(n||(n={}));class m extends w{initialize(o){super.initialize(o),this.getContent(),new c("keydown",e=>{const t=o.querySelector(n.searchInput);(e.ctrlKey||e.metaKey)&&(e.key==="f"||e.key==="F")&&(e.preventDefault(),t.focus())}).bindTo(o),new y("input",(e,t)=>{const a=t.value;this.search(a)},100).delegateTo(o,n.searchInput),new c("change",(e,t)=>{const a=t.value;this.search(a)}).delegateTo(o,n.searchInput),new c("submit",(e,t)=>{e.preventDefault(),this.write(t)}).delegateTo(o,n.formListener)}search(o){this.currentModal.querySelectorAll(".search-item").forEach(e=>{o===""||e.textContent.toLowerCase().trim().includes(o.toLowerCase())?(e.classList.add("searchhit"),e.classList.remove("hidden")):(e.classList.remove("searchhit"),e.classList.add("hidden"))}),this.currentModal.querySelectorAll(".searchhit").forEach(e=>{h.getOrCreateInstance(e).show()})}getContent(){const o=this.getModalBody();new p(l.getUrl("extensionConfigurationGetContent")).get({cache:"no-cache"}).then(async e=>{const t=await e.resolve();t.success===!0&&(o.innerHTML=t.html,this.initializeWrap(),this.initializeColorPicker())},e=>{l.handleAjaxError(e,o)})}initializeColorPicker(){window.location!==window.parent.location?f("@typo3/backend/color-picker.js"):import("@typo3/backend/color-picker.js")}write(o){const e=this.getModalBody(),t=this.getModuleContent().dataset.extensionConfigurationWriteToken,a={};for(const[i,s]of new FormData(o))a[i]=s.toString();new p(l.getUrl()).post({install:{token:t,action:"extensionConfigurationWrite",extensionKey:o.dataset.extensionKey,extensionConfiguration:a}}).then(async i=>{const s=await i.resolve();s.success===!0&&Array.isArray(s.status)?(s.status.forEach(r=>{u.showMessage(r.title,r.message,r.severity)}),document.body.dataset.context==="backend"&&g.App.refreshMenu()):u.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},i=>{l.handleAjaxError(i,e)})}initializeWrap(){window.location!==window.parent.location&&(f("@typo3/install/renderable/wrap-group.js"),f("@typo3/install/renderable/offset-group.js")),this.currentModal.querySelectorAll(".t3js-emconf-offset").forEach(e=>{const t=e.parentElement;e.setAttribute("data-offsetfield-x","#"+e.id+"_offset_x"),e.setAttribute("data-offsetfield-y","#"+e.id+"_offset_y"),e.classList.add("hidden");const a=t.ownerDocument.createElement("typo3-install-offset-group");a.offsetId=e.id,a.values=e.value.split(","),t.appendChild(a),new c("keyup",(i,s)=>{const r=t.querySelector(s.dataset.target);r.value=t.querySelector(r.dataset.offsetfieldX).value+","+t.querySelector(r.dataset.offsetfieldY).value}).delegateTo(t,".t3js-emconf-offsetfield")}),this.currentModal.querySelectorAll(".t3js-emconf-wrap").forEach(e=>{const t=e.parentElement;e.setAttribute("data-wrapfield-start","#"+e.id+"_wrap_start"),e.setAttribute("data-wrapfield-end","#"+e.id+"_wrap_end"),e.classList.add("hidden");const a=t.ownerDocument.createElement("typo3-install-wrap-group");a.wrapId=e.id,a.values=e.value.split("|"),t.appendChild(a),new c("keyup",(i,s)=>{const r=t.querySelector(s.dataset.target);r.value=t.querySelector(r.dataset.wrapfieldStart).value+"|"+t.querySelector(r.dataset.wrapfieldEnd).value}).delegateTo(t,".t3js-emconf-wrapfield")})}}var v=new m;export{v as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{AbstractInteractableModule as h}from"@typo3/install/module/abstract-interactable-module.js";import d from"@typo3/backend/modal.js";import i from"@typo3/backend/notification.js";import u from"@typo3/core/ajax/ajax-request.js";import n from"@typo3/install/router.js";import g from"@typo3/core/event/regular-event.js";var l;(function(c){c.saveTrigger=".t3js-features-save"})(l||(l={}));class m extends h{initialize(t){super.initialize(t),this.getContent(),new g("click",s=>{s.preventDefault(),this.save()}).delegateTo(t,l.saveTrigger)}getContent(){const t=this.getModalBody();new u(n.getUrl("featuresGetContent")).get({cache:"no-cache"}).then(async s=>{const e=await s.resolve();e.success===!0&&e.html!=="undefined"&&e.html.length>0?(t.innerHTML=e.html,d.setButtons(e.buttons)):i.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},s=>{n.handleAjaxError(s,t)})}save(){this.setModalButtonsState(!1);const t=this.getModalBody(),s=this.getModuleContent().dataset.featuresSaveToken,e={},f=new FormData(this.findInModal("form"));for(const[o,a]of f)e[o]=a.toString();e["install[action]"]="featuresSave",e["install[token]"]=s,new u(n.getUrl()).post(e).then(async o=>{const a=await o.resolve();a.success===!0&&Array.isArray(a.status)?(a.status.forEach(r=>{i.showMessage(r.title,r.message,r.severity)}),this.getContent()):i.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},o=>{n.handleAjaxError(o,t)}).finally(()=>{this.setModalButtonsState(!0)})}}var w=new m;export{w as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{Collapse as w}from"bootstrap";import{AbstractInteractableModule as A}from"@typo3/install/module/abstract-interactable-module.js";import C from"@typo3/backend/modal.js";import m from"@typo3/backend/notification.js";import v from"@typo3/core/ajax/ajax-request.js";import h from"@typo3/install/router.js";import f from"@typo3/core/event/regular-event.js";var l;(function(n){n.item=".t3js-localConfiguration-item",n.toggleAllTrigger=".t3js-localConfiguration-toggleAll",n.writeTrigger=".t3js-localConfiguration-write",n.searchTrigger=".t3js-localConfiguration-search",n.createRowTrigger=".t3js-localConfiguration-createRow",n.removeRowTrigger=".t3js-localConfiguration-removeRow",n.configurationItem=".t3js-localConfiguration-configuration-item"})(l||(l={}));class T extends A{constructor(){super(...arguments),this.toggleAll=!1}initialize(r){super.initialize(r),this.getContent(),new f("click",e=>{e.preventDefault(),this.write()}).delegateTo(r,l.writeTrigger),new f("click",()=>{const e=this.getModalBody(),o=e.querySelectorAll(".panel-collapse");this.toggleAll=!this.toggleAll;const a=this.toggleAll?"show":"hide";o.forEach(i=>{const t=e.querySelector(`[data-bs-target="#${i.id}"]`);t&&t.classList.toggle("collapsed",!this.toggleAll),w.getOrCreateInstance(i)[a]()})}).delegateTo(r,l.toggleAllTrigger),new f("keydown",e=>{const o=r.querySelector(l.searchTrigger);(e.ctrlKey||e.metaKey)&&(e.key==="f"||e.key==="F")&&(e.preventDefault(),o.focus())}).bindTo(r),new f("input",(e,o)=>{const a=o.value;this.search(a)}).delegateTo(r,l.searchTrigger),new f("change",(e,o)=>{const a=o.value;this.search(a)}).delegateTo(r,l.searchTrigger),new f("click",(e,o)=>{e.preventDefault(),o.closest(l.configurationItem)?.remove()}).delegateTo(r,l.removeRowTrigger),new f("click",(e,o)=>{e.preventDefault();const a=o.closest(".t3js-configuration-list");if(a===null)return;const i=g=>{const c=a.querySelectorAll(g);return c.item(c.length-1)},t=a.querySelectorAll(l.configurationItem);for(const g of t){const c=g.querySelectorAll('input[type="text"]');let d,p;if(a.dataset.type==="map")d=c.item(0).value.trim(),p=c.item(1).value.trim();else if(a.dataset.type==="element-list")d=void 0,p=c[0].value.trim();else return;if(d===""||p===""){for(const y of c)if(y.value===""){y.focus();return}}}const s=a.querySelector("#"+a.dataset.namespace).content.cloneNode(!0);a.querySelector(".configuration-map-item-collection").append(s),i(l.configurationItem).querySelector('input[type="text"]')?.focus()}).delegateTo(r,l.createRowTrigger)}search(r){this.currentModal.querySelectorAll(l.item).forEach(e=>{e.textContent.toLowerCase().trim().includes(r.toLowerCase())?(e.classList.remove("hidden"),e.classList.add("searchhit")):(e.classList.remove("searchhit"),e.classList.add("hidden"))}),this.currentModal.querySelectorAll(".searchhit").forEach(e=>{const o=e.closest(".panel-collapse");w.getOrCreateInstance(o).show()})}getContent(){const r=this.getModalBody();new v(h.getUrl("localConfigurationGetContent")).get({cache:"no-cache"}).then(async e=>{const o=await e.resolve();o.success===!0&&(r.innerHTML=o.html,C.setButtons(o.buttons))},e=>{h.handleAjaxError(e,r)})}write(){this.setModalButtonsState(!1);const r=this.getModalBody(),e=this.getModuleContent().dataset.localConfigurationWriteToken,o={},a={},i={};this.currentModal.querySelectorAll(".t3js-localConfiguration-pathValue").forEach(t=>{if(t.type==="checkbox")t.checked?o[t.dataset.path]="1":o[t.dataset.path]="0";else if(t.dataset.valuetype==="map"||t.dataset.valuetype==="element-list"){if(t.dataset.path.includes("/key[]")&&t.value!==""){const s=t.dataset.path.replace("/key[]","");a[s]===void 0&&(a[s]=[]),a[s].push(t.value)}else if(t.dataset.path.includes("/value[]")&&t.value!==""){const s=t.dataset.path.replace("/value[]","");i[s]===void 0&&(i[s]=[]),i[s].push(t.value)}}else o[t.dataset.path]=t.value});for(const t in i)if(Object.prototype.hasOwnProperty.call(i,t)){o[t]===void 0&&(o[t]={});const s=o[t];i[t].forEach((u,g)=>{if(u!=="")if(a[t]&&a[t][g]!==void 0&&a[t][g]!==""){const c=a[t][g];s[c]=u}else s[g]=u})}new v(h.getUrl()).post({install:{action:"localConfigurationWrite",token:e,configurationValues:o}}).then(async t=>{const s=await t.resolve();s.success===!0&&Array.isArray(s.status)?s.status.forEach(u=>{m.showMessage(u.title,u.message,u.severity)}):m.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},t=>{h.handleAjaxError(t,r)}).finally(()=>{this.setModalButtonsState(!0)})}}var S=new T;export{S as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as d}from"@typo3/install/module/abstract-interactable-module.js";import m from"@typo3/backend/modal.js";import c from"@typo3/backend/notification.js";import u from"@typo3/core/ajax/ajax-request.js";import o from"@typo3/install/router.js";import h from"@typo3/core/event/regular-event.js";var l;(function(i){i.activateTrigger=".t3js-presets-activate",i.imageExecutable=".t3js-presets-image-executable",i.imageExecutableTrigger=".t3js-presets-image-executable-trigger"})(l||(l={}));class p extends d{initialize(t){super.initialize(t),this.getContent(),new h("click",s=>{s.preventDefault(),this.getCustomImagePathContent()}).delegateTo(t,l.imageExecutableTrigger),new h("click",s=>{s.preventDefault(),this.activate()}).delegateTo(t,l.activateTrigger),t.querySelectorAll(".t3js-custom-preset").forEach(s=>{new h("input",(e,a)=>{t.querySelector(`#${a.dataset.radio}`).checked=!0}).delegateTo(s,".t3js-custom-preset")})}getContent(){const t=this.getModalBody();new u(o.getUrl("presetsGetContent")).get({cache:"no-cache"}).then(async s=>{const e=await s.resolve();e.success===!0&&e.html!=="undefined"&&e.html.length>0?(t.innerHTML=e.html,m.setButtons(e.buttons)):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},s=>{o.handleAjaxError(s,t)})}getCustomImagePathContent(){const t=this.getModalBody(),s=this.getModuleContent().dataset.presetsContentToken;new u(o.getUrl()).post({install:{token:s,action:"presetsGetContent",values:{Image:{additionalSearchPath:this.findInModal(l.imageExecutable).value}}}}).then(async e=>{const a=await e.resolve();a.success===!0&&a.html!=="undefined"&&a.html.length>0?t.innerHTML=a.html:c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},e=>{o.handleAjaxError(e,t)})}activate(){this.setModalButtonsState(!1);const t=this.getModalBody(),s=this.getModuleContent().dataset.presetsActivateToken,e={},a=new FormData(this.findInModal("form"));for(const[n,r]of a)e[n]=r.toString();e["install[action]"]="presetsActivate",e["install[token]"]=s,new u(o.getUrl()).post(e).then(async n=>{const r=await n.resolve();r.success===!0&&Array.isArray(r.status)?r.status.forEach(g=>{c.showMessage(g.title,g.message,g.severity)}):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},n=>{o.handleAjaxError(n,t)}).finally(()=>{this.setModalButtonsState(!0)})}}var f=new p;export{f as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as d}from"@typo3/install/module/abstract-interactable-module.js";import m from"@typo3/backend/modal.js";import c from"@typo3/backend/notification.js";import u from"@typo3/core/ajax/ajax-request.js";import a from"@typo3/install/router.js";import h from"@typo3/core/event/regular-event.js";var r;(function(i){i.writeTrigger=".t3js-systemMaintainer-write",i.selectPureField=".t3js-systemMaintainer-select-pure"})(r||(r={}));class g extends d{initialize(e){super.initialize(e),this.loadModuleFrameAgnostic("select-pure").then(()=>{this.getList()}),new h("click",t=>{t.preventDefault(),this.write()}).delegateTo(e,r.writeTrigger)}getList(){const e=this.getModalBody();new u(a.getUrl("systemMaintainerGetList")).get({cache:"no-cache"}).then(async t=>{const s=await t.resolve();s.success===!0&&(e.innerHTML=s.html,m.setButtons(s.buttons))},t=>{a.handleAjaxError(t,e)})}write(){this.setModalButtonsState(!1);const e=this.getModalBody(),t=this.getModuleContent().dataset.systemMaintainerWriteToken,s=this.findInModal(r.selectPureField).values;new u(a.getUrl()).post({install:{users:s,token:t,action:"systemMaintainerWrite"}}).then(async n=>{const o=await n.resolve();o.success===!0?Array.isArray(o.status)&&o.status.forEach(l=>{c.success(l.title,l.message)}):c.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},n=>{a.handleAjaxError(n,e)}).finally(()=>{this.setModalButtonsState(!0)})}}var f=new g;export{f as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{AbstractInteractableModule as l}from"@typo3/install/module/abstract-interactable-module.js";import u from"@typo3/backend/modal.js";import h from"@typo3/backend/notification.js";import d from"@typo3/core/ajax/ajax-request.js";import{FlashMessage as p}from"@typo3/install/renderable/flash-message.js";import r from"@typo3/install/renderable/severity.js";import s from"@typo3/install/router.js";import g from"@typo3/core/event/regular-event.js";var o;(function(i){i.output=".t3js-coreUpdate-output",i.updateButton=".t3js-coreUpdate-button"})(o||(o={}));class f extends l{constructor(){super(...arguments),this.actionQueue={coreUpdateIsUpdateAvailable:{loadingMessage:"Checking for possible regular or security update",finishMessage:void 0,nextActionName:void 0},coreUpdateCheckPreConditions:{loadingMessage:"Checking if update is possible",finishMessage:"System can be updated",nextActionName:"coreUpdateDownload"},coreUpdateDownload:{loadingMessage:"Downloading new core",finishMessage:void 0,nextActionName:"coreUpdateVerifyChecksum"},coreUpdateVerifyChecksum:{loadingMessage:"Verifying checksum of downloaded core",finishMessage:void 0,nextActionName:"coreUpdateUnpack"},coreUpdateUnpack:{loadingMessage:"Unpacking core",finishMessage:void 0,nextActionName:"coreUpdateMove"},coreUpdateMove:{loadingMessage:"Moving core",finishMessage:void 0,nextActionName:"coreUpdateActivate"},coreUpdateActivate:{loadingMessage:"Activating core",finishMessage:"Core updated - please reload your browser",nextActionName:void 0}},this.buttonTemplate=null}initialize(e){super.initialize(e),this.loadModuleFrameAgnostic("@typo3/install/renderable/flash-message.js").then(async()=>{await this.getData(),this.buttonTemplate=this.findInModal(o.updateButton)?.cloneNode(!0)}),new g("click",(t,a)=>{if(t.preventDefault(),!a.hasAttribute("data-action")){this.callAction("coreUpdateIsUpdateAvailable");return}const n=a.dataset.action;switch(this.findInModal(o.output).innerHTML="",n){case"updateDevelopment":this.update("development");break;case"updateRegular":this.update("regular");break;default:throw'Unknown update action "'+n+'"'}}).delegateTo(e,".t3js-coreUpdate-init")}getData(){const e=this.getModalBody();return new d(s.getUrl("coreUpdateGetData")).get({cache:"no-cache"}).then(async t=>{const a=await t.resolve();a.success===!0?(e.innerHTML=a.html,u.setButtons(a.buttons)):h.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},t=>{s.handleAjaxError(t,e)})}update(e){e!=="development"&&(e="regular"),this.callAction("coreUpdateCheckPreConditions",e)}callAction(e,t){const a={install:{action:e}};t!==void 0&&(a.install.type=t),this.addLoadingMessage(this.actionQueue[e].loadingMessage),new d(s.getUrl()).withQueryArguments(a).get({cache:"no-cache"}).then(async n=>{const c=await n.resolve();this.handleResult(c,this.actionQueue[e].finishMessage)===!0&&this.actionQueue[e].nextActionName!==void 0&&this.callAction(this.actionQueue[e].nextActionName,t)},n=>{s.handleAjaxError(n,this.getModalBody())})}handleResult(e,t){const a=e.success;return this.removeLoadingMessage(),e.status&&typeof e.status=="object"&&this.showStatusMessages(e.status),e.action&&typeof e.action=="object"&&this.showActionButton(e.action),a&&t&&this.addMessage(r.ok,t),a}addLoadingMessage(e){this.addMessage(r.loading,e)}removeLoadingMessage(){this.findInModal(o.output).querySelector("typo3-install-flashmessage")?.remove()}showStatusMessages(e){for(const t of e)this.addMessage(t.severity,t.title??"",t.message??"")}showActionButton(e){const t=this.buttonTemplate;e.action&&t.setAttribute("data-action",e.action),e.title&&(t.innerText=e.title),this.findInModal(o.updateButton).replaceWith(t)}addMessage(e,t,a){this.findInModal(o.output).append(p.create(e,t,a))}}var m=new f;export{m as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import"bootstrap";import{AbstractInteractableModule as g}from"@typo3/install/module/abstract-interactable-module.js";import f from"@typo3/backend/modal.js";import p from"@typo3/backend/notification.js";import c from"@typo3/core/ajax/ajax-request.js";import{InfoBox as u}from"@typo3/install/renderable/info-box.js";import h from"@typo3/install/renderable/severity.js";import r from"@typo3/install/router.js";import x from"@typo3/core/event/regular-event.js";var n;(function(l){l.checkTrigger=".t3js-extensionCompatTester-check",l.uninstallTrigger=".t3js-extensionCompatTester-uninstall",l.outputContainer=".t3js-extensionCompatTester-output"})(n||(n={}));class m extends g{initialize(t){super.initialize(t),this.loadModuleFrameAgnostic("@typo3/install/renderable/info-box.js").then(()=>{this.getLoadedExtensionList()}),new x("click",()=>{this.findInModal(n.uninstallTrigger)?.classList?.add("hidden");const s=this.findInModal(n.outputContainer);s&&(s.innerHTML=""),this.getLoadedExtensionList()}).delegateTo(t,n.checkTrigger),new x("click",(s,a)=>{this.uninstallExtension(a.dataset.extension)}).delegateTo(t,n.uninstallTrigger)}getLoadedExtensionList(){this.setModalButtonsState(!1);const t=this.getModalBody(),s=this.findInModal(n.outputContainer);s&&this.renderProgressBar(s,{},"append"),new c(r.getUrl("extensionCompatTesterLoadedExtensionList")).get({cache:"no-cache"}).then(async a=>{const o=await a.resolve();t.innerHTML=o.html,f.setButtons(o.buttons);const e=this.findInModal(n.outputContainer);this.renderProgressBar(e,{},"append"),o.success===!0?this.loadExtLocalconf().then(()=>{e.append(u.create(h.ok,"ext_localconf.php of all loaded extensions successfully loaded"))},async i=>{this.renderFailureMessages("ext_localconf.php",(await i.response.json()).brokenExtensions,e)}).finally(()=>{this.unlockModal()}):(p.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log."),this.unlockModal())},a=>{r.handleAjaxError(a,t),this.unlockModal()})}unlockModal(){this.findInModal(n.outputContainer)?.querySelector("typo3-backend-progress-bar")?.remove(),this.setModalButtonsState(!0)}renderFailureMessages(t,s,a){for(const o of s){let e;o.isProtected||(e=document.createElement("button"),e.classList.add("btn","btn-danger","t3js-extensionCompatTester-uninstall"),e.dataset.extension=o.name,e.innerText='Uninstall extension "'+o.name+'"'),a.append(u.create(h.error,"Loading "+t+' of extension "'+o.name+'" failed',o.isProtected?"Extension is mandatory and cannot be uninstalled.":""),e)}this.unlockModal()}loadExtLocalconf(){const t=this.getModuleContent().dataset.extensionCompatTesterLoadExt_localconfToken;return new c(r.getUrl()).post({install:{action:"extensionCompatTesterLoadExtLocalconf",token:t}})}uninstallExtension(t){const s=this.getModuleContent().dataset.extensionCompatTesterUninstallExtensionToken,a=this.getModalBody(),o=this.findInModal(n.outputContainer);this.renderProgressBar(o,{},"append"),new c(r.getUrl()).post({install:{action:"extensionCompatTesterUninstallExtension",token:s,extension:t}}).then(async e=>{const i=await e.resolve();i.success?(Array.isArray(i.status)&&i.status.forEach(d=>{a.querySelector(n.outputContainer).replaceChildren(u.create(d.severity,d.title,d.message))}),this.findInModal(n.uninstallTrigger).classList.add("hidden"),this.getLoadedExtensionList()):p.error("Something went wrong","The request was not processed successfully. Please check the browser's console and TYPO3's log.")},e=>{r.handleAjaxError(e,a)})}}var T=new m;export{T as default};
File diff suppressed because one or more lines are too long
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{AbstractInteractableModule as u}from"@typo3/install/module/abstract-interactable-module.js";import p from"@typo3/backend/modal.js";import h from"@typo3/core/ajax/ajax-request.js";import{FlashMessage as d}from"@typo3/install/renderable/flash-message.js";import{InfoBox as i}from"@typo3/install/renderable/info-box.js";import c from"@typo3/install/renderable/severity.js";import l from"@typo3/install/router.js";import g from"@typo3/core/event/regular-event.js";var t;(function(a){a.checkTrigger=".t3js-tcaMigrationsCheck-check",a.outputContainer=".t3js-tcaMigrationsCheck-output"})(t||(t={}));class m extends u{initialize(r){super.initialize(r),Promise.all([this.loadModuleFrameAgnostic("@typo3/install/renderable/info-box.js"),this.loadModuleFrameAgnostic("@typo3/install/renderable/flash-message.js")]).then(()=>{this.check()}),new g("click",e=>{e.preventDefault(),this.check()}).delegateTo(r,t.checkTrigger)}check(){this.setModalButtonsState(!1);const r=document.querySelector(t.outputContainer);r!==null&&this.renderProgressBar(r,{},"append");const e=this.getModalBody();new h(l.getUrl("tcaMigrationsCheck")).get({cache:"no-cache"}).then(async n=>{const o=await n.resolve();e.innerHTML=o.html,p.setButtons(o.buttons),o.success===!0&&Array.isArray(o.status)?o.status.length>0?(e.querySelector(t.outputContainer).append(i.create(c.warning,"TCA migrations need to be applied","Check the following list and apply needed changes.")),o.status.forEach(s=>{e.querySelector(t.outputContainer).append(i.create(s.severity,s.title,s.message))})):e.querySelector(t.outputContainer).append(i.create(c.ok,"No TCA migrations need to be applied","Your TCA looks good.")):e.querySelector(t.outputContainer).append(d.create(c.error,"Something went wrong",'Use "Check for broken extensions"'))},n=>{l.handleAjaxError(n,e)}).finally(()=>{this.setModalButtonsState(!0)})}}var f=new m;export{f as default};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import f from"@typo3/install/renderable/severity.js";import{property as p,customElement as d}from"lit/decorators.js";import{LitElement as u,nothing as v,html as m}from"lit";var c=function(l,e,o,n){var i=arguments.length,t=i<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,o):n,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")t=Reflect.decorate(l,e,o,n);else for(var a=l.length-1;a>=0;a--)(s=l[a])&&(t=(i<3?s(t):i>3?s(e,o,t):s(e,o))||t);return i>3&&t&&Object.defineProperty(e,o,t),t};let r=class extends u{static create(e,o,n=""){const s=(window.location!==window.parent.location?window.parent.document:document).createElement("typo3-install-flashmessage");return s.severity=e,s.subject=o,n&&(s.content=n),s}createRenderRoot(){return this}render(){let e=v;return this.content&&(e=m`<p class=alert-message>${this.content}</p>`),m`<div class="t3js-message alert alert-${f.getCssClass(this.severity)}"><div class=alert-title>${this.subject}</div>${e}</div>`}};c([p({type:Number})],r.prototype,"severity",void 0),c([p({type:String})],r.prototype,"subject",void 0),c([p({type:String})],r.prototype,"content",void 0),r=c([d("typo3-install-flashmessage")],r);export{r as FlashMessage};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import d from"@typo3/install/renderable/severity.js";import{property as f,customElement as u}from"lit/decorators.js";import{LitElement as m,nothing as v,html as p}from"lit";var s=function(l,t,n,i){var c=arguments.length,e=c<3?t:i===null?i=Object.getOwnPropertyDescriptor(t,n):i,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")e=Reflect.decorate(l,t,n,i);else for(var a=l.length-1;a>=0;a--)(o=l[a])&&(e=(c<3?o(e):c>3?o(t,n,e):o(t,n))||e);return c>3&&e&&Object.defineProperty(t,n,e),e};let r=class extends m{static create(t,n,i=""){const o=(window.location!==window.parent.location?window.parent.document:document).createElement("typo3-install-infobox");return o.severity=t,o.subject=n,i&&(o.content=i),o}createRenderRoot(){return this}render(){let t=v;return this.content&&(t=p`<div class=callout-body>${this.content}</div>`),p`<div class="t3js-infobox callout callout-sm callout-${d.getCssClass(this.severity)}"><div class=callout-content><div class=callout-title>${this.subject}</div>${t}</div></div>`}};s([f({type:Number})],r.prototype,"severity",void 0),s([f({type:String})],r.prototype,"subject",void 0),s([f({type:String})],r.prototype,"content",void 0),r=s([u("typo3-install-infobox")],r);export{r as InfoBox};
File diff suppressed because one or more lines are too long
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{LitElement as d,html as a}from"lit";import{property as p,customElement as c}from"lit/decorators.js";var n=function(r,e,o,s){var i=arguments.length,t=i<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,o):s,f;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")t=Reflect.decorate(r,e,o,s);else for(var u=r.length-1;u>=0;u--)(f=r[u])&&(t=(i<3?f(t):i>3?f(e,o,t):f(e,o))||t);return i>3&&t&&Object.defineProperty(e,o,t),t};let l=class extends d{constructor(){super(...arguments),this.offsetId=null,this.values=null}createRenderRoot(){return this}render(){return a`<div class=form-multigroup-wrap><div class=form-multigroup-item><div class=input-group><div class=input-group-text>x</div><input id=${this.offsetId}_offset_x class="form-control t3js-emconf-offsetfield" data-target=#${this.offsetId} value=${this.values[0]?.trim()}></div></div><div class=form-multigroup-item><div class=input-group><div class=input-group-text>y</div><input id=${this.offsetId}_offset_y class="form-control t3js-emconf-offsetfield" data-target=#${this.offsetId} value=${this.values[1]?.trim()}></div></div></div>`}};n([p({type:String})],l.prototype,"offsetId",void 0),n([p({type:Array})],l.prototype,"values",void 0),l=n([c("typo3-install-offset-group")],l);
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
class i{constructor(){this.loading=-3,this.notice=-2,this.info=-1,this.ok=0,this.warning=1,this.error=2}getCssClass(e){let s;switch(e){case this.loading:case this.notice:s="notice";break;case this.ok:s="success";break;case this.warning:s="warning";break;case this.error:s="danger";break;case this.info:default:s="info"}return s}}var t=new i;export{t as default};
@@ -0,0 +1,13 @@
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
import{LitElement as d,html as m}from"lit";import{property as u,customElement as c}from"lit/decorators.js";var n=function(i,r,e,o){var p=arguments.length,t=p<3?r:o===null?o=Object.getOwnPropertyDescriptor(r,e):o,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")t=Reflect.decorate(i,r,e,o);else for(var s=i.length-1;s>=0;s--)(l=i[s])&&(t=(p<3?l(t):p>3?l(r,e,t):l(r,e))||t);return p>3&&t&&Object.defineProperty(r,e,t),t};let a=class extends d{constructor(){super(...arguments),this.wrapId=null,this.values=null}createRenderRoot(){return this}render(){return m`<div class=form-multigroup-wrap><div class=form-multigroup-item><div class=input-group><input id=${this.wrapId}_wrap_start class="form-control t3js-emconf-wrapfield" data-target=#${this.wrapId} value=${this.values[0]?.trim()}></div></div><div class=form-multigroup-item><div class=input-group><input id=${this.wrapId}_wrap_end class="form-control t3js-emconf-wrapfield" data-target=#${this.wrapId} value=${this.values[1]?.trim()}></div></div></div>`}};n([u({type:String})],a.prototype,"wrapId",void 0),n([u({type:Array})],a.prototype,"values",void 0),a=n([c("typo3-install-wrap-group")],a);
File diff suppressed because one or more lines are too long