fountain 0.0.9 → 0.0.13

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
- SHA1:
3
- metadata.gz: bf198332a6ca56e05d48ce30225fdf951b026e34
4
- data.tar.gz: 629943449a033d8add4f2b2fc96391d6baa4c796
2
+ SHA256:
3
+ metadata.gz: 5d78d33209aa2c3222155ea3643333a0df696466b1589d503adcaa28ded7aeea
4
+ data.tar.gz: 4a6ff22d217ee2cae43e6093fa218c450ea673924a71ffcec4bb2b9bd73ebc2b
5
5
  SHA512:
6
- metadata.gz: 1a50953c3662441f109eb03a3041beeb690434a1e2ea855ee5c7314a63c2858d0f1003ac7b31815825b5b9c136daadc6ab06bfb738f275256dccfab70df525cc
7
- data.tar.gz: 7758d4a5042ac0c043e99fef643975ce57b5c4db2b26fbabdab5e5ccd7ace15b1375ddd0517a584553644d4c14ffd9969efced6fa57261777731c4d8c5999336
6
+ metadata.gz: 957fe69e2f9b464fe77bf245f4778e931d071febb8178e476de852c0beb606d2adf49aac0a7c2d1b6c8b926125fa3873f0d66f7119033994137437be0c366fee
7
+ data.tar.gz: e227563179603e1f2e571f22369616bdd3915e58cb8362f195101e53c63325002933d1cb3419eedd12cc476c1d449f639d9b8f235862509182754c5249c0e683
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  Gemfile.lock
2
2
  *.gem
3
+ coverage/
data/.rubocop.yml CHANGED
@@ -1,11 +1,25 @@
1
+ require:
2
+ - rubocop-rake
3
+ - rubocop-rspec
4
+
5
+ AllCops:
6
+ NewCops: enable
7
+ TargetRubyVersion: 2.5
8
+
9
+ Layout/LineLength:
10
+ Max: 120
11
+
1
12
  Metrics/BlockLength:
2
13
  Exclude:
3
14
  - "**/*_spec.rb"
4
15
 
5
- Metrics/LineLength:
6
- Max: 120
7
-
8
16
  Metrics/MethodLength:
9
17
  Max: 15
10
18
  Exclude:
11
19
  - "**/*_spec.rb"
20
+
21
+ RSpec/ExampleLength:
22
+ Max: 15
23
+
24
+ RSpec/MultipleExpectations:
25
+ Max: 5
data/.travis.yml CHANGED
@@ -5,11 +5,10 @@ env:
5
5
  language: ruby
6
6
 
7
7
  rvm:
8
- - 2.1
9
- - 2.2
10
- - 2.3
11
- - 2.4
12
8
  - 2.5
9
+ - 2.6
10
+ - 2.7
11
+ - 3.0
13
12
 
14
13
  before_install:
15
14
  - gem update bundler
@@ -24,7 +23,7 @@ before_script:
24
23
  - ./cc-test-reporter before-build
25
24
 
26
25
  script:
27
- - rubocop
26
+ - bundle exec rubocop
28
27
  - bundle exec rake
29
28
 
30
29
  after_script:
data/CHANGELOG.md ADDED
@@ -0,0 +1,57 @@
1
+ # Changelog
2
+
3
+ ## Unreleased
4
+ - None
5
+
6
+ ## [0.0.12](releases/tag/v0.0.12) - 2020-03-01
7
+ ### Fixed
8
+ - Address CVE-2020-8130 - `rake` OS command injection vulnerability
9
+
10
+ ## [0.0.11](releases/tag/v0.0.11) - 2018-06-02
11
+ ### Fixed
12
+ - Update applicants and notes APIs to check correct return status for create actions
13
+
14
+ ## [0.0.10](releases/tag/v0.0.10) - 2018-03-24
15
+ ### Added
16
+ - Funnel management API support
17
+
18
+ ## [0.0.9](releases/tag/v0.0.9) - 2018-03-24
19
+ ### Added
20
+ - Session/slot management API support
21
+
22
+ ## [0.0.8](releases/tag/v0.0.8) - 2018-03-24
23
+ ### Added
24
+ - Note management API support
25
+ ### Fixed
26
+ - Replace deprecated URI.encode with CGI.escape
27
+
28
+ ## [0.0.7](releases/tag/v0.0.7) - 2018-03-24
29
+ ### Added
30
+ - Label management API support
31
+
32
+ ## [0.0.6](releases/tag/v0.0.6) - 2018-03-22
33
+ ### Added
34
+ - Create applicant support
35
+ - Delete applicant support
36
+ - Get applicant support
37
+ - get_secure_documents applicant support
38
+ - Secure document type
39
+ - Advance applicant support
40
+ - Interview sessions for applicant support
41
+ - Transition history for applicant support
42
+
43
+ ## [0.0.5](releases/tag/v0.0.5) - 2018-03-20
44
+ ### Fixed
45
+ - Applicants inspect method
46
+
47
+ ## [0.0.4](releases/tag/v0.0.4) - 2018-03-20
48
+ ### Added
49
+ - Applicants inspect method
50
+
51
+ ## [0.0.3](releases/tag/v0.0.3) - 2018-03-20
52
+ ### Added
53
+ - Applicants wrapper to contain pagination cursors
54
+
55
+ ## [0.0.2](releases/tag/v0.0.2) - 2018-03-19
56
+ ### Added
57
+ - Support for applicant list and update
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in fountain.gemspec
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/gem_tasks'
2
4
  require 'rspec/core/rake_task'
