From 5e46c6919bdf50dc65eb3be5ed308a1642215f11 Mon Sep 17 00:00:00 2001 From: Eduardo Robles Elvira Date: Tue, 1 Feb 2022 14:35:28 +0100 Subject: [PATCH] using interval instead of timeout to try to fix protractor tests --- .../image-field-directive.js | 4 +- .../tel-field-directive.js | 4 +- .../login-directive/login-directive.js | 6 +-- avUi/affix-bottom-directive.js | 6 +-- avUi/affix-top-directive.js | 6 +-- avUi/affix-top-offset-directive.js | 4 +- avUi/auto-height-directive.js | 6 +-- avUi/autoscroll-down-directive.js | 2 +- avUi/collapsing-directive.js | 6 +-- avUi/debounce-directive.js | 6 +-- dist/appCommon-vmaster.js | 46 +++++++++---------- 11 files changed, 48 insertions(+), 48 deletions(-) diff --git a/avRegistration/fields/image-field-directive/image-field-directive.js b/avRegistration/fields/image-field-directive/image-field-directive.js index 62c68cda..b072db37 100644 --- a/avRegistration/fields/image-field-directive/image-field-directive.js +++ b/avRegistration/fields/image-field-directive/image-field-directive.js @@ -16,7 +16,7 @@ **/ angular.module('avRegistration') - .directive('avrImageField', function($state, $timeout) { + .directive('avrImageField', function($state, $interval) { function link(scope, element, attrs) { function readImage(input) { if ( input.files && input.files[0] ) { @@ -28,7 +28,7 @@ angular.module('avRegistration') } } - $timeout(function() { + $interval(function() { $("#image-field").change(function() { readImage( this ); }); }, 0); } diff --git a/avRegistration/fields/tel-field-directive/tel-field-directive.js b/avRegistration/fields/tel-field-directive/tel-field-directive.js index 53ba0fe7..ba26b27f 100644 --- a/avRegistration/fields/tel-field-directive/tel-field-directive.js +++ b/avRegistration/fields/tel-field-directive/tel-field-directive.js @@ -16,7 +16,7 @@ **/ angular.module('avRegistration') - .directive('avrTelField', function($state, $timeout) { + .directive('avrTelField', function($state, $interval) { function link(scope, element, attrs) { scope.tlfPattern = /^[+]?\d{9,14}$/; @@ -34,7 +34,7 @@ angular.module('avRegistration') } }); - $timeout(function() { + $interval(function() { /* configure registration telephone phone number */ var telInput = angular.element(document.getElementById("input" + scope.index)); // initialise plugin diff --git a/avRegistration/login-directive/login-directive.js b/avRegistration/login-directive/login-directive.js index 5c676174..fb8537a0 100644 --- a/avRegistration/login-directive/login-directive.js +++ b/avRegistration/login-directive/login-directive.js @@ -26,7 +26,7 @@ angular.module('avRegistration') $cookies, $i18next, $window, - $timeout, + $interval, ConfigService, Patterns) { @@ -181,10 +181,10 @@ angular.module('avRegistration') ); scope.currentFormStep = 1; scope.error = null; - $timeout(scope.sendingDataTimeout, 3000); + $interval(scope.sendingDataTimeout, 3000); }, function onError(response) { - $timeout(scope.sendingDataTimeout, 3000); + $interval(scope.sendingDataTimeout, 3000); scope.error = $i18next('avRegistration.errorSendingAuthCode'); } ); diff --git a/avUi/affix-bottom-directive.js b/avUi/affix-bottom-directive.js index 880105ed..ffe24417 100644 --- a/avUi/affix-bottom-directive.js +++ b/avUi/affix-bottom-directive.js @@ -29,7 +29,7 @@ * automatically the element will be affixed. */ angular.module('avUi') - .directive('avAffixBottom', function($window, $timeout, $parse) { + .directive('avAffixBottom', function($window, $interval, $parse) { var affixBottomClass = "affix-bottom"; var checkPosition = function(scope, instance, el, options) { @@ -84,8 +84,8 @@ angular.module('avUi') var timeout; function callCheckPos() { - timeout = $timeout(function() { - $timeout.cancel(timeout); + timeout = $interval(function() { + $interval.cancel(timeout); checkPosition(scope, instance, iElement, iAttrs); }, 300); } diff --git a/avUi/affix-top-directive.js b/avUi/affix-top-directive.js index d466d38c..e5b3b587 100644 --- a/avUi/affix-top-directive.js +++ b/avUi/affix-top-directive.js @@ -22,7 +22,7 @@ * changes, the top-margin of the specified is recalculated and set. */ angular.module('avUi') - .directive('avAffixTop', function($window, $timeout) { + .directive('avAffixTop', function($window, $interval) { // add margin-top automatically var updateMargin = function(el, options) { @@ -47,8 +47,8 @@ angular.module('avUi') var timeout; function updateMarginTimeout() { - timeout = $timeout(function() { - $timeout.cancel(timeout); + timeout = $interval(function() { + $interval.cancel(timeout); updateMargin(iElement, iAttrs); }, 300); } diff --git a/avUi/affix-top-offset-directive.js b/avUi/affix-top-offset-directive.js index 5b2524b0..40ca3433 100644 --- a/avUi/affix-top-offset-directive.js +++ b/avUi/affix-top-offset-directive.js @@ -16,7 +16,7 @@ **/ angular.module('avUi') - .directive('avAffixTopOffset', function($window, $timeout, $parse) { + .directive('avAffixTopOffset', function($window, $interval, $parse) { var affixClass = "affix-top"; var checkPosition = function(scope, instance, el, options) { @@ -83,7 +83,7 @@ angular.module('avUi') iElement.attr("style", ""); instance.affix = false; instance.scrollAffix = null; - $timeout(function () { + $interval(function () { instance.baseOffset = iElement.offset(); instance.baseWidth = iElement.width(); callCheckPos(); diff --git a/avUi/auto-height-directive.js b/avUi/auto-height-directive.js index f52baf3b..a1aee4b1 100644 --- a/avUi/auto-height-directive.js +++ b/avUi/auto-height-directive.js @@ -27,7 +27,7 @@ * */ angular.module('avUi') - .directive('avAutoHeight', function($window, $timeout) { + .directive('avAutoHeight', function($window, $interval) { return { link: function(scope, element, attrs) { var sibling, recalculate, promise = null; @@ -38,9 +38,9 @@ angular.module('avUi') recalculate = function () { if (promise) { - $timeout.cancel(promise); + $interval.cancel(promise); } - promise = $timeout(function() { + promise = $interval(function() { var additionalHeight = 0, height; if (!!attrs.additionalHeight) { additionalHeight = parseInt(attrs.additionalHeight, 10); diff --git a/avUi/autoscroll-down-directive.js b/avUi/autoscroll-down-directive.js index 65995e9d..c402af6b 100644 --- a/avUi/autoscroll-down-directive.js +++ b/avUi/autoscroll-down-directive.js @@ -24,7 +24,7 @@ *
*/ angular.module('avUi') - .directive('avScrollToBottom', function($timeout) { + .directive('avScrollToBottom', function($interval) { return { restrict: 'A', link: function postLink(scope, element, attrs) { diff --git a/avUi/collapsing-directive.js b/avUi/collapsing-directive.js index d31d661a..a579cd6f 100644 --- a/avUi/collapsing-directive.js +++ b/avUi/collapsing-directive.js @@ -34,7 +34,7 @@ * Otherwise, it will directly a global angular.element() to find them. */ angular.module('avUi') - .directive('avCollapsing', function($window, $timeout) { + .directive('avCollapsing', function($window, $interval) { function select(instance, el, selector) { var val; @@ -130,8 +130,8 @@ angular.module('avUi') var timeout; function callCheck() { - timeout = $timeout(function() { - $timeout.cancel(timeout); + timeout = $interval(function() { + $interval.cancel(timeout); checkCollapse(instance, iElement, iAttrs); }, 500); } diff --git a/avUi/debounce-directive.js b/avUi/debounce-directive.js index c2385143..641e3e75 100644 --- a/avUi/debounce-directive.js +++ b/avUi/debounce-directive.js @@ -17,7 +17,7 @@ // source: https://gist.github.com/tommaitland/7579618#file-ng-debounce-js angular.module('avUi') - .directive('avDebounce', function($timeout) { + .directive('avDebounce', function($interval) { return { restrict: 'A', require: 'ngModel', @@ -30,8 +30,8 @@ angular.module('avUi') var debounce; elm.bind('input', function() { - $timeout.cancel(debounce); - debounce = $timeout( function() { + $interval.cancel(debounce); + debounce = $interval( function() { scope.$apply(function() { ngModelCtrl.$setViewValue(elm.val()); }); diff --git a/dist/appCommon-vmaster.js b/dist/appCommon-vmaster.js index 6ec3fd44..ac928293 100644 --- a/dist/appCommon-vmaster.js +++ b/dist/appCommon-vmaster.js @@ -397,7 +397,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist $scope.event_id = $stateParams.id, $scope.code = $stateParams.code, $scope.email = $stateParams.email, $scope.username = $stateParams.username, $scope.isOpenId = $stateParams.isOpenId, $scope.withCode = $stateParams.withCode; -} ]), angular.module("avRegistration").directive("avLogin", [ "Authmethod", "StateDataService", "$state", "$location", "$cookies", "$i18next", "$window", "$timeout", "ConfigService", "Patterns", function(Authmethod, StateDataService, $state, $location, $cookies, $i18next, $window, $timeout, ConfigService, Patterns) { +} ]), angular.module("avRegistration").directive("avLogin", [ "Authmethod", "StateDataService", "$state", "$location", "$cookies", "$i18next", "$window", "$interval", "ConfigService", "Patterns", function(Authmethod, StateDataService, $state, $location, $cookies, $i18next, $window, $interval, ConfigService, Patterns) { return { restrict: "AE", scope: !0, @@ -430,9 +430,9 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist })), stop || (field && (field.value = ""), scope.sendingData = !0, Authmethod.resendAuthCode(data, autheventid).then(function(response) { _.each(scope.login_fields, function(element) { void 0 !== element.steps && -1 === element.steps.indexOf(0) || (element.disabled = !0); - }), scope.currentFormStep = 1, scope.error = null, $timeout(scope.sendingDataTimeout, 3e3); + }), scope.currentFormStep = 1, scope.error = null, $interval(scope.sendingDataTimeout, 3e3); }, function(response) { - $timeout(scope.sendingDataTimeout, 3e3), scope.error = $i18next("avRegistration.errorSendingAuthCode"); + $interval(scope.sendingDataTimeout, 3e3), scope.error = $i18next("avRegistration.errorSendingAuthCode"); })))); }, scope.sendingDataTimeout = function() { scope.sendingData = !1; @@ -803,7 +803,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist }, templateUrl: "avRegistration/fields/code-field-directive/code-field-directive.html" }; -} ]), angular.module("avRegistration").directive("avrTelField", [ "$state", "$timeout", function($state, $timeout) { +} ]), angular.module("avRegistration").directive("avrTelField", [ "$state", "$interval", function($state, $interval) { return { restrict: "AE", scope: !0, @@ -813,7 +813,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist $.get("https://ipinfo.io", function() {}, "jsonp").always(function(resp) { ipData = resp; for (var i = 0; i < ipCallbacks.length; i++) ipCallbacks[i](); - }), $timeout(function() { + }), $interval(function() { var telInput = angular.element(document.getElementById("input" + scope.index)); telInput.intlTelInput({ utilsScript: "election/utils.js", @@ -871,11 +871,11 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist scope: !0, templateUrl: "avRegistration/fields/textarea-field-directive/textarea-field-directive.html" }; -} ]), angular.module("avRegistration").directive("avrImageField", [ "$state", "$timeout", function($state, $timeout) { +} ]), angular.module("avRegistration").directive("avrImageField", [ "$state", "$interval", function($state, $interval) { return { restrict: "AE", link: function(scope, element, attrs) { - $timeout(function() { + $interval(function() { $("#image-field").change(function() { var input, FR; (input = this).files && input.files[0] && ((FR = new FileReader()).onload = function(e) { @@ -1017,7 +1017,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist }, templateUrl: "avUi/change-lang-directive/change-lang-directive.html" }; -} ]), angular.module("avUi").directive("avAffixBottom", [ "$window", "$timeout", "$parse", function($window, $timeout, $parse) { +} ]), angular.module("avUi").directive("avAffixBottom", [ "$window", "$interval", "$parse", function($window, $interval, $parse) { return { restrict: "EAC", link: function(scope, iElement, iAttrs) { @@ -1029,8 +1029,8 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist forceAffixWidth: parseInt(iAttrs.forceAffixWidth, 10) }; function callCheckPos() { - timeout = $timeout(function() { - $timeout.cancel(timeout), function(scope, instance, el) { + timeout = $interval(function() { + $interval.cancel(timeout), function(scope, instance, el) { var affix = !1, elHeight = $(el).actual("height"); ($("body").height() + elHeight > window.innerHeight || instance.forceAffixWidth && window.innerWidth < instance.forceAffixWidth) && (affix = "affix-bottom"), instance.affixed !== affix && (instance.affix = affix, instance.setIsAffix(scope, affix), @@ -1045,13 +1045,13 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist angular.element(iElement).on("resize", callCheckPos); } }; -} ]), angular.module("avUi").directive("avAutoHeight", [ "$window", "$timeout", function($window, $timeout) { +} ]), angular.module("avUi").directive("avAutoHeight", [ "$window", "$interval", function($window, $interval) { return { link: function(scope, element, attrs) { var promise = null, sibling = function() { return element.closest(attrs.parentSelector).find(attrs.siblingSelector); }, recalculate = function() { - promise && $timeout.cancel(promise), promise = $timeout(function() { + promise && $interval.cancel(promise), promise = $interval(function() { var height, additionalHeight = 0; attrs.additionalHeight && (additionalHeight = parseInt(attrs.additionalHeight, 10)), height = sibling().height(), element.css("max-height", height + additionalHeight + "px"); @@ -1064,7 +1064,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist }), recalculate(); } }; -} ]), angular.module("avUi").directive("avAffixTopOffset", [ "$window", "$timeout", "$parse", function($window, $timeout, $parse) { +} ]), angular.module("avUi").directive("avAffixTopOffset", [ "$window", "$interval", "$parse", function($window, $interval, $parse) { return { restrict: "EAC", link: function(scope, iElement, iAttrs) { @@ -1089,14 +1089,14 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist } callCheckPos(), angular.element($window).on("scroll", callCheckPos), angular.element($window).on("resize", function() { iElement.removeClass("affix-top"), iElement.attr("style", ""), instance.affix = !1, - instance.scrollAffix = null, $timeout(function() { + instance.scrollAffix = null, $interval(function() { instance.baseOffset = iElement.offset(), instance.baseWidth = iElement.width(), callCheckPos(); }, 300); }); } }; -} ]), angular.module("avUi").directive("avAffixTop", [ "$window", "$timeout", function($window, $timeout) { +} ]), angular.module("avUi").directive("avAffixTop", [ "$window", "$interval", function($window, $interval) { function updateMargin(el, options) { var height = parseInt(options.minHeight), height = Math.max($(el).height(), angular.isNumber(height) && !isNaN(height) ? height : 0); $(options.avAffixTop).css("padding-top", height + "px"); @@ -1106,8 +1106,8 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist link: function(scope, iElement, iAttrs) { var timeout; function updateMarginTimeout() { - timeout = $timeout(function() { - $timeout.cancel(timeout), updateMargin(iElement, iAttrs); + timeout = $interval(function() { + $interval.cancel(timeout), updateMargin(iElement, iAttrs); }, 300); } updateMargin(iElement, iAttrs), void 0 === iAttrs.minHeight && (iAttrs.minHeight = "20"), @@ -1115,7 +1115,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist angular.element($window).bind("resize", updateMarginTimeout), $(iAttrs.avAffixTop).change(updateMarginTimeout); } }; -} ]), angular.module("avUi").directive("avCollapsing", [ "$window", "$timeout", function($window, $timeout) { +} ]), angular.module("avUi").directive("avCollapsing", [ "$window", "$interval", function($window, $interval) { function select(instance, el, val) { val = instance.parentSelector ? el.closest(instance.parentSelector).find(val) : angular.element(val); return val; @@ -1134,8 +1134,8 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist collapseSelector: iAttrs.collapseSelector }; function callCheck() { - timeout = $timeout(function() { - $timeout.cancel(timeout), function(instance, el) { + timeout = $interval(function() { + $interval.cancel(timeout), function(instance, el) { var maxHeight = select(instance, el, instance.maxHeightSelector).css("max-height"), height = angular.element(el)[0].scrollHeight, paddingTop = angular.element(el).css("padding-top"); -1 !== maxHeight.indexOf("px") ? (paddingTop = paddingTop && -1 !== paddingTop.indexOf("px") ? parseInt(paddingTop.replace("px", "")) : 0, (maxHeight = parseInt(maxHeight.replace("px", ""))) < height - paddingTop ? instance.isCollapsed || (instance.isCollapsed = !0, @@ -1171,7 +1171,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist }; } }; -} ]), angular.module("avUi").directive("avDebounce", [ "$timeout", function($timeout) { +} ]), angular.module("avUi").directive("avDebounce", [ "$interval", function($interval) { return { restrict: "A", require: "ngModel", @@ -1179,7 +1179,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist link: function(scope, elm, attr, ngModelCtrl) { var debounce; "radio" !== attr.type && "checkbox" !== attr.type && (elm.unbind("input"), elm.bind("input", function() { - $timeout.cancel(debounce), debounce = $timeout(function() { + $interval.cancel(debounce), debounce = $interval(function() { scope.$apply(function() { ngModelCtrl.$setViewValue(elm.val()); }); @@ -1362,7 +1362,7 @@ angular.module("avRegistration").config(function() {}), angular.module("avRegist return data; } }; -} ]), angular.module("avUi").directive("avScrollToBottom", [ "$timeout", function($timeout) { +} ]), angular.module("avUi").directive("avScrollToBottom", [ "$interval", function($interval) { return { restrict: "A", link: function(scope, element, attrs) {