{
  "version": 1,
  "generatedAt": "2026-05-25T11:41:33.166Z",
  "fileId": "file:igeyi7:nexussearchbox-razor",
  "executableScope": true,
  "executableSymbolCount": 3,
  "fileNodeId": "file:igeyi7:nexussearchbox-razor",
  "symbolNodeIds": [
    "class:c49vab:nexussearchbox",
    "method:j1tqds:handlekeypress",
    "method:1sx9yhe:clearsearch",
    "method:1p9w1qk:isactive-getter",
    "type:1tp07fo:nexussearchbox-component"
  ],
  "containmentEdgeIds": [
    "edge:1c4bp84:contains",
    "edge:hweotf:contains",
    "edge:17mpa7y:contains",
    "edge:13x385k:contains",
    "edge:1evf6my:defines-type"
  ],
  "relationshipEdgeIds": [
    "edge:1c4bp84:contains",
    "edge:hweotf:contains",
    "edge:17mpa7y:contains",
    "edge:13x385k:contains",
    "edge:1evf6my:defines-type"
  ],
  "integrationEdgeIds": [],
  "controlFlowFragments": [
    {
      "fragmentId": "method:j1tqds:handlekeypress__fragment",
      "ownerFileId": "file:igeyi7:nexussearchbox-razor",
      "ownerSymbolId": "method:j1tqds:handlekeypress",
      "ownerSymbolName": "HandleKeyPress",
      "entryNodeId": "method:j1tqds:handlekeypress__entry",
      "exitNodeIds": [
        "method:j1tqds:handlekeypress__implicit_return"
      ],
      "nodes": [
        {
          "id": "method:j1tqds:handlekeypress__entry",
          "kind": "entry",
          "label": "HandleKeyPress entry",
          "line": 27,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.99,
          "detail": "Handles keyboard input on the search box and triggers the OnSearch callback when Enter is pressed."
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition",
          "kind": "condition",
          "label": "e.Key == \"Enter\"",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78,
          "detail": "if (e.Key == \"Enter\")"
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__true",
          "kind": "branch-true",
          "label": "true",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__false",
          "kind": "branch-false",
          "label": "false",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
          "kind": "statement",
          "label": "merge",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__condition",
          "kind": "condition",
          "label": "e.Key == \"Enter\"",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7,
          "detail": "If Enter, awaits OnSearch.InvokeAsync(SearchValue); otherwise does nothing."
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__true",
          "kind": "branch-true",
          "label": "invoke callback",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__false",
          "kind": "branch-false",
          "label": "no-op",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__merge",
          "kind": "statement",
          "label": "merge",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_31_handlekeypress_await_31_1__await",
          "kind": "await",
          "label": "Waits for async work",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.81,
          "detail": "await OnSearch.InvokeAsync(SearchValue);"
        },
        {
          "id": "method:j1tqds:handlekeypress__action_31_external_call_31__linear",
          "kind": "http-call",
          "label": "Invokes parent-provided event callback",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7,
          "detail": "await OnSearch.InvokeAsync(SearchValue) - raises the search event to parent components."
        },
        {
          "id": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync",
          "kind": "call",
          "label": "OnSearch.InvokeAsync",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.88,
          "detail": "SearchValue (string) passed to the parent callback"
        },
        {
          "id": "method:j1tqds:handlekeypress__implicit_return",
          "kind": "return",
          "label": "return",
          "line": 33,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.72,
          "detail": "Implicit method exit inferred from method boundary."
        }
      ],
      "edges": [
        {
          "id": "method:j1tqds:handlekeypress__entry__method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition",
          "from": "method:j1tqds:handlekeypress__entry",
          "to": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition",
          "kind": "next",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition__method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__true",
          "from": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition",
          "to": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__true",
          "kind": "condition-true",
          "label": "true",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition__method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__false",
          "from": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__condition",
          "to": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__false",
          "kind": "condition-false",
          "label": "false",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__true__method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
          "from": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__true",
          "to": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
          "kind": "next",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__false__method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
          "from": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__false",
          "to": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
          "kind": "next",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.78
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge__method:j1tqds:handlekeypress__action_29_guard_clause_29__condition",
          "from": "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
          "to": "method:j1tqds:handlekeypress__action_29_guard_clause_29__condition",
          "kind": "next",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__condition__method:j1tqds:handlekeypress__action_29_guard_clause_29__true",
          "from": "method:j1tqds:handlekeypress__action_29_guard_clause_29__condition",
          "to": "method:j1tqds:handlekeypress__action_29_guard_clause_29__true",
          "kind": "condition-true",
          "label": "invoke callback",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__condition__method:j1tqds:handlekeypress__action_29_guard_clause_29__false",
          "from": "method:j1tqds:handlekeypress__action_29_guard_clause_29__condition",
          "to": "method:j1tqds:handlekeypress__action_29_guard_clause_29__false",
          "kind": "condition-false",
          "label": "no-op",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__true__method:j1tqds:handlekeypress__action_29_guard_clause_29__merge",
          "from": "method:j1tqds:handlekeypress__action_29_guard_clause_29__true",
          "to": "method:j1tqds:handlekeypress__action_29_guard_clause_29__merge",
          "kind": "next",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__false__method:j1tqds:handlekeypress__action_29_guard_clause_29__merge",
          "from": "method:j1tqds:handlekeypress__action_29_guard_clause_29__false",
          "to": "method:j1tqds:handlekeypress__action_29_guard_clause_29__merge",
          "kind": "next",
          "line": 29,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_29_guard_clause_29__merge__method:j1tqds:handlekeypress__action_31_handlekeypress_await_31_1__await",
          "from": "method:j1tqds:handlekeypress__action_29_guard_clause_29__merge",
          "to": "method:j1tqds:handlekeypress__action_31_handlekeypress_await_31_1__await",
          "kind": "next",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.81
        },
        {
          "id": "method:j1tqds:handlekeypress__action_31_handlekeypress_await_31_1__await__method:j1tqds:handlekeypress__action_31_external_call_31__linear",
          "from": "method:j1tqds:handlekeypress__action_31_handlekeypress_await_31_1__await",
          "to": "method:j1tqds:handlekeypress__action_31_external_call_31__linear",
          "kind": "next",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:j1tqds:handlekeypress__action_31_external_call_31__linear__call_method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync",
          "from": "method:j1tqds:handlekeypress__action_31_external_call_31__linear",
          "to": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync",
          "kind": "call",
          "label": "SearchValue (string) passed to the parent callback",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.88
        },
        {
          "id": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync__implicit_return",
          "from": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync",
          "to": "method:j1tqds:handlekeypress__implicit_return",
          "kind": "return",
          "line": 33,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.72
        }
      ],
      "jumpTargets": [
        {
          "id": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync__jump_NexusReader_UI_Shared_Components_Atoms_NexusSearchBox_razor_OnSearch_InvokeAsync",
          "fromNodeId": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync",
          "kind": "call-target",
          "targetPath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "targetHint": "OnSearch.InvokeAsync",
          "line": 31,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "reason": "Call target OnSearch.InvokeAsync in NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor could not be matched to an extracted method symbol.",
          "status": "unresolved"
        }
      ],
      "exceptionTargets": [],
      "loopBackEdges": [],
      "mergeNodeIds": [
        "method:j1tqds:handlekeypress__action_29_handlekeypress_branch_29_0__merge",
        "method:j1tqds:handlekeypress__action_29_guard_clause_29__merge"
      ],
      "language": "unknown",
      "confidence": 0.98,
      "lineSpan": {
        "start": 27,
        "end": 33
      },
      "unsupportedConstructs": [],
      "evidence": [
        {
          "path": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "line": 27,
          "summary": "Control-flow fragment extracted for method HandleKeyPress.",
          "kind": "file-summary"
        }
      ]
    },
    {
      "fragmentId": "method:1sx9yhe:clearsearch__fragment",
      "ownerFileId": "file:igeyi7:nexussearchbox-razor",
      "ownerSymbolId": "method:1sx9yhe:clearsearch",
      "ownerSymbolName": "ClearSearch",
      "entryNodeId": "method:1sx9yhe:clearsearch__entry",
      "exitNodeIds": [
        "method:1sx9yhe:clearsearch__implicit_return"
      ],
      "nodes": [
        {
          "id": "method:1sx9yhe:clearsearch__entry",
          "kind": "entry",
          "label": "ClearSearch entry",
          "line": 35,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.99,
          "detail": "Clears the local search input value."
        },
        {
          "id": "method:1sx9yhe:clearsearch__action_37_state_mutation_37__linear",
          "kind": "statement",
          "label": "Resets SearchValue",
          "line": 37,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7,
          "detail": "Sets SearchValue = string.Empty causing IsActive to become false and UI to reflect cleared state."
        },
        {
          "id": "method:1sx9yhe:clearsearch__implicit_return",
          "kind": "return",
          "label": "return",
          "line": 38,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.72,
          "detail": "Implicit method exit inferred from method boundary."
        }
      ],
      "edges": [
        {
          "id": "method:1sx9yhe:clearsearch__entry__method:1sx9yhe:clearsearch__action_37_state_mutation_37__linear",
          "from": "method:1sx9yhe:clearsearch__entry",
          "to": "method:1sx9yhe:clearsearch__action_37_state_mutation_37__linear",
          "kind": "next",
          "line": 37,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:1sx9yhe:clearsearch__action_37_state_mutation_37__linear__implicit_return",
          "from": "method:1sx9yhe:clearsearch__action_37_state_mutation_37__linear",
          "to": "method:1sx9yhe:clearsearch__implicit_return",
          "kind": "return",
          "line": 38,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.72
        }
      ],
      "jumpTargets": [],
      "exceptionTargets": [],
      "loopBackEdges": [],
      "mergeNodeIds": [],
      "language": "unknown",
      "confidence": 0.76,
      "lineSpan": {
        "start": 35,
        "end": 38
      },
      "unsupportedConstructs": [],
      "evidence": [
        {
          "path": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "line": 35,
          "summary": "Control-flow fragment extracted for method ClearSearch.",
          "kind": "file-summary"
        }
      ]
    },
    {
      "fragmentId": "method:1p9w1qk:isactive-getter__fragment",
      "ownerFileId": "file:igeyi7:nexussearchbox-razor",
      "ownerSymbolId": "method:1p9w1qk:isactive-getter",
      "ownerSymbolName": "IsActive (getter)",
      "entryNodeId": "method:1p9w1qk:isactive-getter__entry",
      "exitNodeIds": [
        "method:1p9w1qk:isactive-getter__implicit_return"
      ],
      "nodes": [
        {
          "id": "method:1p9w1qk:isactive-getter__entry",
          "kind": "entry",
          "label": "IsActive (getter) entry",
          "line": 25,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.99,
          "detail": "Computed property that indicates if the search input contains text; used to toggle CSS state."
        },
        {
          "id": "method:1p9w1qk:isactive-getter__action_25_computed_25__linear",
          "kind": "statement",
          "label": "Determines active CSS state",
          "line": 25,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7,
          "detail": "Returns !string.IsNullOrEmpty(SearchValue); used in markup to add the 'active' class."
        },
        {
          "id": "method:1p9w1qk:isactive-getter__implicit_return",
          "kind": "return",
          "label": "return",
          "line": 25,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.72,
          "detail": "Implicit method exit inferred from method boundary."
        }
      ],
      "edges": [
        {
          "id": "method:1p9w1qk:isactive-getter__entry__method:1p9w1qk:isactive-getter__action_25_computed_25__linear",
          "from": "method:1p9w1qk:isactive-getter__entry",
          "to": "method:1p9w1qk:isactive-getter__action_25_computed_25__linear",
          "kind": "next",
          "line": 25,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.7
        },
        {
          "id": "method:1p9w1qk:isactive-getter__action_25_computed_25__linear__implicit_return",
          "from": "method:1p9w1qk:isactive-getter__action_25_computed_25__linear",
          "to": "method:1p9w1qk:isactive-getter__implicit_return",
          "kind": "return",
          "line": 25,
          "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "confidence": 0.72
        }
      ],
      "jumpTargets": [],
      "exceptionTargets": [],
      "loopBackEdges": [],
      "mergeNodeIds": [],
      "language": "unknown",
      "confidence": 0.76,
      "lineSpan": {
        "start": 25,
        "end": 25
      },
      "unsupportedConstructs": [],
      "evidence": [
        {
          "path": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
          "line": 25,
          "summary": "Control-flow fragment extracted for method IsActive (getter).",
          "kind": "file-summary"
        }
      ]
    }
  ],
  "unresolvedJumps": [
    {
      "id": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync__jump_NexusReader_UI_Shared_Components_Atoms_NexusSearchBox_razor_OnSearch_InvokeAsync",
      "fromNodeId": "method:j1tqds:handlekeypress__call_31_OnSearch_InvokeAsync",
      "kind": "call-target",
      "targetPath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
      "targetHint": "OnSearch.InvokeAsync",
      "line": 31,
      "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
      "reason": "Call target OnSearch.InvokeAsync in NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor could not be matched to an extracted method symbol.",
      "status": "unresolved"
    }
  ],
  "diagrams": [
    {
      "id": "file_igeyi7_nexussearchbox_razor_neighborhood_view",
      "purpose": "neighborhood-view",
      "title": "NexusSearchBox Neighborhood",
      "required": true,
      "diagram": {
        "id": "file_igeyi7_nexussearchbox_razor_neighborhood_view",
        "kind": "dependency-map",
        "title": "NexusSearchBox Neighborhood",
        "direction": "LR",
        "nodes": [
          {
            "id": "file_igeyi7_nexussearchbox_razor",
            "kind": "service",
            "label": "NexusSearchBox",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
          },
          {
            "id": "class_c49vab_nexussearchbox",
            "kind": "service",
            "label": "NexusSearchBox",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
          },
          {
            "id": "method_j1tqds_handlekeypress",
            "kind": "method",
            "label": "HandleKeyPress()",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 27
          },
          {
            "id": "method_1sx9yhe_clearsearch",
            "kind": "method",
            "label": "ClearSearch()",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 35
          },
          {
            "id": "method_1p9w1qk_isactive_getter",
            "kind": "method",
            "label": "IsActive (getter)",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 25
          },
          {
            "id": "type_1tp07fo_nexussearchbox_component",
            "kind": "document",
            "label": "NexusSearchBox (component)",
            "shape": "doc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 1
          }
        ],
        "edges": [],
        "metadata": {
          "evidencePaths": [
            "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
          ]
        },
        "subgraphs": []
      },
      "mermaidSource": "flowchart LR\n    class_c49vab_nexussearchbox(\"NexusSearchBox\")\n    file_igeyi7_nexussearchbox_razor(\"NexusSearchBox\")\n    method_1p9w1qk_isactive_getter[[\"IsActive (getter)\"]]\n    method_1sx9yhe_clearsearch[[\"ClearSearch()\"]]\n    method_j1tqds_handlekeypress[[\"HandleKeyPress()\"]]\n    type_1tp07fo_nexussearchbox_component[/\"NexusSearchBox (component)\"/]",
      "warnings": []
    },
    {
      "id": "file_igeyi7_nexussearchbox_razor_execution_view",
      "purpose": "execution-overview",
      "title": "NexusSearchBox Execution Overview",
      "required": true,
      "diagram": {
        "id": "file_igeyi7_nexussearchbox_razor_execution_view",
        "kind": "method-flow",
        "title": "NexusSearchBox Execution Overview",
        "direction": "TD",
        "nodes": [
          {
            "id": "class_c49vab_nexussearchbox",
            "kind": "service",
            "label": "NexusSearchBox",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
          },
          {
            "id": "method_j1tqds_handlekeypress",
            "kind": "method",
            "label": "HandleKeyPress()",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 27
          },
          {
            "id": "method_1sx9yhe_clearsearch",
            "kind": "method",
            "label": "ClearSearch()",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 35
          },
          {
            "id": "method_1p9w1qk_isactive_getter",
            "kind": "method",
            "label": "IsActive (getter)",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 25
          },
          {
            "id": "unresolved_unresolved_1p0z3es_call_target",
            "kind": "prompt",
            "label": "Unresolved: OnSearch.InvokeAsync",
            "shape": "diamond",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "unresolved_unresolved_1dtlz91_interaction_target",
            "kind": "prompt",
            "label": "Unresolved: await OnSearch.InvokeAsync(SearchValue) - raises the search event to parent components.",
            "shape": "diamond",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          }
        ],
        "edges": [
          {
            "id": "class_c49vab_nexussearchbox_contains_method_j1tqds_handlekeypress",
            "from": "class_c49vab_nexussearchbox",
            "to": "method_j1tqds_handlekeypress",
            "semanticLabel": "contains executable method",
            "visibleLabel": "contains",
            "relation": "calls",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 27
          },
          {
            "id": "class_c49vab_nexussearchbox_contains_method_1sx9yhe_clearsearch",
            "from": "class_c49vab_nexussearchbox",
            "to": "method_1sx9yhe_clearsearch",
            "semanticLabel": "contains executable method",
            "visibleLabel": "contains",
            "relation": "calls",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 35
          },
          {
            "id": "class_c49vab_nexussearchbox_contains_method_1p9w1qk_isactive_getter",
            "from": "class_c49vab_nexussearchbox",
            "to": "method_1p9w1qk_isactive_getter",
            "semanticLabel": "contains executable method",
            "visibleLabel": "contains",
            "relation": "calls",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 25
          },
          {
            "id": "unresolved_1p0z3es_call_target_edge",
            "from": "method_j1tqds_handlekeypress",
            "to": "unresolved_unresolved_1p0z3es_call_target",
            "semanticLabel": "Call target was discovered in the summary but could not be matched to an extracted method symbol.",
            "visibleLabel": "unresolved call",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "unresolved_1dtlz91_interaction_target_edge",
            "from": "class_c49vab_nexussearchbox",
            "to": "unresolved_unresolved_1dtlz91_interaction_target",
            "semanticLabel": "Interaction was identified in the file summary but does not yet map to a stable V5 target node.",
            "visibleLabel": "unresolved interaction",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          }
        ],
        "metadata": {
          "evidencePaths": [
            "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
          ],
          "warnings": [
            "Execution overview includes unresolved targets. Use validation artifacts before treating the flow as complete."
          ]
        },
        "subgraphs": []
      },
      "mermaidSource": "flowchart TD\n    class_c49vab_nexussearchbox(\"NexusSearchBox\")\n    method_1p9w1qk_isactive_getter[[\"IsActive (getter)\"]]\n    method_1sx9yhe_clearsearch[[\"ClearSearch()\"]]\n    method_j1tqds_handlekeypress[[\"HandleKeyPress()\"]]\n    unresolved_unresolved_1dtlz91_interaction_target{\"Unresolved: await OnSearch.InvokeAsync(SearchValue) - raises the search event to parent components.\"}\n    unresolved_unresolved_1p0z3es_call_target{\"Unresolved: OnSearch.InvokeAsync\"}\n    class_c49vab_nexussearchbox -->|contains| method_1p9w1qk_isactive_getter\n    class_c49vab_nexussearchbox -->|contains| method_1sx9yhe_clearsearch\n    class_c49vab_nexussearchbox -->|contains| method_j1tqds_handlekeypress\n    class_c49vab_nexussearchbox -->|unresolved interaction| unresolved_unresolved_1dtlz91_interaction_target\n    method_j1tqds_handlekeypress -->|unresolved call| unresolved_unresolved_1p0z3es_call_target",
      "warnings": []
    },
    {
      "id": "method_j1tqds_handlekeypress__fragment_diagram",
      "purpose": "control-flow",
      "title": "HandleKeyPress() Control Flow",
      "required": true,
      "diagram": {
        "id": "method_j1tqds_handlekeypress__fragment_diagram",
        "kind": "control-flow",
        "title": "HandleKeyPress() Control Flow",
        "direction": "TD",
        "nodes": [
          {
            "id": "method_j1tqds_handlekeypress__entry",
            "kind": "step",
            "label": "HandleKeyPress entry",
            "shape": "stadium",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 27
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition",
            "kind": "step",
            "label": "e.Key == \\\"Enter\\\"",
            "shape": "diamond",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true",
            "kind": "step",
            "label": "true",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false",
            "kind": "step",
            "label": "false",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__condition",
            "kind": "step",
            "label": "e.Key == \\\"Enter\\\"",
            "shape": "diamond",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__true",
            "kind": "step",
            "label": "invoke callback",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__false",
            "kind": "step",
            "label": "no-op",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__merge",
            "kind": "step",
            "label": "merge",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await",
            "kind": "step",
            "label": "Waits for async work",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "method_j1tqds_handlekeypress__action_31_external_call_31__linear",
            "kind": "dependency",
            "label": "Invokes parent-provided event callback",
            "shape": "rounded",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync",
            "kind": "method",
            "label": "OnSearch.InvokeAsync",
            "shape": "subproc",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "method_j1tqds_handlekeypress__implicit_return",
            "kind": "return",
            "label": "return",
            "shape": "stadium",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 33
          }
        ],
        "edges": [
          {
            "id": "method_j1tqds_handlekeypress__entry__method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition",
            "from": "method_j1tqds_handlekeypress__entry",
            "to": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition__method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true",
            "from": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition",
            "to": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true",
            "semanticLabel": "true",
            "visibleLabel": "true",
            "relation": "transforms",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition__method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false",
            "from": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition",
            "to": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false",
            "semanticLabel": "false",
            "visibleLabel": "false",
            "relation": "transforms",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true__method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge",
            "from": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true",
            "to": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false__method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge",
            "from": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false",
            "to": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge__method_j1tqds_handlekeypress__action_29_guard_clause_29__condition",
            "from": "method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge",
            "to": "method_j1tqds_handlekeypress__action_29_guard_clause_29__condition",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__condition__method_j1tqds_handlekeypress__action_29_guard_clause_29__true",
            "from": "method_j1tqds_handlekeypress__action_29_guard_clause_29__condition",
            "to": "method_j1tqds_handlekeypress__action_29_guard_clause_29__true",
            "semanticLabel": "invoke callback",
            "visibleLabel": "invoke callback",
            "relation": "transforms",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__condition__method_j1tqds_handlekeypress__action_29_guard_clause_29__false",
            "from": "method_j1tqds_handlekeypress__action_29_guard_clause_29__condition",
            "to": "method_j1tqds_handlekeypress__action_29_guard_clause_29__false",
            "semanticLabel": "no-op",
            "visibleLabel": "no-op",
            "relation": "transforms",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__true__method_j1tqds_handlekeypress__action_29_guard_clause_29__merge",
            "from": "method_j1tqds_handlekeypress__action_29_guard_clause_29__true",
            "to": "method_j1tqds_handlekeypress__action_29_guard_clause_29__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__false__method_j1tqds_handlekeypress__action_29_guard_clause_29__merge",
            "from": "method_j1tqds_handlekeypress__action_29_guard_clause_29__false",
            "to": "method_j1tqds_handlekeypress__action_29_guard_clause_29__merge",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 29
          },
          {
            "id": "method_j1tqds_handlekeypress__action_29_guard_clause_29__merge__method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await",
            "from": "method_j1tqds_handlekeypress__action_29_guard_clause_29__merge",
            "to": "method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await__method_j1tqds_handlekeypress__action_31_external_call_31__linear",
            "from": "method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await",
            "to": "method_j1tqds_handlekeypress__action_31_external_call_31__linear",
            "semanticLabel": "next",
            "visibleLabel": "next",
            "relation": "uses",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "method_j1tqds_handlekeypress__action_31_external_call_31__linear__call_method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync",
            "from": "method_j1tqds_handlekeypress__action_31_external_call_31__linear",
            "to": "method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync",
            "semanticLabel": "SearchValue (string) passed to the parent callback",
            "visibleLabel": "SearchValue string passed to the parent callback",
            "relation": "calls",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 31
          },
          {
            "id": "method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync__implicit_return",
            "from": "method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync",
            "to": "method_j1tqds_handlekeypress__implicit_return",
            "semanticLabel": "return",
            "visibleLabel": "return",
            "relation": "returns",
            "sourcePath": "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor",
            "sourceLine": 33
          }
        ],
        "metadata": {
          "evidencePaths": [
            "NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
          ],
          "warnings": [
            "Call target OnSearch.InvokeAsync in NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor could not be matched to an extracted method symbol."
          ]
        },
        "subgraphs": []
      },
      "mermaidSource": "flowchart TD\n    method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync[[\"OnSearch.InvokeAsync\"]]\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__condition{\"e.Key == \\\\\"Enter\\\\\"\"}\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__false(\"no-op\")\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__merge(\"merge\")\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__true(\"invoke callback\")\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition{\"e.Key == \\\\\"Enter\\\\\"\"}\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false(\"false\")\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge(\"merge\")\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true(\"true\")\n    method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await[[\"Waits for async work\"]]\n    method_j1tqds_handlekeypress__entry([\"HandleKeyPress entry\"])\n    method_j1tqds_handlekeypress__action_31_external_call_31__linear(\"Invokes parent-provided event callback\")\n    method_j1tqds_handlekeypress__implicit_return([\"return\"])\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__condition -->|no-op| method_j1tqds_handlekeypress__action_29_guard_clause_29__false\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__condition -->|invoke callback| method_j1tqds_handlekeypress__action_29_guard_clause_29__true\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__false -->|next| method_j1tqds_handlekeypress__action_29_guard_clause_29__merge\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__merge -->|next| method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await\n    method_j1tqds_handlekeypress__action_29_guard_clause_29__true -->|next| method_j1tqds_handlekeypress__action_29_guard_clause_29__merge\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition -->|false| method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition -->|true| method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__false -->|next| method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge -->|next| method_j1tqds_handlekeypress__action_29_guard_clause_29__condition\n    method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__true -->|next| method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__merge\n    method_j1tqds_handlekeypress__action_31_external_call_31__linear -->|SearchValue string passed to the parent callback| method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync\n    method_j1tqds_handlekeypress__action_31_handlekeypress_await_31_1__await -->|next| method_j1tqds_handlekeypress__action_31_external_call_31__linear\n    method_j1tqds_handlekeypress__call_31_OnSearch_InvokeAsync -->|return| method_j1tqds_handlekeypress__implicit_return\n    method_j1tqds_handlekeypress__entry -->|next| method_j1tqds_handlekeypress__action_29_handlekeypress_branch_29_0__condition",
      "warnings": []
    }
  ],
  "renderHints": {
    "preferredSurface": "three-d",
    "defaultDiagramId": "file_igeyi7_nexussearchbox_razor_execution_view",
    "controlFlowDiagramIds": [
      "method_j1tqds_handlekeypress__fragment_diagram"
    ],
    "defaultControlFlowDiagramIdsBySymbolId": {
      "method:j1tqds:handlekeypress": "method_j1tqds_handlekeypress__fragment_diagram"
    }
  }
}