MCPcopy
hub / github.com/benjitaylor/agentation / shouldIncludeComponent

Function shouldIncludeComponent

package/src/utils/react-detection.ts:307–354  ·  view source on GitHub ↗
(
  name: string,
  depth: number,
  config: ResolvedConfig,
  domClasses?: Set<string>,
)

Source from the content-addressed store, hash-verified

305}
306
307function shouldIncludeComponent(
308 name: string,
309 depth: number,
310 config: ResolvedConfig,
311 domClasses?: Set<string>,
312): boolean {
313 // Custom filter takes precedence
314 if (config.filter) {
315 return config.filter(name, depth);
316 }
317
318 switch (config.mode) {
319 case "all":
320 // "all" mode shows everything - no filtering at all
321 return true;
322
323 case "filtered":
324 // "filtered" mode skips framework internals
325 if (config.skipExact.has(name)) {
326 return false;
327 }
328 if (config.skipPatterns.some((p) => p.test(name))) {
329 return false;
330 }
331 return true;
332
333 case "smart":
334 // "smart" mode: first apply framework filters, then require DOM correlation
335 if (config.skipExact.has(name)) {
336 return false;
337 }
338 if (config.skipPatterns.some((p) => p.test(name))) {
339 return false;
340 }
341 // Must correlate with DOM classes OR match user patterns
342 if (domClasses && componentCorrelatesWithDOM(name, domClasses)) {
343 return true;
344 }
345 if (config.userPatterns.some((p) => p.test(name))) {
346 return true;
347 }
348 // Skip components that don't correlate - this mode is intentionally strict
349 return false;
350
351 default:
352 return true;
353 }
354}
355
356// =============================================================================
357// React Detection

Callers 1

getReactComponentNameFunction · 0.85

Calls 1

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…