diff --git a/css-element-queries.d.ts b/css-element-queries.d.ts index 97ee144..3fe0706 100644 --- a/css-element-queries.d.ts +++ b/css-element-queries.d.ts @@ -1,2 +1,2 @@ -export { ResizeSensor, ResizeSensorCallback } from "./src/ResizeSensor"; +export { ResizeSensor, ResizeSensorCallback, Size } from "./src/ResizeSensor"; export { ElementQueries } from './src/ElementQueries'; \ No newline at end of file diff --git a/src/ResizeSensor.d.ts b/src/ResizeSensor.d.ts index ad6c412..3fba8c6 100644 --- a/src/ResizeSensor.d.ts +++ b/src/ResizeSensor.d.ts @@ -1,4 +1,9 @@ -export declare type ResizeSensorCallback = (size: { width: number; height: number; }) => void; +export declare interface Size { + width: number; + height: number; +} + +export declare type ResizeSensorCallback = (size: Size) => void; export declare class ResizeSensor { /** diff --git a/src/ResizeSensor.js b/src/ResizeSensor.js index 12985d0..9a25503 100755 --- a/src/ResizeSensor.js +++ b/src/ResizeSensor.js @@ -305,7 +305,7 @@ this.detach = function(ev) { // clean up the unfinished animation frame to prevent a potential endless requestAnimationFrame of reset - if (!lastAnimationFrameForInvisibleCheck) { + if (lastAnimationFrameForInvisibleCheck) { cancelAnimationFrame(lastAnimationFrameForInvisibleCheck); lastAnimationFrameForInvisibleCheck = 0; } @@ -313,13 +313,19 @@ }; this.reset = function() { - element.resizeSensor.resetSensor(); + //To prevent invoking element.resizeSensor.resetSensor if it's undefined + if (element.resizeSensor.resetSensor) { + element.resizeSensor.resetSensor(); + } }; }; ResizeSensor.reset = function(element) { forEachElement(element, function(elem){ - elem.resizeSensor.resetSensor(); + //To prevent invoking element.resizeSensor.resetSensor if it's undefined + if (element.resizeSensor.resetSensor) { + elem.resizeSensor.resetSensor(); + } }); };