Files
registry_dashboard/data_http.h
T
egutierrez a466fff71a feat: Settings submenu (Settings.../About...), git column, projects tab
- main.cpp: registrar info About via fn_ui::about_window_set_info
- views.cpp: nueva columna "Git" en la tabla Apps (remote/local/-)
- data.h/cpp + data_http.cpp: AppRow gana repo_url + dir_path
- views.cpp: actions bar (Reindex / + Add / Reload / inbox) y modal Add
- views.cpp: tab Projects con tree + detalle anidado
- data_http.cpp: load_projects_http, load_project_detail_http, http_post_*
- http_client.cpp: SO_RCVTIMEO en Windows como DWORD ms (timeout 5 ms bug)
- CMakeLists: limpieza de srcs duplicados con fn_framework
- app.md: notas operativas y estado actual

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 22:06:31 +02:00

38 lines
1.8 KiB
C++

#pragma once
#include "data.h"
#include <string>
// Load all registry data via sqlite_api HTTP endpoint.
// api_url should be like "http://127.0.0.1:8484".
// Returns true on success.
bool load_registry_data_http(const std::string& api_url, RegistryData& out);
// Load projects list (con conteos) y huerfanas. No destruye el resto de
// campos de out, solo setea projects + orphan_*.
bool load_projects_http(const std::string& api_url, RegistryData& out);
// Load detalle de un proyecto (apps/analyses/vaults). Si id=="orphans"
// devuelve las entidades sin project_id.
bool load_project_detail_http(const std::string& api_url,
const std::string& id,
ProjectDetail& out);
// Operaciones de mutacion (thread-safe porque http_post ya lo es).
// Devuelven el body de respuesta en `out_body`. true si HTTP status 2xx.
bool http_post_reindex(const std::string& api_url, std::string& out_body);
bool http_post_add_app(const std::string& api_url,
const std::string& name, const std::string& lang,
const std::string& domain, const std::string& project,
const std::string& description,
std::string& out_body);
bool http_post_add_analysis(const std::string& api_url,
const std::string& name, const std::string& project,
const std::string& packages_csv,
const std::string& description,
std::string& out_body);
bool http_post_add_vault(const std::string& api_url,
const std::string& name, const std::string& project,
const std::string& path, const std::string& description,
std::string& out_body);