module Todoist module Sync class Filters < Todoist::Service include Todoist::Util # Return a Hash of filters where key is the id of a filter and value is a filter def collection return @client.api_helper.collection("filters") end # Add a filter with a given hash of attributes and returns the filter id. # Please note that item_id is required as is a date as specific in the # documentation. This method can be tricky to all. def add(args) return @client.api_helper.add(args, "filter_add") end # Update a filter given a hash of attributes def update(args) return @client.api_helper.command(args, "filter_update") end # Delete filter given an array of filters def delete(filter) args = {id: filter.id} return @client.api_helper.command(args, "filter_delete") end # Update orders for an array of filters def update_multiple_orders(filters) args = {} filters.each do |filter| args[filter.id] = filter.item_order end args = {id_order_mapping: args.to_json} return @client.api_helper.command(args, "filter_update_orders") end end end end