dotloop_api 3.0.0 → 3.0.2

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