Core and composer updates

This commit is contained in:
Rob Davies 2017-07-03 16:47:07 +01:00
parent a82634bb98
commit 62cac30480
1118 changed files with 21770 additions and 6306 deletions

View file

@ -22,7 +22,7 @@
*/
var edge = document.documentElement.dir === 'rtl' ? 'left' : 'right';
var $mainCanvasWrapper = $('[data-offcanvas-main-canvas]');
var $mainCanvasWrapper = $('[data-off-canvas-main-canvas]');
/**
* Resets the size of the dialog.
@ -51,7 +51,7 @@
$element
.dialog('option', adjustedOptions)
.trigger('dialogContentResize.offcanvas');
.trigger('dialogContentResize.off-canvas');
}
/**
@ -64,7 +64,7 @@
var $element = event.data.$element;
var $widget = $element.dialog('widget');
var $offsets = $widget.find('> :not(#drupal-offcanvas, .ui-resizable-handle)');
var $offsets = $widget.find('> :not(#drupal-off-canvas, .ui-resizable-handle)');
var offset = 0;
var modalHeight;
@ -112,25 +112,25 @@
attach: function () {
$(window).once('off-canvas').on({
'dialog:aftercreate': function (event, dialog, $element, settings) {
if ($element.is('#drupal-offcanvas')) {
if ($element.is('#drupal-off-canvas')) {
var eventData = {settings: settings, $element: $element};
$('.ui-dialog-offcanvas, .ui-dialog-offcanvas .ui-dialog-titlebar').toggleClass('ui-dialog-empty-title', !settings.title);
$('.ui-dialog-off-canvas, .ui-dialog-off-canvas .ui-dialog-titlebar').toggleClass('ui-dialog-empty-title', !settings.title);
$element
.on('dialogresize.offcanvas', eventData, debounce(bodyPadding, 100))
.on('dialogContentResize.offcanvas', eventData, handleDialogResize)
.on('dialogContentResize.offcanvas', eventData, debounce(bodyPadding, 100))
.trigger('dialogresize.offcanvas');
.on('dialogresize.off-canvas', eventData, debounce(bodyPadding, 100))
.on('dialogContentResize.off-canvas', eventData, handleDialogResize)
.on('dialogContentResize.off-canvas', eventData, debounce(bodyPadding, 100))
.trigger('dialogresize.off-canvas');
$element.dialog('widget').attr('data-offset-' + edge, '');
$(window)
.on('resize.offcanvas scroll.offcanvas', eventData, debounce(resetSize, 100))
.trigger('resize.offcanvas');
.on('resize.off-canvas scroll.off-canvas', eventData, debounce(resetSize, 100))
.trigger('resize.off-canvas');
}
},
'dialog:beforecreate': function (event, dialog, $element, settings) {
if ($element.is('#drupal-offcanvas')) {
if ($element.is('#drupal-off-canvas')) {
$('body').addClass('js-tray-open');
// @see http://api.jqueryui.com/position/
settings.position = {
@ -138,18 +138,18 @@
at: edge + ' top',
of: window
};
settings.dialogClass += ' ui-dialog-offcanvas';
settings.dialogClass += ' ui-dialog-off-canvas';
// Applies initial height to dialog based on window height.
// See http://api.jqueryui.com/dialog for all dialog options.
settings.height = $(window).height();
}
},
'dialog:beforeclose': function (event, dialog, $element) {
if ($element.is('#drupal-offcanvas')) {
if ($element.is('#drupal-off-canvas')) {
$('body').removeClass('js-tray-open');
// Remove all *.offcanvas events
$(document).off('.offcanvas');
$(window).off('.offcanvas');
// Remove all *.off-canvas events
$(document).off('.off-canvas');
$(window).off('.off-canvas');
$mainCanvasWrapper.css('padding-' + edge, 0);
}
}

View file

@ -9,7 +9,7 @@
var blockConfigureSelector = '[data-outside-in-edit]';
var toggleEditSelector = '[data-drupal-outsidein="toggle"]';
var itemsToToggleSelector = '[data-offcanvas-main-canvas], #toolbar-bar, [data-drupal-outsidein="editable"] a, [data-drupal-outsidein="editable"] button';
var itemsToToggleSelector = '[data-off-canvas-main-canvas], #toolbar-bar, [data-drupal-outsidein="editable"] a, [data-drupal-outsidein="editable"] button';
var contextualItemsSelector = '[data-contextual-id] a, [data-contextual-id] button';
var quickEditItemSelector = '[data-quickedit-entity-id]';
@ -111,10 +111,10 @@
}
/**
* Closes/removes offcanvas.
* Closes/removes off-canvas.
*/
function closeOffCanvas() {
$('.ui-dialog-offcanvas .ui-dialog-titlebar-close').trigger('click');
$('.ui-dialog-off-canvas .ui-dialog-titlebar-close').trigger('click');
}
/**
@ -124,6 +124,9 @@
* True enable edit mode, false disable edit mode.
*/
function setEditModeState(editMode) {
if (!document.querySelector('[data-off-canvas-main-canvas]')) {
throw new Error('data-off-canvas-main-canvas is missing from outside-in-page-wrapper.html.twig');
}
editMode = !!editMode;
var $editButton = $(toggleEditSelector);
var $editables;
@ -135,7 +138,7 @@
$editables = $('[data-drupal-outsidein="editable"]').once('outsidein');
if ($editables.length) {
// Use event capture to prevent clicks on links.
document.querySelector('[data-offcanvas-main-canvas]').addEventListener('click', preventClick, true);
document.querySelector('[data-off-canvas-main-canvas]').addEventListener('click', preventClick, true);
// When a click occurs try and find the outside-in edit link
// and click it.
@ -152,7 +155,7 @@
$(quickEditItemSelector)
.not(contextualItemsSelector)
.on('click.outsidein', function (e) {
// For all non-contextual links or the contextual QuickEdit link close the off-canvas tray.
// For all non-contextual links or the contextual QuickEdit link close the off-canvas dialog.
if (!$(e.target).parent().hasClass('contextual') || $(e.target).parent().hasClass('quickedit')) {
closeOffCanvas();
}
@ -168,7 +171,7 @@
else {
$editables = $('[data-drupal-outsidein="editable"]').removeOnce('outsidein');
if ($editables.length) {
document.querySelector('[data-offcanvas-main-canvas]').removeEventListener('click', preventClick, true);
document.querySelector('[data-off-canvas-main-canvas]').removeEventListener('click', preventClick, true);
$editables.off('.outsidein');
$(quickEditItemSelector).off('.outsidein');
}
@ -212,19 +215,19 @@
$(toggleEditSelector).once('outsidein').on('click.outsidein', toggleEditMode);
var search = Drupal.ajax.WRAPPER_FORMAT + '=drupal_dialog';
var replace = Drupal.ajax.WRAPPER_FORMAT + '=drupal_dialog_offcanvas';
// Loop through all Ajax links and change the format to dialog-offcanvas when
var replace = Drupal.ajax.WRAPPER_FORMAT + '=drupal_dialog_off_canvas';
// Loop through all Ajax links and change the format to dialog-off-canvas when
// needed.
Drupal.ajax.instances
.filter(function (instance) {
var hasElement = instance && !!instance.element;
var rendererOffcanvas = false;
var wrapperOffcanvas = false;
var rendererOffCanvas = false;
var wrapperOffCanvas = false;
if (hasElement) {
rendererOffcanvas = $(instance.element).attr('data-dialog-renderer') === 'offcanvas';
wrapperOffcanvas = instance.options.url.indexOf('drupal_dialog_offcanvas') === -1;
rendererOffCanvas = $(instance.element).attr('data-dialog-renderer') === 'off_canvas';
wrapperOffCanvas = instance.options.url.indexOf('drupal_dialog_off_canvas') === -1;
}
return hasElement && rendererOffcanvas && wrapperOffcanvas;
return hasElement && rendererOffCanvas && wrapperOffCanvas;
})
.forEach(function (instance) {
// @todo Move logic for data-dialog-renderer attribute into ajax.js
@ -243,7 +246,7 @@
// Manage Active editable class on opening and closing of the dialog.
$(window).on({
'dialog:beforecreate': function (event, dialog, $element, settings) {
if ($element.is('#drupal-offcanvas')) {
if ($element.is('#drupal-off-canvas')) {
$('body .outside-in-active-editable').removeClass('outside-in-active-editable');
var $activeElement = $('#' + settings.outsideInActiveEditableId);
if ($activeElement.length) {
@ -253,7 +256,7 @@
}
},
'dialog:beforeclose': function (event, dialog, $element) {
if ($element.is('#drupal-offcanvas')) {
if ($element.is('#drupal-off-canvas')) {
$('body .outside-in-active-editable').removeClass('outside-in-active-editable');
}
}