dotloop_api 3.0.0 → 3.0.2

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: a89d1a970e62f316651c5ad4e388a4b3889c013b7e5347ed49211b3268ec78df
4
- data.tar.gz: 2056947d1efe2b07e1353f1f01d8fee5c37df3b8cf12e76b41c70c196b799a37
3
+ metadata.gz: b0eafe1134fdf45e62e22bf462cc2744955afb44e4847b1ce4574ccb45a22e79
4
+ data.tar.gz: 266985c269f86294ab04543bf4a5ba656c2b79bb1e216cce0ccf72a41fc70a71
5
5
  SHA512:
6
- metadata.gz: 4b7f604a892d20adf0f03542a6e12ca187e5fd83b00b665cceecf7c67c3e5aae78ffc1b038fc56834c94b52d5ccb8c22eea0ab862f380b8f961017f6fb3f52d4
7
- data.tar.gz: 9b6f84cc9aa551d170fdb704c4bb1852b2aced97d73dc0640fdc62666a0ec26e3227743f3e18868580ddb3c776a5115a8a39f83d815f80ff573c9c18893ad77d
6
+ metadata.gz: 017e88a5bc0c4b21162df2b629f8dca1f5d7606dbb7d85fd01633dfc9fa26ecf10310b8024a77558f1c25e5542eadf078e5fb8490fcde102e239abab8b690eb3
7
+ data.tar.gz: 1e176eb77895b391564bdcee78e82f4e87a727a3c163d11adf66e93500933f4411cfb6dccb2dcd736880d195ddc3b6014c6f7b4c8dddde21523ab49dd670ae13
checksums.yaml.gz.sig CHANGED
Binary file
data/.rubocop.yml CHANGED
@@ -1,5 +1,6 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.7
2
+ NewCops: enable
3
+ TargetRubyVersion: 3.2.2
3
4
  Exclude:
4
5
  - '**/Guardfile'
5
6
  - 'db/**/*'
@@ -13,14 +14,6 @@ Documentation:
13
14
  Metrics/BlockLength:
14
15
  Exclude:
15
16
  - 'spec/**/*.rb'
16
- Metrics/LineLength:
17
- Max: 120
18
- Exclude:
19
- - 'spec/**/*.rb'
20
- AllowURI: true
21
- URISchemes:
22
- - http
23
- - https
24
17
  Metrics/MethodLength:
25
18
  CountComments: false
26
19
  Max: 15
@@ -32,3 +25,11 @@ Style/Alias:
32
25
  EnforcedStyle: prefer_alias_method
33
26
  Layout/EmptyLineAfterGuardClause:
34
27
  Enabled: False
28
+ Layout/LineLength:
29
+ Max: 120
30
+ Exclude:
31
+ - 'spec/**/*.rb'
32
+ AllowURI: true
33
+ URISchemes:
34
+ - http
35
+ - https
data/Gemfile CHANGED
@@ -2,3 +2,13 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in dotloop_api.gemspec
4
4
  gemspec
5
+
6
+ gem 'bundler', '~> 2'
7
+ gem 'coveralls_reborn', '~> 0.25.0'
8
+ gem 'pry', '~> 0.14'
9
+ gem 'rake', '~> 13'
10
+ gem 'rspec', '~> 3'
11
+ gem 'rubocop', '~> 1'
12
+ gem 'simplecov', '~> 0.21'
13
+ gem 'travis', '~> 1.8'
14
+ gem 'webmock', '~> 3'
data/dotloop_api.gemspec CHANGED
@@ -2,7 +2,7 @@ lib = File.expand_path('lib', __dir__)
2
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
  require 'dotloop_api/version'
4
4
 
5
- Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength
5
+ Gem::Specification.new do |spec|
6
6
  spec.name = 'dotloop_api'
7
7
  spec.version = DotloopApi::VERSION
8
8
  spec.authors = ['Loft47']
