MCPcopy
hub / github.com/webpack/webpack / getValueType

Function getValueType

lib/util/cleverMerge.js:287–303  ·  view source on GitHub ↗
(value)

Source from the content-addressed store, hash-verified

285 * @returns {VALUE_TYPE_UNDEFINED | VALUE_TYPE_ATOM | VALUE_TYPE_ARRAY_EXTEND | VALUE_TYPE_OBJECT | VALUE_TYPE_DELETE} value type
286 */
287const getValueType = (value) => {
288 if (value === undefined) {
289 return VALUE_TYPE_UNDEFINED;
290 } else if (value === DELETE) {
291 return VALUE_TYPE_DELETE;
292 } else if (Array.isArray(value)) {
293 if (value.includes("...")) return VALUE_TYPE_ARRAY_EXTEND;
294 return VALUE_TYPE_ATOM;
295 } else if (
296 typeof value === "object" &&
297 value !== null &&
298 (!value.constructor || value.constructor === Object)
299 ) {
300 return VALUE_TYPE_OBJECT;
301 }
302 return VALUE_TYPE_ATOM;
303};
304
305/**
306 * Merges two objects. Objects are deeply clever merged.

Callers 3

mergeEntriesFunction · 0.85
mergeSingleValueFunction · 0.85
removeOperationsFunction · 0.85

Calls 1

isArrayMethod · 0.80

Tested by

no test coverage detected