tacokit 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +86 -0
- data/.travis.yml +6 -0
- data/Gemfile +16 -25
- data/Guardfile +1 -1
- data/README.md +61 -17
- data/Rakefile +10 -5
- data/lib/tacokit/authorization.rb +14 -13
- data/lib/tacokit/client/actions.rb +68 -28
- data/lib/tacokit/client/boards.rb +92 -85
- data/lib/tacokit/client/cards.rb +285 -92
- data/lib/tacokit/client/checklists.rb +48 -28
- data/lib/tacokit/client/labels.rb +14 -16
- data/lib/tacokit/client/lists.rb +52 -28
- data/lib/tacokit/client/members.rb +56 -46
- data/lib/tacokit/client/notifications.rb +13 -27
- data/lib/tacokit/client/organizations.rb +0 -6
- data/lib/tacokit/client/searches.rb +0 -1
- data/lib/tacokit/client/tokens.rb +0 -6
- data/lib/tacokit/client/types.rb +0 -1
- data/lib/tacokit/client/webhooks.rb +3 -8
- data/lib/tacokit/client.rb +48 -75
- data/lib/tacokit/collection.rb +49 -0
- data/lib/tacokit/configuration.rb +4 -6
- data/lib/tacokit/error.rb +0 -2
- data/lib/tacokit/middleware/boom.rb +6 -7
- data/lib/tacokit/middleware.rb +2 -10
- data/lib/tacokit/resource.rb +84 -57
- data/lib/tacokit/response.rb +3 -3
- data/lib/tacokit/transform.rb +35 -13
- data/lib/tacokit/utils.rb +40 -8
- data/lib/tacokit/version.rb +1 -1
- data/lib/tacokit.rb +0 -2
- data/spec/cassettes/Tacokit_Client_Actions/_action_board/returns_action_board.json +1 -0
- data/spec/cassettes/Tacokit_Client_Actions/_action_card/returns_action_card.json +1 -0
- data/spec/cassettes/Tacokit_Client_Actions/_action_entities/returns_action_entities.json +1 -0
- data/spec/cassettes/Tacokit_Client_Actions/_action_list/returns_action_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_add_board_member/adds_invites_member_to_board.json +1 -1
- data/spec/cassettes/Tacokit_Client_Boards/_board_actions/returns_board_actions.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_cards/returns_board_cards.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_checklists/returns_board_checklists.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_labels/returns_board_labels.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_lists/returns_board_lists.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_members/returns_board_members.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_organization/returns_board_organization.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_preferences/returns_preferences_for_a_board.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_board_stars/returns_board_stars.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_member_board_stars/returns_board_stars.json +1 -0
- data/spec/cassettes/Tacokit_Client_Boards/_update_board_member/updates_member.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_add_comment/creates_a_comment.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_add_label/adds_label_to_card.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_add_member_to_card/adds_member_to_card.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_archive_card/archives_card.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_archive_card/restore_card.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_attachments/returns_an_attachment.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_attachments/returns_attachment.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_attachments/returns_attachments.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card/returns_a_card_by_card_resource.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card/returns_a_card_by_id.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card/returns_a_card_by_short_link.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_actions/returns_card_actions.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card_board/returns_card_board.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card_field/returns_a_hash.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_field/returns_a_value.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_field/returns_an_array.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_list/returns_a_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card_members/returns_members.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card_members/returns_members_voted.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_card_resource/returns_card_actions.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_resource/returns_card_board.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_resource/returns_card_check_item_states.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_card_stickers/returns_.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_checklists/returns_check_item_states.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_checklists/returns_checklists.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_create_card/creates_a_card.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_create_card_attachment/attaches_external_url.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_create_card_attachment/uploads_local_file.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_delete_card/deletes_a_card.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_delete_card_resource/deletes_resource.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_delete_comment/deletes_comment.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_list/returns_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_a_new_position.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_another_board_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_board.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_move_card/moves_card_to_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_move_card/raises_error_if_missing_options.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_start_checklist/adds_a_checklist_item.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_start_checklist/adds_new_checklist_by_name.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_start_checklist/copies_a_checklist_by_id.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_stickers/returns_stickers.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_update_card/updates_a_card.json +1 -1
- data/spec/cassettes/Tacokit_Client_Cards/_update_checklist_item/updates_checklist_item.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_update_comment/updates_a_comment.json +1 -0
- data/spec/cassettes/Tacokit_Client_Cards/_vote/adds_a_member_s_vote_to_card.json +1 -0
- data/spec/cassettes/Tacokit_Client_Checklists/_check_items/adds_a_checklist_check_item.json +1 -0
- data/spec/cassettes/Tacokit_Client_Checklists/_check_items/retrieves_checklist_check_items.json +1 -0
- data/spec/cassettes/Tacokit_Client_Lists/_archive_list_cards/should_archive_cards_in_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Lists/_list_actions/returns_list_actions.json +1 -0
- data/spec/cassettes/Tacokit_Client_Lists/_list_board/returns_list_board.json +1 -0
- data/spec/cassettes/Tacokit_Client_Lists/_list_cards/returns_list_cards.json +1 -0
- data/spec/cassettes/Tacokit_Client_Lists/_move_list_cards/should_move_cards_in_list.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_actions/returns_member_actions.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_board_stars/returns_member_board_stars.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_boards/returns_member_boards.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_cards/returns_member_cards.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_notifications/returns_member_notifications.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_organizations/returns_member_organizations.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_tokens/returns_member_organizations.json +1 -0
- data/spec/cassettes/Tacokit_Client_Members/_tokens/returns_member_tokens.json +1 -0
- data/spec/spec_helper.rb +39 -29
- data/spec/tacokit/authorization_spec.rb +11 -11
- data/spec/tacokit/client/actions_spec.rb +56 -19
- data/spec/tacokit/client/boards_spec.rb +81 -78
- data/spec/tacokit/client/cards_spec.rb +322 -68
- data/spec/tacokit/client/checklists_spec.rb +29 -27
- data/spec/tacokit/client/labels_spec.rb +8 -16
- data/spec/tacokit/client/lists_spec.rb +74 -27
- data/spec/tacokit/client/members_spec.rb +55 -41
- data/spec/tacokit/client/notifications_spec.rb +3 -31
- data/spec/tacokit/client/organizations_spec.rb +6 -27
- data/spec/tacokit/client/searches_spec.rb +1 -3
- data/spec/tacokit/client/tokens_spec.rb +2 -18
- data/spec/tacokit/client/types_spec.rb +2 -3
- data/spec/tacokit/client/webhooks_spec.rb +6 -14
- data/spec/tacokit/client_spec.rb +3 -3
- data/spec/tacokit/configuration_spec.rb +30 -31
- data/spec/tacokit/middleware/boom_spec.rb +6 -7
- data/spec/tacokit/resource_spec.rb +142 -17
- data/spec/tacokit/transform_spec.rb +37 -35
- data/spec/tacokit_spec.rb +3 -5
- data/tacokit.gemspec +6 -6
- metadata +132 -15
- data/config.ru +0 -7
- data/lib/tacokit/middleware/debug.rb +0 -22
- data/spec/cassettes/Tacokit_Client_Boards/_update_board_resource/updates_member.json +0 -1
- data/spec/cassettes/Tacokit_Client_Members/_member/raises_error_for_missing_token.json +0 -1
@@ -1,55 +1,75 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Checklists
|
4
|
-
|
5
|
-
#
|
4
|
+
# Retrieve a checklist
|
5
|
+
#
|
6
|
+
# @see https://trello.com/docs/api/checklist/index.html#get-1-checklists-idchecklist
|
6
7
|
def checklist(checklist_id, options = nil)
|
7
8
|
get checklist_path(checklist_id), options
|
8
9
|
end
|
9
10
|
|
10
|
-
#
|
11
|
-
|
12
|
-
|
11
|
+
# Retrieve the checklist's board
|
12
|
+
#
|
13
|
+
# @see https://trello.com/docs/api/checklist/index.html#get-1-checklists-idchecklist-board
|
14
|
+
def checklist_board(checklist_id, options = {})
|
15
|
+
checklist_resource "board", options
|
13
16
|
end
|
14
17
|
|
15
|
-
#
|
16
|
-
#
|
17
|
-
#
|
18
|
-
|
19
|
-
|
20
|
-
# checkItems
|
21
|
-
# checkItems/[idCheckItem]
|
22
|
-
def checklist_resource(checklist_id, resource, *paths)
|
23
|
-
paths, options = extract_options(camp(resource), *paths)
|
24
|
-
get checklist_path(checklist_id, *paths), options
|
18
|
+
# Retrieve a checklist's card
|
19
|
+
#
|
20
|
+
# @see https://trello.com/docs/api/checklist/index.html#get-1-checklists-idchecklist-cards
|
21
|
+
def checklist_card(checklist_id, options = {})
|
22
|
+
checklist_resource "card", options
|
25
23
|
end
|
26
24
|
|
27
|
-
#
|
25
|
+
# Retrieve a checklist's check items
|
26
|
+
#
|
27
|
+
# @see https://trello.com/docs/api/checklist/index.html#get-1-checklists-idchecklist-checkitems
|
28
|
+
def check_items(checklist_id, options = {})
|
29
|
+
checklist_resource checklist_id, "check_items", options
|
30
|
+
end
|
31
|
+
alias_method :checklist_check_items, :check_items
|
32
|
+
|
33
|
+
# Updates a checklist
|
34
|
+
#
|
35
|
+
# @see https://trello.com/docs/api/checklist/index.html#put-1-checklists-idchecklist
|
28
36
|
def update_checklist(checklist_id, options = {})
|
29
37
|
put checklist_path(checklist_id), options
|
30
38
|
end
|
39
|
+
alias_method :checklist_update, :update_checklist
|
31
40
|
|
32
|
-
#
|
33
|
-
#
|
34
|
-
#
|
35
|
-
# pos
|
36
|
-
|
37
|
-
# POST /1/checklists
|
41
|
+
# Create a checklist
|
42
|
+
#
|
43
|
+
# @see https://trello.com/docs/api/checklist/index.html#post-1-checklists
|
38
44
|
def create_checklist(card_id, name, options = {})
|
39
|
-
options.update
|
40
|
-
card_id: card_id,
|
41
|
-
name: name
|
45
|
+
options.update card_id: card_id, name: name
|
42
46
|
post checklist_path, options
|
43
47
|
end
|
48
|
+
alias_method :checklist_create, :create_checklist
|
44
49
|
|
45
|
-
#
|
50
|
+
# Add a checklist item to a checklist
|
51
|
+
#
|
52
|
+
# @see https://trello.com/docs/api/checklist/index.html#post-1-checklists-idchecklist-checkitems
|
53
|
+
def add_checklist_check_item(checklist_id, name, options = {})
|
54
|
+
post checklist_path(checklist_id, "checkItems"), options.merge(name: name)
|
55
|
+
end
|
56
|
+
alias_method :checklist_check_item_create, :add_checklist_check_item
|
57
|
+
alias_method :add_checklist_item, :add_checklist_check_item
|
46
58
|
|
47
|
-
#
|
59
|
+
# Delete a checklist
|
60
|
+
#
|
61
|
+
# @see https://trello.com/docs/api/checklist/index.html#delete-1-checklists-idchecklist
|
48
62
|
def delete_checklist(checklist_id)
|
49
63
|
delete checklist_path(checklist_id)
|
50
64
|
end
|
65
|
+
alias_method :checklist_delete, :delete_checklist
|
66
|
+
|
67
|
+
private
|
51
68
|
|
52
|
-
|
69
|
+
def checklist_resource(checklist_id, resource, *paths)
|
70
|
+
paths, options = extract_options(camp(resource), *paths)
|
71
|
+
get checklist_path(checklist_id, *paths), options
|
72
|
+
end
|
53
73
|
|
54
74
|
def checklist_path(*paths)
|
55
75
|
path_join("checklists", *paths)
|
@@ -1,29 +1,23 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Labels
|
4
|
-
|
5
|
-
#
|
4
|
+
# Retrieve a label
|
5
|
+
#
|
6
|
+
# @see https://trello.com/docs/api/label/index.html#get-1-labels-idlabel
|
6
7
|
def label(label_id, options = nil)
|
7
8
|
get label_path(label_id), options
|
8
9
|
end
|
9
10
|
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
def label_resource(label_id, resource, *paths)
|
14
|
-
paths, options = extract_options(camp(resource), *paths)
|
15
|
-
get label_path(label_id, *paths), options
|
16
|
-
end
|
17
|
-
|
18
|
-
# PUT /1/labels/[idLabel]
|
11
|
+
# Update a label
|
12
|
+
#
|
13
|
+
# @see https://trello.com/docs/api/label/index.html#put-1-labels-idlabel
|
19
14
|
def update_label(label_id, options = {})
|
20
15
|
put label_path(label_id), options
|
21
16
|
end
|
22
17
|
|
23
|
-
#
|
24
|
-
#
|
25
|
-
|
26
|
-
# POST /1/labels
|
18
|
+
# Create a label
|
19
|
+
#
|
20
|
+
# @see https://trello.com/docs/api/label/index.html#post-1-labels
|
27
21
|
def create_label(board_id, name, color)
|
28
22
|
post label_path,
|
29
23
|
board_id: board_id,
|
@@ -31,11 +25,15 @@ module Tacokit
|
|
31
25
|
color: color
|
32
26
|
end
|
33
27
|
|
34
|
-
#
|
28
|
+
# Delete a label
|
29
|
+
#
|
30
|
+
# @see https://trello.com/docs/api/label/index.html#delete-1-labels-idlabel
|
35
31
|
def delete_label(label_id)
|
36
32
|
delete label_path(label_id)
|
37
33
|
end
|
38
34
|
|
35
|
+
private
|
36
|
+
|
39
37
|
def label_path(*paths)
|
40
38
|
path_join "labels", *paths
|
41
39
|
end
|
data/lib/tacokit/client/lists.rb
CHANGED
@@ -1,54 +1,78 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Lists
|
4
|
-
|
5
|
-
#
|
4
|
+
# Retrieve a list by id
|
5
|
+
#
|
6
|
+
# @see https://trello.com/docs/api/label/index.html#get-1-labels-idlabel-board
|
6
7
|
def list(list_id, options = nil)
|
7
8
|
get list_path(list_id), options
|
8
9
|
end
|
9
10
|
|
10
|
-
#
|
11
|
-
|
12
|
-
|
11
|
+
# Retrive a list's actions
|
12
|
+
#
|
13
|
+
# @see https://trello.com/docs/api/list/index.html#get-1-lists-idlist-actions
|
14
|
+
def list_actions(list_id, options = {})
|
15
|
+
paginated_list_resource list_id, "actions", options
|
13
16
|
end
|
14
17
|
|
15
|
-
#
|
16
|
-
#
|
17
|
-
# board
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
18
|
+
# Retrive a list's board
|
19
|
+
#
|
20
|
+
# @see https://trello.com/docs/api/list/index.html#get-1-lists-idlist-board
|
21
|
+
def list_board(list_id, options = {})
|
22
|
+
list_resource list_id, "board", options
|
23
|
+
end
|
24
|
+
|
25
|
+
# Retrive a list's cards
|
26
|
+
#
|
27
|
+
# @see https://trello.com/docs/api/list/index.html#get-1-lists-idlist-cards
|
28
|
+
def list_cards(list_id, options = {})
|
29
|
+
paginated_list_resource list_id, "cards", options
|
24
30
|
end
|
25
31
|
|
26
|
-
#
|
32
|
+
# Update a list's attributes
|
33
|
+
#
|
34
|
+
# @see https://trello.com/docs/api/list/index.html#put-1-lists-idlis
|
27
35
|
def update_list(list_id, options = {})
|
28
36
|
put list_path(list_id), options
|
29
37
|
end
|
30
38
|
|
31
|
-
#
|
32
|
-
#
|
33
|
-
#
|
34
|
-
# name
|
35
|
-
# pos
|
36
|
-
# subscribed
|
37
|
-
|
38
|
-
# POST /1/lists
|
39
|
+
# Create a new list
|
40
|
+
#
|
41
|
+
# @see https://trello.com/docs/api/list/index.html#post-1-lists
|
39
42
|
def create_list(board_id, name, options = {})
|
40
43
|
post list_path, options.merge(name: name, board_id: board_id)
|
41
44
|
end
|
42
45
|
|
43
|
-
#
|
44
|
-
#
|
45
|
-
#
|
46
|
-
|
46
|
+
# Archive all cards in a list
|
47
|
+
#
|
48
|
+
# @see https://trello.com/docs/api/list/index.html#post-1-lists-idlist-moveallcards
|
49
|
+
def archive_list_cards(list_id)
|
50
|
+
post list_path(list_id, camp("archive_all_cards"))
|
51
|
+
end
|
52
|
+
|
53
|
+
# Move cards from one list to another
|
54
|
+
#
|
55
|
+
# @see https://trello.com/docs/api/list/index.html#post-1-lists-idlist-moveallcards
|
56
|
+
def move_list_cards(list_id, destination_list_id, board_id)
|
57
|
+
post list_path(list_id, camp("move_all_cards")),
|
58
|
+
list_id: destination_list_id, board_id: board_id
|
59
|
+
end
|
60
|
+
|
61
|
+
private
|
62
|
+
|
63
|
+
def list_resource(list_id, resource, *paths)
|
64
|
+
paths, options = extract_options(camp(resource), *paths)
|
65
|
+
get list_path(list_id, *paths), options
|
66
|
+
end
|
67
|
+
|
68
|
+
def paginated_list_resource(list_id, resource, *paths)
|
69
|
+
paths, options = extract_options(camp(resource), *paths)
|
70
|
+
paginated_get list_path(list_id, *paths), options
|
71
|
+
end
|
47
72
|
|
48
73
|
def list_path(*paths)
|
49
74
|
path_join("lists", *paths)
|
50
75
|
end
|
51
|
-
|
52
76
|
end
|
53
77
|
end
|
54
78
|
end
|
@@ -1,60 +1,63 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Members
|
4
|
-
|
5
|
-
#
|
6
|
-
|
4
|
+
# Retrieve a Trello member
|
5
|
+
#
|
6
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username
|
7
|
+
def member(username = "me", options = nil)
|
7
8
|
get member_path(username), options
|
8
9
|
end
|
9
10
|
|
10
|
-
#
|
11
|
-
|
12
|
-
|
11
|
+
# Retrieve a member's actions
|
12
|
+
#
|
13
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username-actions
|
14
|
+
def actions(username = "me", options = {})
|
15
|
+
if username.is_a?(Hash)
|
16
|
+
username = "me"
|
17
|
+
options = username
|
18
|
+
end
|
19
|
+
paginated_get member_path(username, "actions"), options
|
13
20
|
end
|
21
|
+
alias_method :member_actions, :actions
|
14
22
|
|
15
|
-
#
|
16
|
-
#
|
17
|
-
#
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
#
|
23
|
-
#
|
24
|
-
# cards
|
25
|
-
|
26
|
-
|
27
|
-
# customBoardBackgrounds/[idBoardBackground]
|
28
|
-
# customEmoji
|
29
|
-
# customEmoji/[idCustomEmoji]
|
30
|
-
# customStickers
|
31
|
-
# customStickers/[idCustomSticker]
|
32
|
-
# deltas
|
33
|
-
# notifications
|
34
|
-
# notifications/[filter]
|
35
|
-
# organizations
|
36
|
-
# organizations/[filter]
|
37
|
-
# organizationsInvited
|
38
|
-
# organizationsInvited/[field]
|
39
|
-
# savedSearches
|
40
|
-
# savedSearches/[idSavedSearch]
|
41
|
-
# tokens
|
42
|
-
def member_resource(username, resource, *paths)
|
43
|
-
paths, options = extract_options(camp(resource), *paths)
|
44
|
-
get member_path(username, *paths), options
|
23
|
+
# Retrieve a member's boards
|
24
|
+
#
|
25
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username-boards
|
26
|
+
def boards(username = "me", options = {})
|
27
|
+
get member_path(username, "boards"), options
|
28
|
+
end
|
29
|
+
|
30
|
+
# Retrieve a member's cards
|
31
|
+
#
|
32
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username-cards
|
33
|
+
def cards(username = "me", options = {})
|
34
|
+
get member_path(username, "cards"), options
|
45
35
|
end
|
46
36
|
|
47
|
-
#
|
48
|
-
#
|
49
|
-
#
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
#
|
55
|
-
#
|
37
|
+
# Retrieve a member's notifications
|
38
|
+
#
|
39
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username-notifications
|
40
|
+
def notifications(username = "me", options = {})
|
41
|
+
paginated_get member_path(username, "notifications"), options
|
42
|
+
end
|
43
|
+
|
44
|
+
# Retrieve a member's organizations
|
45
|
+
#
|
46
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username-organizations
|
47
|
+
def organizations(username = "me", options = {})
|
48
|
+
get member_path(username, "organizations"), options
|
49
|
+
end
|
50
|
+
|
51
|
+
# Retrieve a member's tokens
|
52
|
+
#
|
53
|
+
# @see https://trello.com/docs/api/member/index.html#get-1-members-idmember-or-username-tokens
|
54
|
+
def tokens(username = "me", options = {})
|
55
|
+
get member_path(username, "tokens"), options
|
56
|
+
end
|
56
57
|
|
57
|
-
#
|
58
|
+
# Update a member
|
59
|
+
#
|
60
|
+
# @see https://trello.com/docs/api/member/index.html#put-1-members-idmember-or-username
|
58
61
|
def update_member(username, options = {})
|
59
62
|
put member_path(username), options
|
60
63
|
end
|
@@ -83,6 +86,13 @@ module Tacokit
|
|
83
86
|
# customStickers/[idCustomSticker]
|
84
87
|
# savedSearches/[idSavedSearch]
|
85
88
|
|
89
|
+
private
|
90
|
+
|
91
|
+
def member_resource(username, resource, *paths)
|
92
|
+
paths, options = extract_options(camp(resource), *paths)
|
93
|
+
get(member_path(username, *paths), options)
|
94
|
+
end
|
95
|
+
|
86
96
|
def member_path(*paths)
|
87
97
|
path_join "members", *paths
|
88
98
|
end
|
@@ -1,37 +1,16 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Notifications
|
4
|
-
|
5
|
-
#
|
4
|
+
# Retrieve a notification
|
5
|
+
#
|
6
|
+
# @see https://trello.com/docs/api/notification/index.html#get-1-notifications-idnotification
|
6
7
|
def notification(notification_id, options = nil)
|
7
8
|
get notification_path(notification_id), options
|
8
9
|
end
|
9
10
|
|
10
|
-
#
|
11
|
-
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
# GET /1/notifications/[idNotification]/[resource]
|
16
|
-
# board
|
17
|
-
# board/[field]
|
18
|
-
# notification
|
19
|
-
# notification/[field]
|
20
|
-
# entities
|
21
|
-
# list
|
22
|
-
# list/[field]
|
23
|
-
# member
|
24
|
-
# member/[field]
|
25
|
-
# memberCreator
|
26
|
-
# memberCreator/[field]
|
27
|
-
# organization
|
28
|
-
# organization/[field]
|
29
|
-
def notification_resource(notification_id, resource, *paths)
|
30
|
-
paths, options = extract_options(camp(resource), *paths)
|
31
|
-
get notification_path(notification_id, *paths), options
|
32
|
-
end
|
33
|
-
|
34
|
-
# PUT /1/notifications/[idNotification]
|
11
|
+
# Update read/unread status of notification
|
12
|
+
#
|
13
|
+
# @see https://trello.com/docs/api/notification/index.html#put-1-notifications-idnotification
|
35
14
|
def update_notification(notification_id, options = {})
|
36
15
|
put notification_path(notification_id), options
|
37
16
|
end
|
@@ -40,6 +19,13 @@ module Tacokit
|
|
40
19
|
|
41
20
|
# POST /1/notifications/all/read
|
42
21
|
|
22
|
+
private
|
23
|
+
|
24
|
+
def notification_resource(notification_id, resource, *paths)
|
25
|
+
paths, options = extract_options(camp(resource), *paths)
|
26
|
+
get notification_path(notification_id, *paths), options
|
27
|
+
end
|
28
|
+
|
43
29
|
def notification_path(*paths)
|
44
30
|
path_join "notifications", *paths
|
45
31
|
end
|
@@ -1,17 +1,11 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Organizations
|
4
|
-
|
5
4
|
# GET /1/organizations/[idOrg or name]
|
6
5
|
def organization(org_id, options = nil)
|
7
6
|
get organization_path(org_id), options
|
8
7
|
end
|
9
8
|
|
10
|
-
# GET /1/organizations/[idOrg or name]/[field]
|
11
|
-
def organization_field(org_id, field, options = nil)
|
12
|
-
get organization_path(org_id, camp(field)), options
|
13
|
-
end
|
14
|
-
|
15
9
|
# GET /1/organizations/[idOrg or name]/[resource]
|
16
10
|
# actions
|
17
11
|
# boards
|
@@ -1,17 +1,11 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Tokens
|
4
|
-
|
5
4
|
# GET /1/tokens/[token]
|
6
5
|
def token(token, options = nil)
|
7
6
|
get token_path(token), options
|
8
7
|
end
|
9
8
|
|
10
|
-
# GET /1/tokens/[token]/[field]
|
11
|
-
def token_field(token, field, options = nil)
|
12
|
-
get token_path(token, camp(field)), options
|
13
|
-
end
|
14
|
-
|
15
9
|
# GET /1/tokens/[token]/[resource]
|
16
10
|
# member
|
17
11
|
# webhooks
|
data/lib/tacokit/client/types.rb
CHANGED
@@ -1,17 +1,11 @@
|
|
1
1
|
module Tacokit
|
2
2
|
class Client
|
3
3
|
module Webhooks
|
4
|
-
|
5
4
|
# GET /1/webhooks/[idWebhook]
|
6
5
|
def webhook(webhook_id)
|
7
6
|
get webhook_path(webhook_id)
|
8
7
|
end
|
9
8
|
|
10
|
-
# GET /1/webhooks/[idWebhook]/[field]
|
11
|
-
def webhook_field(webhook_id, field, options = nil)
|
12
|
-
get webhook_path(webhook_id, camp(field)), options
|
13
|
-
end
|
14
|
-
|
15
9
|
# PUT /1/webhooks/[idWebhook]
|
16
10
|
def update_webhook(webhook_id, options = {})
|
17
11
|
put webhook_path(webhook_id), options
|
@@ -25,9 +19,10 @@ module Tacokit
|
|
25
19
|
|
26
20
|
# POST /1/webhooks
|
27
21
|
def create_webhook(token, model_id, callback_url, options = {})
|
28
|
-
|
22
|
+
options.update \
|
29
23
|
model_id: model_id,
|
30
|
-
callback_url: callback_url
|
24
|
+
callback_url: callback_url
|
25
|
+
post webhook_path, options
|
31
26
|
end
|
32
27
|
|
33
28
|
# DELETE /1/webhooks/[idWebhook]
|