@@ -27,16 +27,8 @@ Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength
27
27
  spec.require_paths = ['lib']
28
28
 
29
29
  spec.add_runtime_dependency 'activesupport', '~> 7'
30
- spec.add_runtime_dependency 'httparty', '~> 0.20'
30
+ spec.add_runtime_dependency 'httparty', '~> 0.21'
31
31
  spec.add_runtime_dependency 'plissken', '~> 2'
32
32
  spec.add_runtime_dependency 'virtus', '~> 1.0'
33
- spec.add_development_dependency 'bundler', '~> 2'
34
- spec.add_development_dependency 'coveralls_reborn', '~> 0.25.0'
35
- spec.add_development_dependency 'pry', '~> 0.14'
36
- spec.add_development_dependency 'rake', '~> 13'
37
- spec.add_development_dependency 'rspec', '~> 3'
38
- spec.add_development_dependency 'rubocop', '~> 1'
39
- spec.add_development_dependency 'simplecov', '~> 0.21'
40
- spec.add_development_dependency 'travis', '~> 1.8'
41
- spec.add_development_dependency 'webmock', '~> 3'
33
+ spec.metadata['rubygems_mfa_required'] = 'true'
42
34
  end
@@ -5,11 +5,11 @@ module DotloopApi
5
5
 
6
6
  def initialize(client_id:, client_secret:, redirect_uri:, redirect_on_deny: true, application: 'dotloop')
7
7
  @config = DotloopApi::Models::Config.new(
8
- application: application,
9
- client_id: client_id,
10
- client_secret: client_secret,
11
- redirect_on_deny: redirect_on_deny,
12
- redirect_uri: redirect_uri,
8
+ application:,
9
+ client_id:,
10
+ client_secret:,
11
+ redirect_on_deny:,
12
+ redirect_uri:,
13
13
  state: SecureRandom.uuid
14
14
  )
15
15
  end
@@ -22,18 +22,18 @@ module DotloopApi
22
22
 
23
23
  def request(code:, state: nil)
24
24
  check_state(state)
25
- response = self.class.post("#{base_uri}token", query: request_params(code), headers: headers, timeout: 60)
25
+ response = self.class.post("#{base_uri}token", query: request_params(code), headers:, timeout: 60)
26
26
  handle_error(response)
27
27
  @config.attributes = response.parsed_response
28
28
  end
29
29
 
30
30
  def request_from_url(url)
31
- request(parse_url_response(url))
31
+ request(**parse_url_response(url))
32
32
  end
33
33
 
34
34
  def refresh
35
35
  check_refresh_token
36
- response = self.class.post("#{base_uri}token", query: refresh_params, headers: headers, timeout: 60)
36
+ response = self.class.post("#{base_uri}token", query: refresh_params, headers:, timeout: 60)
37
37
  handle_error(response)
38
38
  @config.attributes = response.parsed_response
39
39
  end
@@ -41,7 +41,7 @@ module DotloopApi
41
41
  def revoke
42
42
  check_revoke_token
43
43
  params = { token: @config.access_token }
44
- response = self.class.post("#{base_uri}token/revoke", query: params, headers: headers, timeout: 60)
44
+ response = self.class.post("#{base_uri}token/revoke", query: params, headers:, timeout: 60)
45
45
  handle_error(response)
46
46
  clear_auth
47
47
  end
@@ -56,14 +56,14 @@ module DotloopApi
56
56
  {
57
57
  'Content-Type': 'application/x-www-form-urlencoded',
58
58
  'User-Agent': @config.application.to_s,
59
- 'Accept': '*/*',
60
- 'Authorization': "Basic #{encoded_client_id}"
59
+ Accept: '*/*',
60
+ Authorization: "Basic #{encoded_client_id}"
61
61
  }
62
62
  end
63
63
 
64
64
  def request_params(code)
