TYPO3 v15 dev-main snapshot ()
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _feature-90168:
|
||||
|
||||
=========================================
|
||||
Feature: #90168 - Introduce Modal Actions
|
||||
=========================================
|
||||
|
||||
See :issue:`90168`
|
||||
|
||||
Description
|
||||
===========
|
||||
|
||||
Action buttons in modals created by the :js:`TYPO3/CMS/Backend/Modal` module may
|
||||
now make use of :js:`TYPO3/CMS/Backend/ActionButton/ImmediateAction` and
|
||||
:js:`TYPO3/CMS/Backend/ActionButton/DeferredAction`.
|
||||
|
||||
As an alternative to the existing :js:`trigger` option, the new option
|
||||
:js:`action` may be used with an instance of the previously mentioned modules.
|
||||
|
||||
Example:
|
||||
|
||||
.. code-block:: js
|
||||
|
||||
Modal.confirm('Header', 'Some content', Severity.error, [
|
||||
{
|
||||
text: 'Based on trigger()',
|
||||
trigger: function () {
|
||||
console.log('Vintage!');
|
||||
}
|
||||
},
|
||||
{
|
||||
text: 'Based on action',
|
||||
action: new DeferredAction(() => {
|
||||
return new AjaxRequest('/any/endpoint').post({});
|
||||
})
|
||||
}
|
||||
]);
|
||||
|
||||
|
||||
Impact
|
||||
======
|
||||
|
||||
Activating any action disables all buttons in the modal. Once the action is
|
||||
done, the modal disappears automatically.
|
||||
|
||||
Buttons of the type :js:`DeferredAction` render a spinner on activation into the
|
||||
button.
|
||||
|
||||
.. index:: Backend, JavaScript, ext:backend
|
||||
Reference in New Issue
Block a user