-module(i3_client_version). -moduledoc false. -export([from_reply/1, support/2]). -include("i3_client_codec.hrl"). -define(enotsup, {error, enotsup}). from_reply(Bin) -> case json:decode(Bin) of #{ ~"variant" := Variant, ~"major" := Major, ~"minor" := Minor, ~"patch" := Patch } -> {ok, {Variant, {Major, Minor, Patch}}}; #{ ~"major" := Major, ~"minor" := Minor, ~"patch" := Patch } -> {ok, {~"i3", {Major, Minor, Patch}}}; _ -> {error, enotsup} end. support({~"i3", _}, {?get_inputs, _}) -> ?enotsup; support({~"i3", _}, {?get_seats, _}) -> ?enotsup; support(_Version, _Msg) -> ok.