Update Composer, update everything

This commit is contained in:
Oliver Davies 2018-11-23 12:29:20 +00:00
parent ea3e94409f
commit dda5c284b6
19527 changed files with 1135420 additions and 351004 deletions

View file

@ -1,12 +1,17 @@
/**
* @file
* Javascript behaviors for signature pad integration.
* JavaScript behaviors for signature pad integration.
*/
(function ($, Drupal) {
'use strict';
// @see https://github.com/szimek/signature_pad#options
Drupal.webform = Drupal.webform || {};
Drupal.webform.signaturePad = Drupal.webform.signaturePad || {};
Drupal.webform.signaturePad.options = Drupal.webform.signaturePad.options || {};
/**
* Initialize signature element.
*
@ -14,20 +19,29 @@
*/
Drupal.behaviors.webformSignature = {
attach: function (context) {
if (!window.SignaturePad) {
return;
}
$(context).find('input.js-webform-signature').once('webform-signature').each(function () {
var $input = $(this);
var value = $input.val();
var $wrapper = $input.parent();
var $canvas = $wrapper.find('canvas');
var $button = $wrapper.find('input[type="submit"]');
var $button = $wrapper.find(':button, :submit');
var canvas = $canvas[0];
var calculateDimensions = function () {
$canvas.attr('width', $wrapper.width());
$canvas.attr('height', $wrapper.width() / 3);
};
// Set height.
$canvas.attr('width', $wrapper.width());
$canvas.attr('height', $wrapper.width() / 3);
$(window).resize(function () {
$canvas.attr('width', $wrapper.width());
$canvas.attr('height', $wrapper.width() / 3);
calculateDimensions();
// Resizing clears the canvas so we need to reset the signature pad.
signaturePad.clear();
@ -38,11 +52,12 @@
});
// Initialize signature canvas.
var signaturePad = new SignaturePad(canvas, {
'onEnd': function () {
var options = $.extend({
onEnd: function () {
$input.val(signaturePad.toDataURL());
}
});
}, Drupal.webform.signaturePad.options);
var signaturePad = new SignaturePad(canvas, options);
// Set value.
if (value) {
@ -52,17 +67,23 @@
// Set reset handler.
$button.on('click', function () {
signaturePad.clear();
$input.val();
$input.val('');
this.blur();
return false;
});
// Input onchange clears signature pad if value is empty.
// Onchange events handlers are triggered when a webform is
// hidden or shown.
// @see webform.states.js
// @see triggerEventHandlers()
$input.on('change', function () {
if (!$input.val()) {
signaturePad.clear();
}
setTimeout(function () {
calculateDimensions();
}, 1);
});
// Turn signature pad off/on when the input is disabled/enabled.