researchable-freedcamp-api 0.1.0 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75d48e7be6f5c575ec993b2dc2051d27083b91b643ed6ff89ce75056e3303089
4
- data.tar.gz: 182f78158dabec5f59889a00a277187ba5b7d57651787630672875ef94a94bab
3
+ metadata.gz: 628dfc362e3b0422af518b3f795d52e1f352ba3a5f598b290eefba123f113fae
4
+ data.tar.gz: 567d22064d71fc1de66ddf277cdc11c4a96477c30a7b068e5f6ce0d8d733938b
5
5
  SHA512:
6
- metadata.gz: 3eb40dbd7912f74b5391d6951c617e60e6552db39df5992cbe8bd140b20a3bc893e288537a95814c7e640f6df699c1621fd9d6339914d128ae712cd35468be1e
7
- data.tar.gz: ffe562dc9a4aa8f8d682d23b513d892cfbe3854b7d6b36eb8f153041427c633b72de236dcd8507af551bf70c6ba1d7ad793d526acf2595f55377e504d65bf63a
6
+ metadata.gz: 310a4dfd7749bd82b39d3c0d1a74e78437163ef7774107a5e85a74b50e0937decf9c8e3c393c370869eed30d65a2fde16518de876f8e0167f78218a04c1553f8
7
+ data.tar.gz: '08c08e707a1f4a6635396c5693375b84341724ad0d70279a2804873342da547bac9e688052341cdea84e3cba2556cd151ccd4b9d3c5c452b3bb5a7f743117725'
data/.gitignore CHANGED
@@ -1 +1,2 @@
1
1
  output/*
2
+ *.gem
@@ -0,0 +1,24 @@
1
+ # typed: sigil
2
+
3
+ module Researchable
4
+ module FreedcampApi
5
+ # @api private
6
+ class CreateComment < Endpoint
7
+ object :comment, class: Researchable::FreedcampApi::Structs::Comment
8
+ def execute
9
+ create_comment(comment)
10
+ end
11
+
12
+ private
13
+
14
+ sig do
15
+ params(comment: Researchable::FreedcampApi::Structs::Comment)
16
+ .returns(T::Hash[T.untyped, T.untyped])
17
+ end
18
+ def create_comment(comment)
19
+ # title
20
+ session.post('/comments', comment)
21
+ end
22
+ end
23
+ end
24
+ end
@@ -1,7 +1,6 @@
1
1
  # typed: strict
2
2
  require 'json'
3
3
  require 'httparty'
4
- require 'byebug'
5
4
 
6
5
  require_relative '../structs/signature'
7
6
  require_relative '../structs/task'
@@ -30,10 +29,10 @@ module Researchable
30
29
  # rubocop:enable Style/AccessorGrouping
31
30
 
32
31
  sig { params(public_key: String, secret_key: String, use_cache: T::Boolean).void }
33
- def initialize(public_key: ENV['PUBLIC_KEY'], secret_key: ENV['SECRET_KEY'], use_cache: true)
32
+ def initialize(public_key: ENV['PUBLIC_KEY'], secret_key: ENV['SECRET_KEY'], use_cache: ENV['USE_CACHE'])
34
33
  @public_key = public_key
35
34
  @secret_key = secret_key
36
- @use_cache = use_cache
35
+ @use_cache = use_cache == 'true'
37
36
  end
38
37
 
39
38
  sig { override.params(path: String).returns(T::Hash[T.untyped, T.untyped]) }
@@ -0,0 +1,27 @@
1
+ # typed: strict
2
+ # require 'sorbet-runtime'
3
+
4
+ # (1) Create a new class that subclasses `T::Struct`
5
+ module Researchable
6
+ module FreedcampApi
7
+ module Structs
8
+ class Comment < T::Struct
9
+ # Item id to add a comment for
10
+ const :item_id, T.nilable(String)
11
+ # Application id (wiki). Supported apps are
12
+ # - (2) APP_TODOS,
13
+ # - (6) APP_FILES,
14
+ # - 3 APP_DISCUSSIONS,
15
+ # - 13 APP_BUGTRACKER,
16
+ # - 14 APP_WIKI, A
17
+ # - 19 APP_CALENDAR.
18
+ # (see https://freedcamp.com/Mobile_7Yh/iOS_application_6zp/wiki/wiki_public/view/AHaab)
19
+ const :app_id, T.nilable(String)
20
+ # Description of the comment
21
+ const :description, T.nilable(String)
22
+ # Files that might be attached
23
+ const :attached_ids, T.nilable(T::Array[Integer])
24
+ end
25
+ end
26
+ end
27
+ end
@@ -3,6 +3,6 @@
3
3
 
4
4
  module Researchable
5
5
  module FreedcampApi
6
- VERSION = "0.1.0"
6
+ VERSION = "0.1.4"
7
7
  end
8
8
  end
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
11
11
  spec.description = 'Wrapper around the freedcamp api'
12
12
  spec.homepage = 'https://researchable.nl'
13
13
  spec.license = 'MIT'
14
- spec.required_ruby_version = Gem::Requirement.new('>= 2.4.0')
14
+ spec.required_ruby_version = Gem::Requirement.new('>= 2.7.0')
15
15
 
16
16
  spec.metadata['allowed_push_host'] = 'https://rubygems.org'
17
17
 
@@ -35,10 +35,10 @@ Gem::Specification.new do |spec|
35
35
  # guide at: https://bundler.io/guides/creating_gem.html
36
36
  spec.add_dependency 'active_interaction', '>= 3.2'
37
37
  spec.add_dependency 'httparty', '>= 0.14'
38
- spec.add_dependency 'sorbet-runtime'
38
+ spec.add_dependency 'sorbet-runtime'
39
39
 
40
40
  spec.add_development_dependency 'bundler', '>0'
41
+ spec.add_development_dependency 'byebug'
41
42
  spec.add_development_dependency 'rspec', '~> 3.0'
42
43
  spec.add_development_dependency 'sorbet'
43
- spec.add_development_dependency 'byebug'
44
44
  end
data/test.rb CHANGED
@@ -2,7 +2,6 @@
2
2
  # typed: false
3
3
  # frozen_string_literal: true
4
4
 
5
- require 'bundler/setup'
6
5
  require 'researchable-freedcamp-api'
7
6
 
8
7
  # You can add fixtures and/or initialization code here to make experimenting
@@ -13,6 +12,7 @@ require 'researchable-freedcamp-api'
13
12
  # Pry.start
14
13
  #
15
14
  # Researchable::FreedcampApi::ListTasks.run!
15
+ ENV['USE_CACHE'] = 'true'
16
16
  puts Researchable::FreedcampApi::ListTasks.run!(task_id: 44_509_132).to_json
17
17
 
18
18
  progress = 2
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: researchable-freedcamp-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Frank Blaauw
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-25 00:00:00.000000000 Z
11
+ date: 2022-01-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_interaction
@@ -67,35 +67,35 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rspec
70
+ name: byebug
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '3.0'
75
+ version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '3.0'
82
+ version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: sorbet
84
+ name: rspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: '3.0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: '3.0'
97
97
  - !ruby/object:Gem::Dependency
98
- name: byebug
98
+ name: sorbet
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
@@ -126,6 +126,7 @@ files:
126
126
  - bin/setup
127
127
  - lib/researchable-freedcamp-api.rb
128
128
  - lib/researchable/freedcamp_api.rb
129
+ - lib/researchable/freedcamp_api/create_comment.rb
129
130
  - lib/researchable/freedcamp_api/create_task.rb
130
131
  - lib/researchable/freedcamp_api/endpoint.rb
131
132
  - lib/researchable/freedcamp_api/list_milestones.rb
@@ -135,6 +136,7 @@ files:
135
136
  - lib/researchable/freedcamp_api/sessions/session.rb
136
137
  - lib/researchable/freedcamp_api/sessions/signed_session.rb
137
138
  - lib/researchable/freedcamp_api/structs.rb
139
+ - lib/researchable/freedcamp_api/structs/comment.rb
138
140
  - lib/researchable/freedcamp_api/structs/signature.rb
139
141
  - lib/researchable/freedcamp_api/structs/task.rb
140
142
  - lib/researchable/freedcamp_api/update_task.rb
@@ -184,14 +186,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
184
186
  requirements:
185
187
  - - ">="
186
188
  - !ruby/object:Gem::Version
187
- version: 2.4.0
189
+ version: 2.7.0
188
190
  required_rubygems_version: !ruby/object:Gem::Requirement
189
191
  requirements:
190
192
  - - ">="
191
193
  - !ruby/object:Gem::Version
192
194
  version: '0'
193
195
  requirements: []
194
- rubygems_version: 3.2.15
196
+ rubygems_version: 3.0.8
195
197
  signing_key:
196
198
  specification_version: 4
197
199
  summary: Freedcamp API gem