Home / Function/ getCachedFilterForPlugin() — vite Function Reference

getCachedFilterForPlugin() — vite Function Reference

Architecture documentation for the getCachedFilterForPlugin() function in index.ts from the vite codebase.

Entity Profile

Dependency Diagram

graph TD
  52da5dad_0e46_dc8f_fae0_b17308d247cc["getCachedFilterForPlugin()"]
  3bf7f0de_2a9f_6f04_cead_0321b3b7af01["index.ts"]
  52da5dad_0e46_dc8f_fae0_b17308d247cc -->|defined in| 3bf7f0de_2a9f_6f04_cead_0321b3b7af01
  c3f72447_6ade_7e1a_5913_f1b30ae4a31f["resolveId()"]
  c3f72447_6ade_7e1a_5913_f1b30ae4a31f -->|calls| 52da5dad_0e46_dc8f_fae0_b17308d247cc
  bff62ce1_58a6_b7b5_ef28_a3e2a2bc0779["load()"]
  bff62ce1_58a6_b7b5_ef28_a3e2a2bc0779 -->|calls| 52da5dad_0e46_dc8f_fae0_b17308d247cc
  dcf6f9d5_316b_0287_6984_8729d3e6c0aa["transform()"]
  dcf6f9d5_316b_0287_6984_8729d3e6c0aa -->|calls| 52da5dad_0e46_dc8f_fae0_b17308d247cc
  2028ffd7_bb86_8e57_1cc6_88762c8f9363["extractFilter()"]
  52da5dad_0e46_dc8f_fae0_b17308d247cc -->|calls| 2028ffd7_bb86_8e57_1cc6_88762c8f9363
  4cdadc30_895b_3584_a0e8_801554f99fbe["createIdFilter()"]
  52da5dad_0e46_dc8f_fae0_b17308d247cc -->|calls| 4cdadc30_895b_3584_a0e8_801554f99fbe
  d7f67fe9_b7c9_af12_925b_3c23f7ce8c79["createFilterForTransform()"]
  52da5dad_0e46_dc8f_fae0_b17308d247cc -->|calls| d7f67fe9_b7c9_af12_925b_3c23f7ce8c79
  style 52da5dad_0e46_dc8f_fae0_b17308d247cc fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/vite/src/node/plugins/index.ts lines 202–241

export function getCachedFilterForPlugin<
  H extends 'resolveId' | 'load' | 'transform',
>(plugin: Plugin, hookName: H): FilterForPluginValue[H] | undefined {
  let filters = filterForPlugin.get(plugin)
  if (filters && hookName in filters) {
    return filters[hookName]
  }

  if (!filters) {
    filters = {}
    filterForPlugin.set(plugin, filters)
  }

  let filter: PluginFilter | TransformHookFilter | undefined
  switch (hookName) {
    case 'resolveId': {
      const rawFilter = extractFilter(plugin.resolveId)?.id
      filters.resolveId = createIdFilter(rawFilter)
      filter = filters.resolveId
      break
    }
    case 'load': {
      const rawFilter = extractFilter(plugin.load)?.id
      filters.load = createIdFilter(rawFilter)
      filter = filters.load
      break
    }
    case 'transform': {
      const rawFilters = extractFilter(plugin.transform)
      filters.transform = createFilterForTransform(
        rawFilters?.id,
        rawFilters?.code,
        rawFilters?.moduleType,
      )
      filter = filters.transform
      break
    }
  }
  return filter as FilterForPluginValue[H] | undefined
}

Domain

Subdomains

Frequently Asked Questions

What does getCachedFilterForPlugin() do?
getCachedFilterForPlugin() is a function in the vite codebase, defined in packages/vite/src/node/plugins/index.ts.
Where is getCachedFilterForPlugin() defined?
getCachedFilterForPlugin() is defined in packages/vite/src/node/plugins/index.ts at line 202.
What does getCachedFilterForPlugin() call?
getCachedFilterForPlugin() calls 3 function(s): createFilterForTransform, createIdFilter, extractFilter.
What calls getCachedFilterForPlugin()?
getCachedFilterForPlugin() is called by 3 function(s): load, resolveId, transform.

Analyze Your Own Codebase

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

Try Supermodel Free