def as_json(options = {})
case options[:syntax]
when :general
{
payload: Base64.urlsafe_encode64(self.to_json, padding: false),
signatures: [{
protected: Base64.urlsafe_encode64(header.to_json, padding: false),
signature: Base64.urlsafe_encode64(signature.to_s, padding: false)
}]
}
when :flattened
{
protected: Base64.urlsafe_encode64(header.to_json, padding: false),
payload: Base64.urlsafe_encode64(self.to_json, padding: false),
signature: Base64.urlsafe_encode64(signature.to_s, padding: false)
}
else
super
end
end