researchable-freedcamp-api 0.1.0 → 0.1.4

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 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