From 916eae6c95f6ce2b8c720695bf42aca49a4bde94 Mon Sep 17 00:00:00 2001 From: cdmdotnet Date: Thu, 24 Oct 2019 10:06:57 +1300 Subject: [PATCH 1/9] Added null reference handling --- src/angular-tooltip.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/angular-tooltip.js b/src/angular-tooltip.js index 7940af7..ea4e1dc 100644 --- a/src/angular-tooltip.js +++ b/src/angular-tooltip.js @@ -78,7 +78,8 @@ */ function close() { delete result.elem; - $animate.leave(elem); + if (elem !== undefined && elem != null) + $animate.leave(elem); detachTether(); } From 43c0e8a241eddb671e9e9d9a7b14c2c5051670c3 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Thu, 24 Oct 2019 10:41:10 +1300 Subject: [PATCH 2/9] Merged branch willhoag-master --- .gitignore | 1 + examples/index.html | 1 - karma.conf.js | 4 ++-- src/angular-tooltip.js | 15 ++++++++------- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index fd3a1c2..35118cb 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ bower_components node_modules .tmp +.DS_Store diff --git a/examples/index.html b/examples/index.html index a062c38..2b14a74 100644 --- a/examples/index.html +++ b/examples/index.html @@ -24,7 +24,6 @@ } - diff --git a/karma.conf.js b/karma.conf.js index 2b03fbf..31f5eef 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -17,7 +17,7 @@ module.exports = function(config) { // list of files / patterns to load in the browser files: [ - 'bower_components/jquery/jquery.js', + 'bower_components/jquery/dist/jquery.js', 'bower_components/angular/angular.js', 'bower_components/tether/tether.js', @@ -61,7 +61,7 @@ module.exports = function(config) { // - Safari (only Mac) // - PhantomJS // - IE (only Windows) - browsers: ['Firefox'], + browsers: ['PhantomJS'], // Continuous Integration mode diff --git a/src/angular-tooltip.js b/src/angular-tooltip.js index ea4e1dc..836620d 100644 --- a/src/angular-tooltip.js +++ b/src/angular-tooltip.js @@ -25,7 +25,7 @@ options = extend({ templateUrl: defaultTemplateUrl }, options); options.tether = extend({}, defaultTetherOptions, options.tether || {}); - var template = options.template || ( $templateCache.get(options.templateUrl) ? $templateCache.get(options.templateUrl)[1] : undefined ), + var template = options.template || ( $templateCache.get(options.templateUrl) ? $templateCache.get(options.templateUrl) : undefined ), scope = options.scope || $rootScope.$new(), target = options.target, tether, elem; @@ -42,7 +42,7 @@ function attachTether() { tether = new Tether(extend({ element: elem, - target: target + target: target[0] }, options.tether)); } @@ -79,7 +79,7 @@ function close() { delete result.elem; if (elem !== undefined && elem != null) - $animate.leave(elem); + $animate.leave(angular.element(elem)); detachTether(); } @@ -120,10 +120,11 @@ /** * Toggle the tooltip. */ - elem.hover(function() { - scope.$apply(tooltip.open); - }, function() { - scope.$apply(tooltip.close); + elem.on('mouseover', function() { + scope.$apply(tooltip.open()); + }); + elem.on('mouseout', function() { + scope.$apply(tooltip.close()); }); } }; From 8546947ed6f3eff39b5f9c62b2d8606dc78e3dd1 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Thu, 24 Oct 2019 12:37:01 +1300 Subject: [PATCH 3/9] Even better null reference handling --- src/angular-tooltip.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/angular-tooltip.js b/src/angular-tooltip.js index 836620d..24b5a55 100644 --- a/src/angular-tooltip.js +++ b/src/angular-tooltip.js @@ -53,8 +53,13 @@ if (tether) { tether.destroy(); tether = undefined; - angular.element(elem).scope().$destroy(); - angular.element(elem).remove(); + var ae = angular.element(elem); + if (ae !== undefined){ + var aes = ae.scope(); + if (aes !== undefined) + aes.$destroy(); + ae.remove(); + } } } From be4c684ec2956dedc058ee58f41414ad2f4908ce Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Wed, 30 Oct 2019 19:21:43 +1300 Subject: [PATCH 4/9] Better handling for ng-repeats --- src/angular-tooltip.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/angular-tooltip.js b/src/angular-tooltip.js index 24b5a55..471b3bd 100644 --- a/src/angular-tooltip.js +++ b/src/angular-tooltip.js @@ -74,8 +74,12 @@ } result.elem = elem; $animate.enter(elem, null, target); - attachTether(); - tether.position(); + // without a timeout, an ng-repeat won't have finished, thus the height won't be calculated for attachment, and only top based alignment will work + // bottom base or variable width, right based alignment will be flakey. + $timeout(function(){ + attachTether(); + tether.position(); + }, 0); } /** From be1dc24551f966c145050cab534b749a2cf6c905 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Wed, 30 Oct 2019 19:25:49 +1300 Subject: [PATCH 5/9] Updated package.json --- package.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index be28983..446daf0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,7 @@ { - "name": "remind101.js", - "description": "Restangular client for the Remind101 API", + "name": "angular-tooltip", + "version": "1.0.5", + "description": "Simple and extensible tooltips for angularjs", "devDependencies": { "grunt": "~0.4.1", "grunt-contrib-uglify": "~0.2.0", From 68b99c9b944371b9efd361c873e1530b5c8ad4b5 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Wed, 30 Oct 2019 19:29:39 +1300 Subject: [PATCH 6/9] Updated package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 446daf0..512c0b5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-tooltip", - "version": "1.0.5", + "version": "1.2.1", "description": "Simple and extensible tooltips for angularjs", "devDependencies": { "grunt": "~0.4.1", From 2d687d3c2a3403e30363a3b56476da08f49ba133 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Wed, 30 Oct 2019 19:32:24 +1300 Subject: [PATCH 7/9] Updated package.json --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 512c0b5..c75e1ad 100644 --- a/package.json +++ b/package.json @@ -2,6 +2,7 @@ "name": "angular-tooltip", "version": "1.2.1", "description": "Simple and extensible tooltips for angularjs", + "repository": "https://github.com/Chinchilla-Software-Com/angular-tooltip", "devDependencies": { "grunt": "~0.4.1", "grunt-contrib-uglify": "~0.2.0", From 7e3adb8711e28a0394b83f1a981e42a26f3b3607 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Tue, 22 Sep 2020 21:02:39 +1200 Subject: [PATCH 8/9] package name. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c75e1ad..38e834c 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "angular-tooltip", + "name": "@chinchilla-software/angular-tooltip", "version": "1.2.1", "description": "Simple and extensible tooltips for angularjs", "repository": "https://github.com/Chinchilla-Software-Com/angular-tooltip", From 5cbac7e82ad38966ea184c771d7e11e4c2308330 Mon Sep 17 00:00:00 2001 From: Grover Jackson Date: Thu, 3 Dec 2020 14:52:18 +1300 Subject: [PATCH 9/9] Security audit. --- package.json | 33 ++++++--------------------------- 1 file changed, 6 insertions(+), 27 deletions(-) diff --git a/package.json b/package.json index 38e834c..4ea8ddd 100644 --- a/package.json +++ b/package.json @@ -1,30 +1,9 @@ { - "name": "@chinchilla-software/angular-tooltip", - "version": "1.2.1", - "description": "Simple and extensible tooltips for angularjs", - "repository": "https://github.com/Chinchilla-Software-Com/angular-tooltip", - "devDependencies": { - "grunt": "~0.4.1", - "grunt-contrib-uglify": "~0.2.0", - "grunt-contrib-copy": "~0.4.1", - "grunt-contrib-concat": "~0.3.0", - "grunt-ngmin": "~0.0.3", - "load-grunt-tasks": "~0.2.0", - "karma": "latest", - "karma-mocha": "latest", - "karma-phantomjs-launcher": "~0.1.0", - "chai": "latest", - "sinon": "latest", - "sinon-chai": "latest", - "chai-jquery": "~1.2.1" - }, - "engines": { - "node": ">=0.8.0" - }, - "scripts": { - "test": "grunt test" - }, - "dependencies": { - "grunt-karma": "^0.10.1" + "name": "@chinchilla-software/angular-tooltip", + "version": "1.2.2", + "description": "Simple and extensible tooltips for angularjs", + "repository": "https://github.com/Chinchilla-Software-Com/angular-tooltip", + "dependencies": { + "angular": "1.8.2" } }