3
5
 
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'bundler/setup'
4
5
  require 'fountain'
data/fountain.gemspec CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  lib = File.expand_path('lib', __dir__)
2
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
5
 
@@ -13,15 +15,17 @@ Gem::Specification.new do |spec|
13
15
  spec.description = 'Fountain REST API v2 wrapper for Ruby'
14
16
  spec.homepage = 'https://github.com/Studiosity/fountain-ruby'
15
17
  spec.license = 'MIT'
18
+ spec.required_ruby_version = ['>= 2.5.0', '< 3.1.0']
16
19
 
17
20
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(spec|docs)/}) }
18
21
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
22
  spec.require_paths = ['lib']
20
23
 
21
- spec.add_development_dependency 'bundler', '~> 1.11'
22
- spec.add_development_dependency 'rake', '~> 10.0'
24
+ spec.add_development_dependency 'rake', '~> 12.3', '>= 12.3.3'
23
25
  spec.add_development_dependency 'rspec', '~> 3.0'
24
- spec.add_development_dependency 'rubocop', '~> 0.53'
26
+ spec.add_development_dependency 'rubocop', '~> 1.21'
27
+ spec.add_development_dependency 'rubocop-rake', '~> 0.6'
28
+ spec.add_development_dependency 'rubocop-rspec', '~> 2.5'
25
29
  spec.add_development_dependency 'simplecov', '~> 0.16'
26
30
  spec.add_development_dependency 'webmock', '~> 2.3'
27
31
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  module Api
3
5
  #