65
65
  {
66
- code: code,
66
+ code:,
67
67
  grant_type: :authorization_code,
68
68
  redirect_uri: @config.redirect_uri,
69
69
  state: @config.state
@@ -84,7 +84,7 @@ module DotloopApi
84
84
  redirect_uri: @config.redirect_uri,
85
85
  response_type: :code,
86
86
  state: @config.state
87
- }.delete_if { |_, v| v.nil? }
87
+ }.compact
88
88
  end
89
89
 
90
90
  def check_state(state)
@@ -20,28 +20,28 @@ module DotloopApi
20
20
  end
21
21
 
22
22
  def patch(page, model)
23
- response = self.class.patch(page, query: model.attributes, headers: headers, timeout: 60)
23
+ response = self.class.patch(page, query: model.attributes, headers:, timeout: 60)
24
24
  limits_from_headers(response.headers)
25
25
  handle_dotloop_error(response.code) if response.code != 200
26
26
  self.class.snakify(response.parsed_response)
27
27
  end
28
28
 
29
29
  def post(page, model)
30
- response = self.class.post(page, query: model.attributes, headers: headers, timeout: 60)
30
+ response = self.class.post(page, query: model.attributes, headers:, timeout: 60)
31
31
  limits_from_headers(response.headers)
32
32
  handle_dotloop_error(response.code) if response.code != 200
33
33
  self.class.snakify(response.parsed_response)
34
34
  end
35
35
 
36
36
  def delete(page)
37
- response = self.class.delete(page, headers: headers, timeout: 60)
37
+ response = self.class.delete(page, headers:, timeout: 60)
38
38
  limits_from_headers(response.headers)
39
39
  handle_dotloop_error(response.code) if response.code != 200
40
40
  self.class.snakify(response.parsed_response)
41
41
  end
42
42
 
43
43
  def raw(page, params = {})
44
- response = self.class.get(page, query: params, headers: headers, timeout: 60)
44
+ response = self.class.get(page, query: params, headers:, timeout: 60)
45
45
  limits_from_headers(response.headers)
46
46
  handle_dotloop_error(response.code) if response.code != 200
47
47
  response.parsed_response
@@ -11,7 +11,7 @@ module DotloopApi
11
11
  def initialize(client:, profile_id: nil, loop_id: nil)
12
12
  @profile_id = profile_id
13
13
  @loop_id = loop_id
14
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::Activity)
14
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::Activity)
15
15
  end
16
16
 
17
17
  def path
@@ -2,7 +2,7 @@ module DotloopApi
2
2
  module EndPoints
3
3
  class Contact < DotloopApi::EndPoints::Batch
4
4
  def initialize(client:)
5
- super(client: client, path: '/contact', type: DotloopApi::Models::Contact)
5
+ super(client:, path: '/contact', type: DotloopApi::Models::Contact)
6
6
  end
7
7
  end
8
8
  end
@@ -9,7 +9,7 @@ module DotloopApi
9
9
  def initialize(client:, profile_id: nil, loop_id: nil)
10
10
  @profile_id = profile_id
11
11
  @loop_id = loop_id
12
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::Detail)
12
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::Detail)
13
13
  end
14
14
 
15
15
  def find
@@ -9,7 +9,7 @@ module DotloopApi
9
9
  @profile_id = profile_id
10
10
  @loop_id = loop_id
11
11
  @folder_id = folder_id
12
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::Folder::Document)
12
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::Folder::Document)
13
13
  end
14
14
 
15
15
  def path
@@ -8,12 +8,12 @@ module DotloopApi
8
8
  def initialize(client:, profile_id: nil, loop_id: nil)
9
9
  @profile_id = profile_id
10
10
  @loop_id = loop_id
11
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::Folder)
11
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::Folder)
12
12
  end
13
13
 
14
14
  def all(options = {})
15
15
  options_to_params(options)
16
- @client.get(path, @params)[:data].map { |attrs| build_model(attrs) }
16
+ @client.get(path, **@params)[:data].map { |attrs| build_model(attrs) }
17
17
  end
