diff --git a/package-lock.json b/package-lock.json index 43a27e58f09..a5f3c6fec63 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,7 @@ "@vuepress/plugin-html-redirect": "^0.1.2", "chartjs-adapter-luxon": "^1.0.0", "chartjs-adapter-moment": "^1.0.0", - "chartjs-test-utils": "^0.3.0", + "chartjs-test-utils": "^0.3.1", "concurrently": "^6.0.1", "coveralls": "^3.1.0", "cross-env": "^7.0.3", @@ -5419,9 +5419,9 @@ } }, "node_modules/chartjs-test-utils": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/chartjs-test-utils/-/chartjs-test-utils-0.3.0.tgz", - "integrity": "sha512-YN3K8hZgiCZaVDvfysQ91ERd3q1knvydN0NmKS8N5S9MUyW1lvVaelrDL1f8Zh3jq2Qo+IjpUyO4VeOR5XvmsQ==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/chartjs-test-utils/-/chartjs-test-utils-0.3.1.tgz", + "integrity": "sha512-QsRYLWOedYGsloDvJsByPNUK44TOiqnxQEO5FOrOm9SguEl5WmJDCOIdd/1ePLOX4gGRClXBDVxD7o1SJY+nWA==", "dev": true, "dependencies": { "jasmine": "^3.6.4", @@ -23368,9 +23368,9 @@ "requires": {} }, "chartjs-test-utils": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/chartjs-test-utils/-/chartjs-test-utils-0.3.0.tgz", - "integrity": "sha512-YN3K8hZgiCZaVDvfysQ91ERd3q1knvydN0NmKS8N5S9MUyW1lvVaelrDL1f8Zh3jq2Qo+IjpUyO4VeOR5XvmsQ==", + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/chartjs-test-utils/-/chartjs-test-utils-0.3.1.tgz", + "integrity": "sha512-QsRYLWOedYGsloDvJsByPNUK44TOiqnxQEO5FOrOm9SguEl5WmJDCOIdd/1ePLOX4gGRClXBDVxD7o1SJY+nWA==", "dev": true, "requires": { "jasmine": "^3.6.4", diff --git a/package.json b/package.json index 2ce25fbc54b..48e08a4d786 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "@vuepress/plugin-html-redirect": "^0.1.2", "chartjs-adapter-luxon": "^1.0.0", "chartjs-adapter-moment": "^1.0.0", - "chartjs-test-utils": "^0.3.0", + "chartjs-test-utils": "^0.3.1", "concurrently": "^6.0.1", "coveralls": "^3.1.0", "cross-env": "^7.0.3", diff --git a/src/core/core.controller.js b/src/core/core.controller.js index 4162ac8f198..e019bb7f67f 100644 --- a/src/core/core.controller.js +++ b/src/core/core.controller.js @@ -1067,7 +1067,7 @@ class Chart { _eventHandler(e, replay) { const me = this; const args = {event: e, replay, cancelable: true}; - const eventFilter = (plugin) => (plugin.options.events || this.options.events).includes(e.type); + const eventFilter = (plugin) => (plugin.options.events || this.options.events).includes(e.native.type); if (me.notifyPlugins('beforeEvent', args, eventFilter) === false) { return; diff --git a/test/specs/core.plugin.tests.js b/test/specs/core.plugin.tests.js index 5c1c9cccb8d..285dbab5b54 100644 --- a/test/specs/core.plugin.tests.js +++ b/test/specs/core.plugin.tests.js @@ -398,10 +398,10 @@ describe('Chart.plugins', function() { const results = []; const chart = window.acquireChart({ options: { - events: ['mousemove', 'test', 'test2'], + events: ['mousemove', 'test', 'test2', 'pointerleave'], plugins: { testPlugin: { - events: ['test'] + events: ['test', 'pointerleave'] } } }, @@ -418,7 +418,8 @@ describe('Chart.plugins', function() { await jasmine.triggerMouseEvent(chart, 'mousemove', {x: 0, y: 0}); await jasmine.triggerMouseEvent(chart, 'test', {x: 0, y: 0}); await jasmine.triggerMouseEvent(chart, 'test2', {x: 0, y: 0}); - expect(results).toEqual(['beforetest', 'aftertest']); + await jasmine.triggerMouseEvent(chart, 'pointerleave', {x: 0, y: 0}); + expect(results).toEqual(['beforetest', 'aftertest', 'beforemouseout', 'aftermouseout']); }); }); });