add_imgui_app(dag_engine_ui
    main.cpp
    http_client.cpp
    data_http.cpp
    ws_client.cpp
    tabs.cpp
    ${CMAKE_SOURCE_DIR}/functions/core/empty_state.cpp
    ${CMAKE_SOURCE_DIR}/functions/core/badge.cpp
)
target_include_directories(dag_engine_ui PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})

# fn_table_viz: provides data_table::render(), viz_render, TQL engine, Lua, LLM.
# Guard keeps the app compilable in builds where vendor/lua is absent.
if(TARGET fn_table_viz)
    target_link_libraries(dag_engine_ui PRIVATE fn_table_viz)
endif()

if(WIN32)
    target_link_libraries(dag_engine_ui PRIVATE ws2_32)
    set_target_properties(dag_engine_ui PROPERTIES WIN32_EXECUTABLE TRUE)
endif()
