UNPKG

@qntm-code/utils

Version:

A collection of useful utility functions with associated TypeScript types. All functions have been unit tested.

19 lines (18 loc) 727 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isMergeableObject = void 0; const isReactElement_js_1 = require("./isReactElement.js"); /** * Figuring out which properties of an object should be recursively iterated over when merging. */ function isMergeableObject(value) { return isNonNullObject(value) && !isSpecial(value); } exports.isMergeableObject = isMergeableObject; function isNonNullObject(value) { return !!value && typeof value === 'object'; } function isSpecial(value) { const stringValue = Object.prototype.toString.call(value); return stringValue === '[object RegExp]' || stringValue === '[object Date]' || (0, isReactElement_js_1.isReactElement)(value); }