UNPKG

@technobuddha/library

Version:
30 lines 1.62 kB
/** * Determines if the provided value is a {@link Rect}e. * * A value is considered a {@link Rect} if it is a non-null object * that contains numeric `x`, `y`, 'width', and 'height' properties. * @param object - The value to test for Rectangle structure. * @returns `true` if the value is a Rectangle, otherwise `false`. * @example * ```typescript * isRect({ x: 1, y: 2, width: 3, height: 4 }); // true * isRect({ x: 1, y: 2, width: 3 }); // false * isRect(null); // false * isRect([1, 2, 3, 4]); // false * ``` * @group Geometry * @category Rectangle */ export function isRect(object) { return (object != null && typeof object === 'object' && 'x' in object && 'y' in object && 'width' in object && 'height' in object && typeof object.x === 'number' && typeof object.y === 'number' && typeof object.width === 'number' && typeof object.height === 'number'); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtcmVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9pcy1yZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxVQUFVLE1BQU0sQ0FBQyxNQUFlO0lBQ3BDLE9BQU8sQ0FDTCxNQUFNLElBQUksSUFBSTtRQUNkLE9BQU8sTUFBTSxLQUFLLFFBQVE7UUFDMUIsR0FBRyxJQUFJLE1BQU07UUFDYixHQUFHLElBQUksTUFBTTtRQUNiLE9BQU8sSUFBSSxNQUFNO1FBQ2pCLFFBQVEsSUFBSSxNQUFNO1FBQ2xCLE9BQVEsTUFBZSxDQUFDLENBQUMsS0FBSyxRQUFRO1FBQ3RDLE9BQVEsTUFBZSxDQUFDLENBQUMsS0FBSyxRQUFRO1FBQ3RDLE9BQVEsTUFBZSxDQUFDLEtBQUssS0FBSyxRQUFRO1FBQzFDLE9BQVEsTUFBZSxDQUFDLE1BQU0sS0FBSyxRQUFRLENBQzVDLENBQUM7QUFDSixDQUFDIn0=