12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- /**
- * Copyright (c) Facebook, Inc. and its affiliates.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- *
- * @format
- */
- 'use strict';
- const PooledClass = require('./PooledClass');
- const twoArgumentPooler = PooledClass.twoArgumentPooler;
- /**
- * PooledClass representing the bounding rectangle of a region.
- *
- * @param {number} width Width of bounding rectangle.
- * @param {number} height Height of bounding rectangle.
- * @constructor BoundingDimensions
- */
- function BoundingDimensions(width, height) {
- this.width = width;
- this.height = height;
- }
- BoundingDimensions.prototype.destructor = function() {
- this.width = null;
- this.height = null;
- };
- /**
- * @param {HTMLElement} element Element to return `BoundingDimensions` for.
- * @return {BoundingDimensions} Bounding dimensions of `element`.
- */
- BoundingDimensions.getPooledFromElement = function(element) {
- return BoundingDimensions.getPooled(
- element.offsetWidth,
- element.offsetHeight,
- );
- };
- PooledClass.addPoolingTo(BoundingDimensions, twoArgumentPooler);
- module.exports = BoundingDimensions;
|