30 const nlohmann::json &j_current,
31 const nlohmann::json &j,
32 bool has_used_defaults,
33 bool has_updated_config) {
37 std::string faint_line = shambase::format(
39 shambase::term_colors::faint(),
42 shambase::term_colors::reset());
44 auto green = shambase::term_colors::col8b_green();
45 auto reset = shambase::term_colors::reset();
46 auto red = shambase::term_colors::col8b_red();
48 std::string newold_text
49 = shambase::format(
"[{}+ | added{}] [{}- | removed{}]", green, reset, red, reset);
50 std::string nice_plus = shambase::format(
"{}+{}", green, reset);
51 std::string nice_minus = shambase::format(
"{}-{}", red, reset);
53 std::string log = shambase::format(
54 "Used config parameters are listed below;\n "
55 "Possible cases for highlighted entries:\n "
56 " - ({}) default-added\n "
57 " - ({}/{}) updated \n "
58 " - ({}) ignored values \n "
59 "List of changes: {}\n",
70 ss << shamrock::json_diff_str(j, j_current);
std::string log_json_changes(const nlohmann::json &j_current, const nlohmann::json &j, bool has_used_defaults, bool has_updated_config)
Shown the changes between two JSON objects to log config changes.