18
18
 
19
19
  def path
@@ -7,7 +7,7 @@ module DotloopApi
7
7
 
8
8
  def initialize(client:, profile_id: nil)
9
9
  @profile_id = profile_id
10
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop)
10
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop)
11
11
  end
12
12
 
13
13
  def path
@@ -9,7 +9,7 @@ module DotloopApi
9
9
 
10
10
  def initialize(client:, profile_id: nil)
11
11
  @profile_id = profile_id
12
- super(client: client, path: path, type: DotloopApi::Models::Profile::LoopTemplate)
12
+ super(client:, path:, type: DotloopApi::Models::Profile::LoopTemplate)
13
13
  end
14
14
 
15
15
  def path
@@ -20,7 +20,7 @@ module DotloopApi
20
20
  batch_size: size,
21
21
  filter: filter_string,
22
22
  include_details: @include_details,
23
- sort: sort
23
+ sort:
24
24
  }.delete_if { |_, v| should_delete(v) }
25
25
  end
26
26
 
@@ -6,7 +6,7 @@ module DotloopApi
6
6
  def initialize(client:, profile_id: nil, loop_id: nil)
7
7
  @profile_id = profile_id
8
8
  @loop_id = loop_id
9
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::Participant)
9
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::Participant)
10
10
  end
11
11
 
12
12
  def path
@@ -3,7 +3,7 @@ module DotloopApi
3
3
  class Profile < DotloopApi::EndPoints::Base
4
4
  undef_method :delete
5
5
  def initialize(client:)
6
- super(client: client, path: '/profile', type: DotloopApi::Models::Profile)
6
+ super(client:, path: '/profile', type: DotloopApi::Models::Profile)
7
7
  end
8
8
  end
9
9
  end
@@ -11,7 +11,7 @@ module DotloopApi
11
11
  @profile_id = profile_id
12
12
  @loop_id = loop_id
13
13
  @task_list_id = task_list_id
14
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::TaskList::Task)
14
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::TaskList::Task)
15
15
  end
16
16
 
17
17
  def path
@@ -10,7 +10,7 @@ module DotloopApi
10
10
  def initialize(client:, profile_id: nil, loop_id: nil)
11
11
  @profile_id = profile_id
12
12
  @loop_id = loop_id
13
- super(client: client, path: path, type: DotloopApi::Models::Profile::Loop::TaskList)
13
+ super(client:, path:, type: DotloopApi::Models::Profile::Loop::TaskList)
14
14
  end
15
15
 
16
16
  def path
@@ -121,7 +121,7 @@ module DotloopApi
121
121
 
122
122
  def save
123
123
  DotloopApi::EndPoints::Detail.new(
124
- client: client, profile_id: profile_id, loop_id: loop_id
124
+ client:, profile_id:, loop_id:
125
125
  ).save(self)
126
126
  end
127
127
  end
@@ -13,7 +13,7 @@ module DotloopApi
13
13
 
14
14
  def download
15
15
  DotloopApi::EndPoints::Document.new(
16
- client: client, profile_id: profile_id, loop_id: loop_id, folder_id: folder_id
16
+ client:, profile_id:, loop_id:, folder_id:
17
17
  ).download(id: @id)
18
18
  end
19
19
  end
@@ -8,12 +8,12 @@ module DotloopApi
8
8
  attribute :id, Integer
9
9
  attribute :created, Time
10
10
  attribute :updated, Time
11
- attribute :documents, Array[DotloopApi::Models::Profile::Loop::Folder::Document]
11
+ attribute :documents, Array[DotloopApi::Models::Profile::Loop::Folder::Document] # rubocop:disable Style/RedundantArrayConstructor
12
12
  attr_accessor :client, :profile_id, :loop_id
13
13
 
14
14
  def document_list
