asana 2.0.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +38 -3
- data/Appraisals +7 -6
- data/Gemfile +5 -3
- data/Gemfile.lock +22 -12
- data/Guardfile +12 -10
- data/README.md +3 -1
- data/Rakefile +14 -17
- data/VERSION +1 -1
- data/asana.gemspec +19 -17
- data/lib/asana/authentication/oauth2/access_token_authentication.rb +2 -0
- data/lib/asana/authentication/oauth2/bearer_token_authentication.rb +2 -0
- data/lib/asana/authentication/oauth2/client.rb +2 -0
- data/lib/asana/authentication/oauth2.rb +6 -4
- data/lib/asana/authentication/token_authentication.rb +2 -0
- data/lib/asana/authentication.rb +2 -0
- data/lib/asana/client/configuration.rb +6 -5
- data/lib/asana/client.rb +13 -11
- data/lib/asana/errors.rb +16 -11
- data/lib/asana/http_client/environment_info.rb +9 -8
- data/lib/asana/http_client/error_handling.rb +24 -23
- data/lib/asana/http_client/response.rb +2 -0
- data/lib/asana/http_client.rb +58 -60
- data/lib/asana/resource_includes/attachment_uploading.rb +2 -4
- data/lib/asana/resource_includes/collection.rb +4 -4
- data/lib/asana/resource_includes/event.rb +2 -0
- data/lib/asana/resource_includes/event_subscription.rb +2 -0
- data/lib/asana/resource_includes/events.rb +4 -1
- data/lib/asana/resource_includes/registry.rb +2 -0
- data/lib/asana/resource_includes/resource.rb +8 -5
- data/lib/asana/resource_includes/response_helper.rb +2 -0
- data/lib/asana/resources/audit_log_api.rb +42 -0
- data/lib/asana/resources/gen/attachments_base.rb +1 -1
- data/lib/asana/resources/gen/audit_log_api_base.rb +1 -1
- data/lib/asana/resources/gen/memberships_base.rb +71 -0
- data/lib/asana/resources/gen/tasks_base.rb +1 -1
- data/lib/asana/resources/goal.rb +54 -0
- data/lib/asana/resources/goal_relationship.rb +32 -0
- data/lib/asana/resources/membership.rb +20 -0
- data/lib/asana/resources/project_brief.rb +30 -0
- data/lib/asana/resources/project_template.rb +36 -0
- data/lib/asana/resources/status_update.rb +54 -0
- data/lib/asana/resources/time_period.rb +30 -0
- data/lib/asana/resources/typeahead.rb +1 -1
- data/lib/asana/resources.rb +4 -4
- data/lib/asana/ruby2_0_0_compatibility.rb +2 -0
- data/lib/asana/version.rb +1 -1
- data/lib/asana.rb +2 -0
- data/samples/memberships_sample.yaml +41 -0
- metadata +49 -38
@@ -0,0 +1,36 @@
|
|
1
|
+
require_relative 'gen/project_templates_base'
|
2
|
+
|
3
|
+
module Asana
|
4
|
+
module Resources
|
5
|
+
class ProjectTemplate < ProjectTemplatesBase
|
6
|
+
|
7
|
+
|
8
|
+
attr_reader :gid
|
9
|
+
|
10
|
+
attr_reader :resource_type
|
11
|
+
|
12
|
+
attr_reader :color
|
13
|
+
|
14
|
+
attr_reader :description
|
15
|
+
|
16
|
+
attr_reader :html_description
|
17
|
+
|
18
|
+
attr_reader :name
|
19
|
+
|
20
|
+
attr_reader :owner
|
21
|
+
|
22
|
+
attr_reader :public
|
23
|
+
|
24
|
+
attr_reader :requested_dates
|
25
|
+
|
26
|
+
attr_reader :team
|
27
|
+
|
28
|
+
class << self
|
29
|
+
# Returns the plural name of the resource.
|
30
|
+
def plural_name
|
31
|
+
'project_templates'
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require_relative 'gen/status_updates_base'
|
2
|
+
|
3
|
+
module Asana
|
4
|
+
module Resources
|
5
|
+
class StatusUpdate < StatusUpdatesBase
|
6
|
+
|
7
|
+
|
8
|
+
attr_reader :gid
|
9
|
+
|
10
|
+
attr_reader :resource_type
|
11
|
+
|
12
|
+
attr_reader :html_text
|
13
|
+
|
14
|
+
attr_reader :resource_subtype
|
15
|
+
|
16
|
+
attr_reader :status_type
|
17
|
+
|
18
|
+
attr_reader :text
|
19
|
+
|
20
|
+
attr_reader :title
|
21
|
+
|
22
|
+
attr_reader :author
|
23
|
+
|
24
|
+
attr_reader :created_at
|
25
|
+
|
26
|
+
attr_reader :created_by
|
27
|
+
|
28
|
+
attr_reader :hearted
|
29
|
+
|
30
|
+
attr_reader :hearts
|
31
|
+
|
32
|
+
attr_reader :liked
|
33
|
+
|
34
|
+
attr_reader :likes
|
35
|
+
|
36
|
+
attr_reader :created_at
|
37
|
+
|
38
|
+
attr_reader :modified_at
|
39
|
+
|
40
|
+
attr_reader :num_hearts
|
41
|
+
|
42
|
+
attr_reader :num_likes
|
43
|
+
|
44
|
+
attr_reader :parent
|
45
|
+
|
46
|
+
class << self
|
47
|
+
# Returns the plural name of the resource.
|
48
|
+
def plural_name
|
49
|
+
'status_updates'
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require_relative 'gen/time_periods_base'
|
2
|
+
|
3
|
+
module Asana
|
4
|
+
module Resources
|
5
|
+
class TimePeriod < TimePeriodsBase
|
6
|
+
|
7
|
+
|
8
|
+
attr_reader :gid
|
9
|
+
|
10
|
+
attr_reader :resource_type
|
11
|
+
|
12
|
+
attr_reader :display_name
|
13
|
+
|
14
|
+
attr_reader :end_on
|
15
|
+
|
16
|
+
attr_reader :parent
|
17
|
+
|
18
|
+
attr_reader :period
|
19
|
+
|
20
|
+
attr_reader :start_on
|
21
|
+
|
22
|
+
class << self
|
23
|
+
# Returns the plural name of the resource.
|
24
|
+
def plural_name
|
25
|
+
'time_periods'
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
data/lib/asana/resources.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require_relative 'resource_includes/resource'
|
2
4
|
require_relative 'resource_includes/collection'
|
3
5
|
|
4
|
-
Dir[File.join(File.dirname(__FILE__), 'resource_includes', '*.rb')]
|
5
|
-
.each { |resource| require resource }
|
6
|
+
Dir[File.join(File.dirname(__FILE__), 'resource_includes', '*.rb')].sort.each { |resource| require resource }
|
6
7
|
|
7
|
-
Dir[File.join(File.dirname(__FILE__), 'resources', '*.rb')]
|
8
|
-
.each { |resource| require resource }
|
8
|
+
Dir[File.join(File.dirname(__FILE__), 'resources', '*.rb')].sort.each { |resource| require resource }
|
9
9
|
|
10
10
|
module Asana
|
11
11
|
# Public: Contains all the resources that the Asana API can return.
|
data/lib/asana/version.rb
CHANGED
data/lib/asana.rb
CHANGED
@@ -0,0 +1,41 @@
|
|
1
|
+
memberships:
|
2
|
+
create_membership: >-
|
3
|
+
require 'asana'
|
4
|
+
|
5
|
+
|
6
|
+
client = Asana::Client.new do |c|
|
7
|
+
c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
|
8
|
+
end
|
9
|
+
|
10
|
+
|
11
|
+
result = client.memberships.create_membership(field: "value", field: "value", options: {pretty: true})
|
12
|
+
delete_membership: >-
|
13
|
+
require 'asana'
|
14
|
+
|
15
|
+
|
16
|
+
client = Asana::Client.new do |c|
|
17
|
+
c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
|
18
|
+
end
|
19
|
+
|
20
|
+
|
21
|
+
result = client.memberships.delete_membership(membership_gid: 'membership_gid', options: {pretty: true})
|
22
|
+
get_memberships: >-
|
23
|
+
require 'asana'
|
24
|
+
|
25
|
+
|
26
|
+
client = Asana::Client.new do |c|
|
27
|
+
c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
|
28
|
+
end
|
29
|
+
|
30
|
+
|
31
|
+
result = client.memberships.get_memberships(parent: ''parent_example'', param: "value", param: "value", options: {pretty: true})
|
32
|
+
update_membership: >-
|
33
|
+
require 'asana'
|
34
|
+
|
35
|
+
|
36
|
+
client = Asana::Client.new do |c|
|
37
|
+
c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
result = client.memberships.update_membership(membership_gid: 'membership_gid', field: "value", field: "value", options: {pretty: true})
|
metadata
CHANGED
@@ -1,35 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: asana
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Txus
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-03-
|
11
|
+
date: 2023-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: oauth2
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '1.4'
|
20
|
-
- - "<"
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: '3'
|
23
|
-
type: :runtime
|
24
|
-
prerelease: false
|
25
|
-
version_requirements: !ruby/object:Gem::Requirement
|
26
|
-
requirements:
|
27
|
-
- - ">="
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '1.4'
|
30
|
-
- - "<"
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '3'
|
33
13
|
- !ruby/object:Gem::Dependency
|
34
14
|
name: faraday
|
35
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -73,53 +53,73 @@ dependencies:
|
|
73
53
|
- !ruby/object:Gem::Version
|
74
54
|
version: '0'
|
75
55
|
- !ruby/object:Gem::Dependency
|
76
|
-
name:
|
56
|
+
name: oauth2
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.4'
|
62
|
+
- - "<"
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '3'
|
65
|
+
type: :runtime
|
66
|
+
prerelease: false
|
67
|
+
version_requirements: !ruby/object:Gem::Requirement
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '1.4'
|
72
|
+
- - "<"
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '3'
|
75
|
+
- !ruby/object:Gem::Dependency
|
76
|
+
name: appraisal
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
78
78
|
requirements:
|
79
79
|
- - "~>"
|
80
80
|
- !ruby/object:Gem::Version
|
81
|
-
version: '
|
81
|
+
version: '2.1'
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: '2.1'
|
82
85
|
type: :development
|
83
86
|
prerelease: false
|
84
87
|
version_requirements: !ruby/object:Gem::Requirement
|
85
88
|
requirements:
|
86
89
|
- - "~>"
|
87
90
|
- !ruby/object:Gem::Version
|
88
|
-
version: '
|
91
|
+
version: '2.1'
|
92
|
+
- - ">="
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: '2.1'
|
89
95
|
- !ruby/object:Gem::Dependency
|
90
|
-
name:
|
96
|
+
name: rake
|
91
97
|
requirement: !ruby/object:Gem::Requirement
|
92
98
|
requirements:
|
93
99
|
- - "~>"
|
94
100
|
- !ruby/object:Gem::Version
|
95
|
-
version: '
|
101
|
+
version: '13.0'
|
96
102
|
type: :development
|
97
103
|
prerelease: false
|
98
104
|
version_requirements: !ruby/object:Gem::Requirement
|
99
105
|
requirements:
|
100
106
|
- - "~>"
|
101
107
|
- !ruby/object:Gem::Version
|
102
|
-
version: '
|
108
|
+
version: '13.0'
|
103
109
|
- !ruby/object:Gem::Dependency
|
104
|
-
name:
|
110
|
+
name: rspec
|
105
111
|
requirement: !ruby/object:Gem::Requirement
|
106
112
|
requirements:
|
107
113
|
- - "~>"
|
108
114
|
- !ruby/object:Gem::Version
|
109
|
-
version: '2
|
110
|
-
- - ">="
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
version: '2.1'
|
115
|
+
version: '3.2'
|
113
116
|
type: :development
|
114
117
|
prerelease: false
|
115
118
|
version_requirements: !ruby/object:Gem::Requirement
|
116
119
|
requirements:
|
117
120
|
- - "~>"
|
118
121
|
- !ruby/object:Gem::Version
|
119
|
-
version: '2
|
120
|
-
- - ">="
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
version: '2.1'
|
122
|
+
version: '3.2'
|
123
123
|
description: Official Ruby client for the Asana API
|
124
124
|
email:
|
125
125
|
- me@txus.io
|
@@ -178,6 +178,7 @@ files:
|
|
178
178
|
- lib/asana/resource_includes/response_helper.rb
|
179
179
|
- lib/asana/resources.rb
|
180
180
|
- lib/asana/resources/attachment.rb
|
181
|
+
- lib/asana/resources/audit_log_api.rb
|
181
182
|
- lib/asana/resources/batch_api.rb
|
182
183
|
- lib/asana/resources/custom_field_settings.rb
|
183
184
|
- lib/asana/resources/custom_fields.rb
|
@@ -191,6 +192,7 @@ files:
|
|
191
192
|
- lib/asana/resources/gen/goal_relationships_base.rb
|
192
193
|
- lib/asana/resources/gen/goals_base.rb
|
193
194
|
- lib/asana/resources/gen/jobs_base.rb
|
195
|
+
- lib/asana/resources/gen/memberships_base.rb
|
194
196
|
- lib/asana/resources/gen/organization_exports_base.rb
|
195
197
|
- lib/asana/resources/gen/portfolio_memberships_base.rb
|
196
198
|
- lib/asana/resources/gen/portfolios_base.rb
|
@@ -213,19 +215,26 @@ files:
|
|
213
215
|
- lib/asana/resources/gen/webhooks_base.rb
|
214
216
|
- lib/asana/resources/gen/workspace_memberships_base.rb
|
215
217
|
- lib/asana/resources/gen/workspaces_base.rb
|
218
|
+
- lib/asana/resources/goal.rb
|
219
|
+
- lib/asana/resources/goal_relationship.rb
|
216
220
|
- lib/asana/resources/job.rb
|
221
|
+
- lib/asana/resources/membership.rb
|
217
222
|
- lib/asana/resources/organization_export.rb
|
218
223
|
- lib/asana/resources/portfolio.rb
|
219
224
|
- lib/asana/resources/portfolio_membership.rb
|
220
225
|
- lib/asana/resources/project.rb
|
226
|
+
- lib/asana/resources/project_brief.rb
|
221
227
|
- lib/asana/resources/project_membership.rb
|
222
228
|
- lib/asana/resources/project_status.rb
|
229
|
+
- lib/asana/resources/project_template.rb
|
223
230
|
- lib/asana/resources/section.rb
|
231
|
+
- lib/asana/resources/status_update.rb
|
224
232
|
- lib/asana/resources/story.rb
|
225
233
|
- lib/asana/resources/tag.rb
|
226
234
|
- lib/asana/resources/task.rb
|
227
235
|
- lib/asana/resources/team.rb
|
228
236
|
- lib/asana/resources/team_membership.rb
|
237
|
+
- lib/asana/resources/time_period.rb
|
229
238
|
- lib/asana/resources/typeahead.rb
|
230
239
|
- lib/asana/resources/user.rb
|
231
240
|
- lib/asana/resources/user_task_list.rb
|
@@ -247,6 +256,7 @@ files:
|
|
247
256
|
- samples/goal_relationships_sample.yaml
|
248
257
|
- samples/goals_sample.yaml
|
249
258
|
- samples/jobs_sample.yaml
|
259
|
+
- samples/memberships_sample.yaml
|
250
260
|
- samples/organization_exports_sample.yaml
|
251
261
|
- samples/portfolio_memberships_sample.yaml
|
252
262
|
- samples/portfolios_sample.yaml
|
@@ -275,7 +285,8 @@ files:
|
|
275
285
|
homepage: https://github.com/asana/ruby-asana
|
276
286
|
licenses:
|
277
287
|
- MIT
|
278
|
-
metadata:
|
288
|
+
metadata:
|
289
|
+
rubygems_mfa_required: 'true'
|
279
290
|
post_install_message:
|
280
291
|
rdoc_options: []
|
281
292
|
require_paths:
|