Merge branch 'MDL-75784-master' of https://github.com/JBThong/moodle
This commit is contained in:
+1
-1
@@ -6,6 +6,6 @@ define("core_form/collapsesections",["exports","jquery","core/pending"],(functio
|
||||
* @copyright 2021 Bas Brands
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
* @since 4.0
|
||||
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,_jquery=_interopRequireDefault(_jquery),_pending=_interopRequireDefault(_pending);const SELECTORS_FORMHEADER=".fheader",SELECTORS_FORMCONTAINER=".fcontainer",CLASSES_SHOW="show",CLASSES_COLLAPSED="collapsed";_exports.init=collapsesections=>{const pendingPromise=new _pending.default("core_form/collapsesections"),collapsemenu=document.querySelector(collapsesections);collapsemenu.addEventListener("keydown",(e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),collapsemenu.click())}));let expandedcount=0;const formcontainercount=(0,_jquery.default)(SELECTORS_FORMCONTAINER).length;(0,_jquery.default)(SELECTORS_FORMCONTAINER).each(((_,collapsecontainer)=>{collapsecontainer.classList.contains(CLASSES_SHOW)&&expandedcount++})),formcontainercount===expandedcount&&(collapsemenu.classList.remove(CLASSES_COLLAPSED),collapsemenu.setAttribute("aria-expanded",!0)),collapsemenu.addEventListener("click",(()=>{let action="hide";collapsemenu.classList.contains(CLASSES_COLLAPSED)&&(action="show"),document.querySelectorAll(SELECTORS_FORMCONTAINER).forEach((collapsecontainer=>{(0,_jquery.default)(collapsecontainer).collapse(action)}))}));const collapseElementIds=[...(0,_jquery.default)(SELECTORS_FORMHEADER)].map(((element,index)=>(element.id=element.id||"collapseElement-".concat(index),element.id)));collapsemenu.setAttribute("aria-controls",collapseElementIds.join(" ")),(0,_jquery.default)(SELECTORS_FORMCONTAINER).on("hidden.bs.collapse",(()=>{let allcollapsed=!0;(0,_jquery.default)(SELECTORS_FORMCONTAINER).each(((_,collapsecontainer)=>{collapsecontainer.classList.contains(CLASSES_SHOW)&&(allcollapsed=!1)})),allcollapsed&&(collapsemenu.classList.add(CLASSES_COLLAPSED),collapsemenu.setAttribute("aria-expanded",!1))})),(0,_jquery.default)(SELECTORS_FORMCONTAINER).on("shown.bs.collapse",(()=>{var allexpanded=!0;(0,_jquery.default)(SELECTORS_FORMCONTAINER).each(((_,collapsecontainer)=>{collapsecontainer.classList.contains(CLASSES_SHOW)||(allexpanded=!1)})),allexpanded&&(collapsemenu.classList.remove(CLASSES_COLLAPSED),collapsemenu.setAttribute("aria-expanded",!0))})),pendingPromise.resolve()}}));
|
||||
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,_jquery=_interopRequireDefault(_jquery),_pending=_interopRequireDefault(_pending);const SELECTORS_FORMHEADER=".fheader",SELECTORS_FORMCONTAINER=".fcontainer",CLASSES_SHOW="show",CLASSES_COLLAPSED="collapsed";_exports.init=collapsesections=>{const pendingPromise=new _pending.default("core_form/collapsesections"),collapsemenu=document.querySelector(collapsesections),formParent=collapsemenu.closest("form");collapsemenu.addEventListener("keydown",(e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),collapsemenu.click())}));let expandedcount=0;const formcontainercount=(0,_jquery.default)(SELECTORS_FORMCONTAINER).length;(0,_jquery.default)(SELECTORS_FORMCONTAINER).each(((_,collapsecontainer)=>{collapsecontainer.classList.contains(CLASSES_SHOW)&&expandedcount++})),formcontainercount===expandedcount&&(collapsemenu.classList.remove(CLASSES_COLLAPSED),collapsemenu.setAttribute("aria-expanded",!0)),collapsemenu.addEventListener("click",(()=>{let action="hide";collapsemenu.classList.contains(CLASSES_COLLAPSED)&&(action="show"),formParent.querySelectorAll(SELECTORS_FORMCONTAINER).forEach((collapsecontainer=>{(0,_jquery.default)(collapsecontainer).collapse(action)}))}));const collapseElementIds=[...(0,_jquery.default)(SELECTORS_FORMHEADER)].map(((element,index)=>(element.id=element.id||"collapseElement-".concat(index),element.id)));collapsemenu.setAttribute("aria-controls",collapseElementIds.join(" ")),(0,_jquery.default)(SELECTORS_FORMCONTAINER).on("hidden.bs.collapse",(()=>{let allCollapsed=!0;formParent.querySelectorAll(SELECTORS_FORMCONTAINER).forEach((collapsecontainer=>{collapsecontainer.classList.contains(CLASSES_SHOW)&&(allCollapsed=!1)})),allCollapsed&&(collapsemenu.classList.add(CLASSES_COLLAPSED),collapsemenu.setAttribute("aria-expanded",!1))})),(0,_jquery.default)(SELECTORS_FORMCONTAINER).on("shown.bs.collapse",(()=>{let allExpanded=!0;formParent.querySelectorAll(SELECTORS_FORMCONTAINER).forEach((collapsecontainer=>{collapsecontainer.classList.contains(CLASSES_SHOW)||(allExpanded=!1)})),allExpanded&&(collapsemenu.classList.remove(CLASSES_COLLAPSED),collapsemenu.setAttribute("aria-expanded",!0))})),pendingPromise.resolve()}}));
|
||||
|
||||
//# sourceMappingURL=collapsesections.min.js.map
|
||||
File diff suppressed because one or more lines are too long
@@ -44,6 +44,7 @@ export const init = collapsesections => {
|
||||
// All jQuery in this code can be replaced when MDL-71979 is integrated (move to Bootstrap 5).
|
||||
const pendingPromise = new Pending('core_form/collapsesections');
|
||||
const collapsemenu = document.querySelector(collapsesections);
|
||||
const formParent = collapsemenu.closest('form');
|
||||
collapsemenu.addEventListener('keydown', e => {
|
||||
if (e.key === 'Enter' || e.key === ' ') {
|
||||
e.preventDefault();
|
||||
@@ -71,7 +72,7 @@ export const init = collapsesections => {
|
||||
action = 'show';
|
||||
}
|
||||
|
||||
document.querySelectorAll(SELECTORS.FORMCONTAINER).forEach((collapsecontainer) => {
|
||||
formParent.querySelectorAll(SELECTORS.FORMCONTAINER).forEach((collapsecontainer) => {
|
||||
$(collapsecontainer).collapse(action);
|
||||
});
|
||||
});
|
||||
@@ -85,26 +86,29 @@ export const init = collapsesections => {
|
||||
collapsemenu.setAttribute('aria-controls', collapseElementIds.join(' '));
|
||||
|
||||
$(SELECTORS.FORMCONTAINER).on('hidden.bs.collapse', () => {
|
||||
let allcollapsed = true;
|
||||
$(SELECTORS.FORMCONTAINER).each((_, collapsecontainer) => {
|
||||
let allCollapsed = true;
|
||||
|
||||
formParent.querySelectorAll(SELECTORS.FORMCONTAINER).forEach((collapsecontainer) => {
|
||||
if (collapsecontainer.classList.contains(CLASSES.SHOW)) {
|
||||
allcollapsed = false;
|
||||
allCollapsed = false;
|
||||
}
|
||||
});
|
||||
if (allcollapsed) {
|
||||
|
||||
if (allCollapsed) {
|
||||
collapsemenu.classList.add(CLASSES.COLLAPSED);
|
||||
collapsemenu.setAttribute('aria-expanded', false);
|
||||
}
|
||||
});
|
||||
$(SELECTORS.FORMCONTAINER).on('shown.bs.collapse', () => {
|
||||
var allexpanded = true;
|
||||
$(SELECTORS.FORMCONTAINER).each((_, collapsecontainer) => {
|
||||
let allExpanded = true;
|
||||
|
||||
formParent.querySelectorAll(SELECTORS.FORMCONTAINER).forEach((collapsecontainer) => {
|
||||
if (!collapsecontainer.classList.contains(CLASSES.SHOW)) {
|
||||
allexpanded = false;
|
||||
allExpanded = false;
|
||||
}
|
||||
});
|
||||
|
||||
if (allexpanded) {
|
||||
if (allExpanded) {
|
||||
collapsemenu.classList.remove(CLASSES.COLLAPSED);
|
||||
collapsemenu.setAttribute('aria-expanded', true);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user