annotate core/modules/layout_builder/js/layout-builder.js @ 2:5311817fb629

Theme updates
author Chris Cannam
date Tue, 10 Jul 2018 13:19:18 +0000
parents c75dbcec494b
children 12f9dff5fda9
rev   line source
Chris@0 1 /**
Chris@0 2 * DO NOT EDIT THIS FILE.
Chris@0 3 * See the following change record for more information,
Chris@0 4 * https://www.drupal.org/node/2815083
Chris@0 5 * @preserve
Chris@0 6 **/
Chris@0 7
Chris@0 8 (function ($, _ref) {
Chris@0 9 var ajax = _ref.ajax,
Chris@0 10 behaviors = _ref.behaviors;
Chris@0 11
Chris@0 12 behaviors.layoutBuilder = {
Chris@0 13 attach: function attach(context) {
Chris@0 14 $(context).find('.layout-builder--layout__region').sortable({
Chris@0 15 items: '> .draggable',
Chris@0 16 connectWith: '.layout-builder--layout__region',
Chris@0 17 placeholder: 'ui-state-drop',
Chris@0 18
Chris@0 19 update: function update(event, ui) {
Chris@0 20 var itemRegion = ui.item.closest('.layout-builder--layout__region');
Chris@0 21 if (event.target === itemRegion[0]) {
Chris@0 22 var deltaTo = ui.item.closest('[data-layout-delta]').data('layout-delta');
Chris@0 23
Chris@0 24 var deltaFrom = ui.sender ? ui.sender.closest('[data-layout-delta]').data('layout-delta') : deltaTo;
Chris@0 25 ajax({
Chris@0 26 url: [ui.item.closest('[data-layout-update-url]').data('layout-update-url'), deltaFrom, deltaTo, itemRegion.data('region'), ui.item.data('layout-block-uuid'), ui.item.prev('[data-layout-block-uuid]').data('layout-block-uuid')].filter(function (element) {
Chris@0 27 return element !== undefined;
Chris@0 28 }).join('/')
Chris@0 29 }).execute();
Chris@0 30 }
Chris@0 31 }
Chris@0 32 });
Chris@0 33 }
Chris@0 34 };
Chris@0 35 })(jQuery, Drupal);