15
15
  @docuements = DotloopApi::EndPoints::Document.new(
16
- client: client, profile_id: profile_id, loop_id: loop_id, folder_id: id
16
+ client:, profile_id:, loop_id:, folder_id: id
17
17
  ).all
18
18
  end
19
19
  end
@@ -10,7 +10,7 @@ module DotloopApi
10
10
 
11
11
  def tasks
12
12
  DotloopApi::EndPoints::Task.new(
13
- client: client, profile_id: profile_id, loop_id: loop_id, task_list_id: id
13
+ client:, profile_id:, loop_id:, task_list_id: id
14
14
  ).all
15
15
  end
16
16
  end
@@ -24,33 +24,33 @@ module DotloopApi
24
24
  attribute :transaction_type
25
25
  attribute :updated
26
26
  attribute :details, DotloopApi::Models::Profile::Loop::Detail
27
- attribute :all_participants, Array[DotloopApi::Models::Profile::Loop::Participant]
27
+ attribute :all_participants, Array[DotloopApi::Models::Profile::Loop::Participant] # rubocop:disable Style/RedundantArrayConstructor
28
28
  attr_accessor :client
29
29
 
30
30
  def activities
31
- DotloopApi::EndPoints::Activity.new(client: client, profile_id: profile_id, loop_id: id).all
31
+ DotloopApi::EndPoints::Activity.new(client:, profile_id:, loop_id: id).all
32
32
  end
33
33
 
34
34
  def detail
35
35
  @details = DotloopApi::EndPoints::Detail.new(
36
- client: client, profile_id: profile_id, loop_id: id
36
+ client:, profile_id:, loop_id: id
37
37
  ).find
38
38
  end
39
39
 
40
40
  def folders(options = {})
41
41
  DotloopApi::EndPoints::Folder.new(
42
- client: client, profile_id: profile_id, loop_id: id
42
+ client:, profile_id:, loop_id: id
43
43
  ).all(options)
44
44
  end
45
45
 
46
46
  def participants
47
47
  @all_participants = DotloopApi::EndPoints::Participant.new(
48
- client: client, profile_id: profile_id, loop_id: id
48
+ client:, profile_id:, loop_id: id
49
49
  ).all
50
50
  end
51
51
 
52
52
  def task_lists
53
- DotloopApi::EndPoints::TaskList.new(client: client, profile_id: profile_id, loop_id: id).all
53
+ DotloopApi::EndPoints::TaskList.new(client:, profile_id:, loop_id: id).all
54
54
  end
55
55
  end
56
56
  end
@@ -3,32 +3,32 @@ module DotloopApi
3
3
  class Profile
4
4
  # define nested classes first for dependency resolution
5
5
  class Loop
6
- class Activity; end
6
+ class Activity; end # rubocop:disable Lint/EmptyClass
7
7
 
8
8
  class Detail
9
- class ContractDates; end
10
- class ContractInfo; end
11
- class Financials; end
12
- class GeographicDescription; end
13
- class ListingInformation; end
14
- class OfferDates; end
15
- class Property; end
16
- class PropertyAddress; end
17
- class Referral; end
9
+ class ContractDates; end # rubocop:disable Lint/EmptyClass
10
+ class ContractInfo; end # rubocop:disable Lint/EmptyClass
11
+ class Financials; end # rubocop:disable Lint/EmptyClass
12
+ class GeographicDescription; end # rubocop:disable Lint/EmptyClass
13
+ class ListingInformation; end # rubocop:disable Lint/EmptyClass
14
+ class OfferDates; end # rubocop:disable Lint/EmptyClass
15
+ class Property; end # rubocop:disable Lint/EmptyClass
16
+ class PropertyAddress; end # rubocop:disable Lint/EmptyClass
17
+ class Referral; end # rubocop:disable Lint/EmptyClass
18
18
  end
19
19
 
20
20
  class Folder
21
- class Document; end
21
+ class Document; end # rubocop:disable Lint/EmptyClass
22
22
  end