@@ -48,6 +50,7 @@ module Fountain
48
50
  response = request_json(
49
51
  '/v2/applicants',
50
52
  method: :post,
53
+ expected_response: [Net::HTTPCreated, Net::HTTPOK],
51
54
  body: {
52
55
  name: name, email: email, phone_number: phone_number
53
56
  }.merge(filtered_params)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  module Api
3
5
  #
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Fountain
4
+ module Api
5
+ #
6
+ # Fountain Funnel Management API
7
+ #
8
+ class Funnels
9
+ extend RequestHelper
10
+
11
+ #
12
+ # List all Funnels
13
+ # @param [Hash] list_options A hash of options when listing funnels
14
+ # @return [Fountain::Funnels]
15
+ def self.list(list_options = {})
16
+ page_query = list_options[:page] ? "?page=#{list_options[:page]}" : ''
17
+ response = request_json("/v2/funnels#{page_query}")
18
+ Fountain::Funnels.new response
19
+ end
20
+
21
+ #
22
+ # Update Funnel
23
+ # @param [String] funnel_id ID of the Fountain funnel
24
+ # @param [Hash] update_options A hash of options when updating a funnel
25
+ # custom_id
26
+ # @return [Fountain::Funnel]
27
+ def self.update(funnel_id, update_options = {})
28
+ response = request_json(
29
+ "/v2/funnels/#{funnel_id}",
30
+ method: :put,
31
+ body: Util.slice_hash(update_options, :custom_id)
32
+ )
33
+ Fountain::Funnel.new response
34
+ end
35
+
36
+ #
37
+ # List all Funnel stages
38
+ # @param [String] funnel_id ID of the Fountain funnel
39
+ # @return [[Fountain::Stage]]
40
+ def self.list_stages(funnel_id)
41
+ response = request_json("/v2/funnels/#{funnel_id}/stages")
42
+ response['stages'].map { |hash| Fountain::Stage.new hash }
43
+ end
44
+ end
45
+ end
46
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'date'
2
4
  require 'cgi'
3
5
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  module Api
3
5
  #
@@ -24,6 +26,7 @@ module Fountain
24
26
  response = request_json(
25
27
  "/v2/applicants/#{applicant_id}/notes",
26
28
  method: :post,
29
+ expected_response: [Net::HTTPCreated, Net::HTTPOK],
27
30
  body: { content: content }
28
31
  )
29
32
  Fountain::Note.new response
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'uri'
2
4
  require 'openssl'
3
5
  require 'net/http'
@@ -38,7 +40,7 @@ module Fountain
38
40
  def check_response(response, expected_response = nil)
39
41
  expected_response ||= Net::HTTPOK
40
42
  case response
41
- when expected_response then nil
43
+ when *[expected_response].flatten then nil
42
44
  when Net::HTTPUnauthorized then raise Fountain::AuthenticationError
43
45
  when Net::HTTPNotFound then raise Fountain::NotFoundError
44
46
  else raise HTTPError, "Invalid http response code: #{response.code}"
@@ -93,7 +95,7 @@ module Fountain
93
95
  end
94
96
 
95
97
  def create_get_request(path, headers, body)
96
- path += '?' + body.map { |k, v| "#{k}=#{v}" }.join('&') if body
98
+ path += "?#{body.map { |k, v| "#{k}=#{v}" }.join('&')}" if body
97
99
  Net::HTTP::Get.new(path, headers)
98
100
  end
99
101
 
@@ -101,6 +103,7 @@ module Fountain
101
103
  headers = options[:headers]
102
104
  headers ||= {}
103
105
  raise Fountain::MissingApiKeyError if Fountain.api_token.nil?
106
+
104
107
  headers['X-ACCESS-TOKEN'] = Fountain.api_token
105
108
  headers
106
109
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Applicant
@@ -56,12 +58,14 @@ module Fountain
56
58
  # Background checks
57
59
  def background_checks
58
60
  return [] unless raw_data['background_checks'].is_a? Array
61
+
59
62
  raw_data['background_checks'].map { |check| BackgroundCheck.new check }
60
63
  end
61
64
 
62
65
  # Document signatures
63
66
  def document_signatures
64
67
  return [] unless raw_data['document_signatures'].is_a? Array
68
+
65
69
  raw_data['document_signatures'].map { |signature| DocumentSignature.new signature }
66
70
  end
67
71
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Applicant collection
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Background Check
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #
2
4
  # Fountain configuration
3
5
  #
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Document Signature
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Fountain
4
+ #
5
+ # Fountain Field
6
+ #
7
+ class Field
8
+ # Raw field data
9
+ attr_reader :raw_data
10
+
11
+ #
12
+ # @param [Hash] data Raw field data
13
+ #
14
+ def initialize(data)
15
+ @raw_data = Util.stringify_hash_keys data
16
+ end
17
+
18
+ # Question
19
+ def question
20
+ raw_data['question']
21
+ end
22
+
23
+ # Type
24
+ def type
25
+ raw_data['type']
26
+ end
27
+
28
+ # Key
29
+ def key
30
+ raw_data['key']
31
+ end
32
+
33
+ def inspect
34
+ format(
35
+ '#<%<class_name>s:0x%<object_id>p @type="%<type>s" @question="%<title>s">',
36
+ class_name: self.class.name,
37
+ object_id: object_id,
38
+ type: type,
39
+ question: question
40
+ )
41
+ end
42
+ end
43
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Funnel
@@ -28,6 +30,57 @@ module Fountain
28
30
  raw_data['custom_id']
29
31
  end
30
32
 
33
+ # Address
34
+ def address
35
+ raw_data['address']
36
+ end
37
+
38
+ # Time zone
39
+ def time_zone
40
+ raw_data['time_zone']
41
+ end
42
+
43
+ # Description
44
+ def description
45
+ raw_data['description']
46
+ end
47
+
48
+ # Requirements
49
+ def requirements
50
+ raw_data['requirements']
51
+ end
52
+
53
+ # Fields
54
+ def fields
55
+ return [] unless raw_data['fields'].is_a? Array
56
+
57
+ raw_data['fields'].map { |hash| Field.new hash }
58
+ end
59
+
60
+ # Stages
61
+ def stages
62
+ return [] unless raw_data['stages'].is_a? Array
63
+
64
+ raw_data['stages'].map { |hash| Stage.new hash }
65
+ end
66
+
67
+ # Private
68
+ def private?
69
+ raw_data['is_private']
70
+ end
71
+
72
+ # Active
73
+ def active?
74
+ raw_data['active']
75
+ end
76
+
77
+ # Location
78
+ def location
79
+ return unless raw_data['location'].is_a? Hash
80
+
81
+ Location.new raw_data['location']
82
+ end
83
+
31
84
  def inspect
32
85
  format(
33
86
  '#<%<class_name>s:0x%<object_id>p @id="%<id>s" @title="%<title>s">',
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Fountain
4
+ #
5
+ # Fountain Funnel collection
6
+ #
7
+ class Funnels
8
+ extend Forwardable
9
+
10
+ # Collection current page
11
+ attr_reader :current_page
12
+
13
+ # Collection last page
14
+ attr_reader :last_page
15
+
16
+ # Funnel collection
17
+ attr_reader :funnels
18
+
19
+ def_delegators :funnels, :each, :map, :count, :size, :[]
20
+
21
+ #
22
+ # @param [Hash] data Raw funnel data
23
+ #
24
+ def initialize(data)
25
+ raw_data = Util.stringify_hash_keys data
26
+ pagination = raw_data['pagination']
27
+ if pagination.is_a? Hash
28
+ @current_page = pagination['current']
29
+ @last_page = pagination['last']
30
+ end
31
+ @funnels = raw_data['funnels'].map { |attr| Funnel.new attr }
32
+ end
33
+
34
+ def inspect
35
+ format(
36
+ '#<%<class_name>s:0x%<object_id>p @count="%<count>s">',
37
+ class_name: self.class.name,
38
+ object_id: object_id,
39
+ count: count
40
+ )
41
+ end
42
+ end
43
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
- VERSION = '0.0.9'.freeze
4
+ VERSION = '0.0.13'
3
5
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Label
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Fountain
4
+ #
5
+ # Fountain Location
6
+ #
7
+ class Location
8
+ # Raw location data
9
+ attr_reader :raw_data
10
+
11
+ #
12
+ # @param [Hash] data Raw location data
13
+ #
14
+ def initialize(data)
15
+ @raw_data = Util.stringify_hash_keys data
16
+ end
17
+
18
+ # Location ID
19
+ def id
20
+ raw_data['id']
21
+ end
22
+
23
+ # Name
24
+ def name
25
+ raw_data['name']
26
+ end
27
+ end
28
+ end
data/lib/fountain/note.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Note
@@ -36,6 +38,7 @@ module Fountain
36
38
  # User
37
39
  def user
38
40
  return unless raw_data['user'].is_a? Hash
41
+
39
42
  User.new raw_data['user']
40
43
  end
41
44
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Secure Document
data/lib/fountain/slot.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Slot
@@ -44,8 +46,8 @@ module Fountain
44
46
  end
45
47
 
46
48
  # Showed up
47
- def showed_up
48
- raw_data['showed_up'] == 'true'
49
+ def showed_up?
50
+ raw_data['showed_up'].to_s == 'true'
49
51
  end
50
52
 
51
53
  def inspect
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Slot collection
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Stage
@@ -23,6 +25,11 @@ module Fountain
23
25
  raw_data['title']
24
26
  end
25
27
 
28
+ # Type
29
+ def type
30
+ raw_data['type']
31
+ end
32
+
26
33
  def inspect
27
34
  format(
28
35
  '#<%<class_name>s:0x%<object_id>p @id="%<id>s" @title="%<title>s">',
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain Transition
data/lib/fountain/user.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain User
data/lib/fountain/util.rb CHANGED
@@ -1,8 +1,12 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Fountain
2
4
  #
3
5
  # Fountain generic utility functions
4
6
  #
5
7
  module Util
8
+ module_function
9
+
6
10
  #
7
11
  # Stringify symbolized hash keys
8
12
  # @param [Hash] hash A string/symbol keyed hash
@@ -20,7 +24,6 @@ module Fountain
20
24
  end
21
25
  new_hash
22
26
  end
23
- module_function :stringify_hash_keys
24
27
 
25
28
  #
26
29
  # Slice keys from hash
@@ -37,6 +40,5 @@ module Fountain
37
40
  end
38
41
  new_hash
39
42
  end
40
- module_function :slice_hash
41
43
  end
42
44
  end
data/lib/fountain.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'fountain/gem_version'
2
4
 
3
5
  require 'json'
@@ -7,12 +9,19 @@ require 'fountain/util'
7
9
 
8
10
  module Fountain
9
11
  class Error < StandardError; end
12
+
10
13
  class HTTPError < Error; end
14
+
11
15
  class NotFoundError < HTTPError; end
16
+
12
17
  class AuthenticationError < HTTPError; end
18
+
13
19
  class InvalidMethodError < HTTPError; end
20
+
14
21
  class JsonParseError < Error; end
22
+
15
23
  class MissingApiKeyError < Error; end
24
+
16
25
  class StatusError < Error; end
17
26
  end
18
27
 
@@ -20,8 +29,11 @@ require 'fountain/applicant'
20
29
  require 'fountain/applicants'
21
30
  require 'fountain/background_check'
22
31
  require 'fountain/document_signature'
32
+ require 'fountain/field'
23
33
  require 'fountain/funnel'
34
+ require 'fountain/funnels'
24
35
  require 'fountain/label'
36
+ require 'fountain/location'
25
37
  require 'fountain/note'
26
38
  require 'fountain/secure_document'
27
39
  require 'fountain/slot'
@@ -33,5 +45,6 @@ require 'fountain/user'
33
45
  require 'fountain/api/request_helper'
34
46
  require 'fountain/api/applicants'
35
47
  require 'fountain/api/available_slots'
48
+ require 'fountain/api/funnels'
36
49
  require 'fountain/api/labels'
37
50
  require 'fountain/api/notes'
metadata CHANGED
@@ -1,71 +1,91 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fountain
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - abrom
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-03-24 00:00:00.000000000 Z
11
+ date: 2021-09-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: rake
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.11'
19
+ version: '12.3'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 12.3.3
20
23
  type: :development
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: '1.11'
29
+ version: '12.3'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 12.3.3
27
33
  - !ruby/object:Gem::Dependency
28
- name: rake
34
+ name: rspec
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '10.0'
39
+ version: '3.0'
34
40
  type: :development
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '10.0'
46
+ version: '3.0'
41
47
  - !ruby/object:Gem::Dependency
42
- name: rspec
48
+ name: rubocop
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
51
  - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: '3.0'
53
+ version: '1.21'
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
51
57
  requirements:
52
58
  - - "~>"
53
59
  - !ruby/object:Gem::Version
54
- version: '3.0'
60
+ version: '1.21'
55
61
  - !ruby/object:Gem::Dependency
56
- name: rubocop
62
+ name: rubocop-rake
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
65
  - - "~>"
60
66
  - !ruby/object:Gem::Version
61
- version: '0.53'
67
+ version: '0.6'
62
68
  type: :development
63
69
  prerelease: false
64
70
  version_requirements: !ruby/object:Gem::Requirement
65
71
  requirements:
66
72
  - - "~>"
67
73
  - !ruby/object:Gem::Version
68
- version: '0.53'
74
+ version: '0.6'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rubocop-rspec
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '2.5'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '2.5'
69
89
  - !ruby/object:Gem::Dependency
70
90
  name: simplecov
71
91
  requirement: !ruby/object:Gem::Requirement
@@ -105,6 +125,7 @@ files:
105
125
  - ".gitignore"
106
126
  - ".rubocop.yml"
107
127
  - ".travis.yml"
128
+ - CHANGELOG.md
108
129
  - Gemfile
109
130
  - LICENSE
110
131
  - README.md
@@ -114,6 +135,7 @@ files:
114
135
  - lib/fountain.rb
115
136
  - lib/fountain/api/applicants.rb
116
137
  - lib/fountain/api/available_slots.rb
138
+ - lib/fountain/api/funnels.rb
117
139
  - lib/fountain/api/labels.rb
118
140
  - lib/fountain/api/notes.rb
119
141
  - lib/fountain/api/request_helper.rb
@@ -122,9 +144,12 @@ files:
122
144
  - lib/fountain/background_check.rb
123
145
  - lib/fountain/configuration.rb
124
146
  - lib/fountain/document_signature.rb
147
+ - lib/fountain/field.rb
125
148
  - lib/fountain/funnel.rb
149
+ - lib/fountain/funnels.rb
126
150
  - lib/fountain/gem_version.rb
127
151
  - lib/fountain/label.rb
152
+ - lib/fountain/location.rb
128
153
  - lib/fountain/note.rb
129
154
  - lib/fountain/secure_document.rb
130
155
  - lib/fountain/slot.rb
@@ -145,15 +170,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
145
170
  requirements:
146
171
  - - ">="
147
172
  - !ruby/object:Gem::Version
148
- version: '0'
173
+ version: 2.5.0
174
+ - - "<"
175
+ - !ruby/object:Gem::Version
176
+ version: 3.1.0
149
177
  required_rubygems_version: !ruby/object:Gem::Requirement
150
178
  requirements:
151
179
  - - ">="
152
180
  - !ruby/object:Gem::Version
153
181
  version: '0'
154
182
  requirements: []
155
- rubyforge_project:
156
- rubygems_version: 2.6.14
183
+ rubygems_version: 3.0.6
157
184
  signing_key:
158
185
  specification_version: 4
159
186
  summary: Fountain REST API v2 wrapper for Ruby