Home / Function/ deepMerge() — supabase Function Reference

deepMerge() — supabase Function Reference

Architecture documentation for the deepMerge() function in deepMerge.ts from the supabase codebase.

Entity Profile

Dependency Diagram

graph TD
  a1909c53_6c6a_4807_4c44_fcea7b64381a["deepMerge()"]
  092e07cb_1d6d_aac1_850c_58b0cedc25f8["link()"]
  092e07cb_1d6d_aac1_850c_58b0cedc25f8 -->|calls| a1909c53_6c6a_4807_4c44_fcea7b64381a
  80956428_d9d0_1b2c_fb8c_db56ae88cfb0["linkGroup()"]
  80956428_d9d0_1b2c_fb8c_db56ae88cfb0 -->|calls| a1909c53_6c6a_4807_4c44_fcea7b64381a
  b2dd25c9_03e8_14a6_d995_cab2083c5763["isObject()"]
  a1909c53_6c6a_4807_4c44_fcea7b64381a -->|calls| b2dd25c9_03e8_14a6_d995_cab2083c5763
  style a1909c53_6c6a_4807_4c44_fcea7b64381a fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

apps/cms/src/utilities/deepMerge.ts lines 17–34

export default function deepMerge<T, R>(target: T, source: R): T {
  const output = { ...target }
  if (isObject(target) && isObject(source)) {
    Object.keys(source).forEach((key) => {
      if (isObject(source[key])) {
        if (!(key in target)) {
          Object.assign(output, { [key]: source[key] })
        } else {
          output[key] = deepMerge(target[key], source[key])
        }
      } else {
        Object.assign(output, { [key]: source[key] })
      }
    })
  }

  return output
}

Subdomains

Calls

Called By

Frequently Asked Questions

What does deepMerge() do?
deepMerge() is a function in the supabase codebase.
What does deepMerge() call?
deepMerge() calls 1 function(s): isObject.
What calls deepMerge()?
deepMerge() is called by 2 function(s): link, linkGroup.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free