23
23
 
24
24
  class Participant < ::DotloopApi::Models::Contact; end
25
25
 
26
26
  class TaskList
27
- class Task; end
27
+ class Task; end # rubocop:disable Lint/EmptyClass
28
28
  end
29
29
  end
30
30
 
31
- class LoopTemplate; end
31
+ class LoopTemplate; end # rubocop:disable Lint/EmptyClass
32
32
 
33
33
  PROFILE_TYPES = %w[ASSOCIATION COMPANY INDIVIDUAL NATIONAL_PARTNER OFFICE TEAM].freeze
34
34
  include Virtus.model
@@ -51,17 +51,17 @@ module DotloopApi
51
51
  end
52
52
 
53
53
  def loop(id)
54
- loop_endpoint.find(id: id)
54
+ loop_endpoint.find(id:)
55
55
  end
56
56
 
57
57
  def loop_templates
58
- DotloopApi::EndPoints::LoopTemplate.new(client: client, profile_id: id).all
58
+ DotloopApi::EndPoints::LoopTemplate.new(client:, profile_id: id).all
59
59
  end
60
60
 
61
61
  private
62
62
 
63
63
  def loop_endpoint
64
- DotloopApi::EndPoints::Loop.new(client: client, profile_id: id)
64
+ DotloopApi::EndPoints::Loop.new(client:, profile_id: id)
65
65
  end
66
66
  end
67
67
  end
@@ -1,3 +1,3 @@
1
1
  module DotloopApi
2
- VERSION = '3.0.0'.freeze
2
+ VERSION = '3.0.2'.freeze
3
3
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dotloop_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Loft47
@@ -34,7 +34,7 @@ cert_chain:
34
34
  UyzDcZlUIYsg0YEfJoAEA8+i0f7YdJoCNefHMv0cfBZ7fb1+QVd+CZMW0MjdOpMR
35
35
  BGRKAowqGARaXExDn/ww/1javLv4ss7RKZOw7Q==
36
36
  -----END CERTIFICATE-----
37
- date: 2023-07-24 00:00:00.000000000 Z
37
+ date: 2023-12-06 00:00:00.000000000 Z
38
38
  dependencies:
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: activesupport
@@ -56,14 +56,14 @@ dependencies:
56
56
  requirements:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
- version: '0.20'
59
+ version: '0.21'
60
60
  type: :runtime
61
61
  prerelease: false
62
62
  version_requirements: !ruby/object:Gem::Requirement
63
63
  requirements:
64
64
  - - "~>"
65
65
  - !ruby/object:Gem::Version
66
- version: '0.20'
66
+ version: '0.21'
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: plissken
69
69
  requirement: !ruby/object:Gem::Requirement
@@ -92,132 +92,6 @@ dependencies:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
94
  version: '1.0'
95
- - !ruby/object:Gem::Dependency
96
- name: bundler
97
- requirement: !ruby/object:Gem::Requirement
98
- requirements:
99
- - - "~>"
100
- - !ruby/object:Gem::Version
101
- version: '2'
102
- type: :development
103
- prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- requirements:
106
- - - "~>"
107
- - !ruby/object:Gem::Version
108
- version: '2'
109
- - !ruby/object:Gem::Dependency
110
- name: coveralls_reborn
111
- requirement: !ruby/object:Gem::Requirement
112
- requirements:
113
- - - "~>"
114
- - !ruby/object:Gem::Version
115
- version: 0.25.0
116
- type: :development
117
- prerelease: false
118
- version_requirements: !ruby/object:Gem::Requirement
119
- requirements:
120
- - - "~>"
121
- - !ruby/object:Gem::Version
122
- version: 0.25.0
123
- - !ruby/object:Gem::Dependency
124
- name: pry
125
- requirement: !ruby/object:Gem::Requirement
126
- requirements:
127
- - - "~>"
128
- - !ruby/object:Gem::Version
129
- version: '0.14'
130
- type: :development
131
- prerelease: false
132
- version_requirements: !ruby/object:Gem::Requirement
133
- requirements:
134
- - - "~>"
135
- - !ruby/object:Gem::Version
136
- version: '0.14'
137
- - !ruby/object:Gem::Dependency
138
- name: rake
139
- requirement: !ruby/object:Gem::Requirement
140
- requirements:
141
- - - "~>"
142
- - !ruby/object:Gem::Version
143
- version: '13'
144
- type: :development
145
- prerelease: false
146
- version_requirements: !ruby/object:Gem::Requirement
147
- requirements:
148
- - - "~>"
149
- - !ruby/object:Gem::Version
150
- version: '13'
151
- - !ruby/object:Gem::Dependency
152
- name: rspec
153
- requirement: !ruby/object:Gem::Requirement
154
- requirements:
155
- - - "~>"
156
- - !ruby/object:Gem::Version
157
- version: '3'
158
- type: :development
159
- prerelease: false
160
- version_requirements: !ruby/object:Gem::Requirement
161
- requirements:
162
- - - "~>"
163
- - !ruby/object:Gem::Version
164
- version: '3'
165
- - !ruby/object:Gem::Dependency
166
- name: rubocop
167
- requirement: !ruby/object:Gem::Requirement
168
- requirements:
169
- - - "~>"
170
- - !ruby/object:Gem::Version
171
- version: '1'
172
- type: :development
173
- prerelease: false
174
- version_requirements: !ruby/object:Gem::Requirement
175
- requirements:
176
- - - "~>"
177
- - !ruby/object:Gem::Version
178
- version: '1'
179
- - !ruby/object:Gem::Dependency
180
- name: simplecov
181
- requirement: !ruby/object:Gem::Requirement
182
- requirements:
183
- - - "~>"
184
- - !ruby/object:Gem::Version
185
- version: '0.21'
186
- type: :development
187
- prerelease: false
188
- version_requirements: !ruby/object:Gem::Requirement
189
- requirements:
190
- - - "~>"
191
- - !ruby/object:Gem::Version
192
- version: '0.21'
193
- - !ruby/object:Gem::Dependency
194
- name: travis
195
- requirement: !ruby/object:Gem::Requirement
196
- requirements:
197
- - - "~>"
198
- - !ruby/object:Gem::Version
199
- version: '1.8'
200
- type: :development
201
- prerelease: false
202
- version_requirements: !ruby/object:Gem::Requirement
203
- requirements:
204
- - - "~>"
205
- - !ruby/object:Gem::Version
206
- version: '1.8'
207
- - !ruby/object:Gem::Dependency
208
- name: webmock
209
- requirement: !ruby/object:Gem::Requirement
210
- requirements:
211
- - - "~>"
212
- - !ruby/object:Gem::Version
213
- version: '3'
214
- type: :development
215
- prerelease: false
216
- version_requirements: !ruby/object:Gem::Requirement
217
- requirements:
218
- - - "~>"
219
- - !ruby/object:Gem::Version
220
- version: '3'
221
95
  description: Ruby library for Dotloop API V2.
222
96
  email:
223
97
  - support@loft47.com
@@ -278,6 +152,7 @@ licenses:
278
152
  - MIT
279
153
  metadata:
280
154
  allowed_push_host: https://rubygems.org
155
+ rubygems_mfa_required: 'true'
281
156
  post_install_message:
282
157
  rdoc_options: []
283
158
  require_paths:
@@ -293,7 +168,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
293
168
  - !ruby/object:Gem::Version
294
169
  version: '0'
295
170
  requirements: []
296
- rubygems_version: 3.4.17
171
+ rubygems_version: 3.4.22
297
172
  signing_key:
298
173
  specification_version: 4
299
174
  summary: DotloopApi library
metadata.gz.sig CHANGED
Binary file