slack-ruby-block-kit 0.12.0 → 0.13.0

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: 7f687b2454f80feed6080ab0fd166e64cf49a00508d9b9982a661ecd86119d0b
4
- data.tar.gz: 2a96434b288cfd05db43a7d29dfc91d547bdca30f55a00d5a82837756a6c8fec
3
+ metadata.gz: 0f8259eb752347ee6abf3210ab4b0f0c44ee962d238e3034185735c4762a8063
4
+ data.tar.gz: 7649061472dff64eddb8704311ee17afbd0c29d07ac6d101982725fbf55fbd35
5
5
  SHA512:
6
- metadata.gz: 4af8e9ce974a3324d7df340fe21e85a5ec4018b67e9dd8744ea8b1d9537017ef3a21e02db60deb43e19270c7310e1a4ff27d742dba39067811a49381b5a08d77
7
- data.tar.gz: d66f7d4e796172ea73938b589f6e26f46e78ab106c1c94d6d323498c9f483df1e26a5d98af15da6b35ef51d2ea00ba9fea64e65344898530665a839e1af0259a
6
+ metadata.gz: d9ab666ea3cca8ca7ade809cb1fc3881e534d5a9ffb1651f2de2d1ddc30266e6d44ac1a89947b1cba62d35ba59e292479ec33e0098fe50d1b6d7a1d1e77a0184
7
+ data.tar.gz: 709140300213ec4afef7c43665e56dd9ccfe673118284d2cb5efbe5a03c87ee9d42fed94e6c8277cc49ffec74d5232108d1b0555c53dcc7e23cc77f6cc70413d
@@ -0,0 +1,15 @@
1
+ version = 1
2
+
3
+ test_patterns = ["spec/**/*_spec.rb"]
4
+
5
+ [[analyzers]]
6
+ name = "test-coverage"
7
+ enabled = true
8
+
9
+ [[analyzers]]
10
+ name = "ruby"
11
+ enabled = true
12
+
13
+ [[transformers]]
14
+ name = "rubocop"
15
+ enabled = true
@@ -6,6 +6,9 @@ on:
6
6
  pull_request:
7
7
  branches: [ master ]
8
8
 
9
+ env:
10
+ DEEPSOURCE_DSN: ${{ secrets.DEEPSOURCE_DSN }}
11
+
9
12
  jobs:
10
13
  build:
11
14
  runs-on: ubuntu-latest
@@ -13,7 +16,7 @@ jobs:
13
16
  strategy:
14
17
  fail-fast: false
15
18
  matrix:
16
- ruby: [ '2.6', '2.7' ]
19
+ ruby: [ '2.6', '2.7', '3.0' ]
17
20
  experimental: [ false ]
18
21
  name: Ruby ${{ matrix.ruby }}
19
22
  steps:
@@ -21,7 +24,10 @@ jobs:
21
24
  - uses: ruby/setup-ruby@v1
22
25
  with:
23
26
  ruby-version: ${{ matrix.ruby }}
27
+ - run: curl https://deepsource.io/cli | sh
24
28
  - run: gem install bundler:2.1.4
25
29
  - run: bundle install
26
30
  - run: bundle exec rubocop
27
31
  - run: bundle exec rspec --format progress
32
+ - run: ./bin/deepsource report --analyzer test-coverage --key ruby --value-file ./coverage/.resultset.json
33
+ if: (github.event_name == 'push') || (github.event.pull_request.head.repo.full_name == github.repository) # don't run on forks which don't have access to DEEPSOURCE_DSN
data/.gitignore CHANGED
@@ -8,6 +8,8 @@
8
8
  /spec/examples.txt
9
9
  /tmp/
10
10
 
11
+ Gemfile.lock
12
+
11
13
  # rspec failure tracking
12
14
  .rspec_status
13
15
  *.gem
@@ -1,4 +1,7 @@
1
- require: rubocop-rspec
1
+ require:
2
+ - rubocop-rake
3
+ - rubocop-rspec
4
+
2
5
  inherit_from: .rubocop_todo.yml
3
6
 
4
7
  AllCops:
@@ -25,6 +25,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
25
25
  - N/A
26
26
 
27
27
 
28
+ ---
29
+
30
+ ## [0.13.0] - 2020-12-29
31
+
32
+ ### Added
33
+ - Ruby3 Support
34
+ - `Slack::BlockKit::Element::Timepicker` (#72)
35
+ - Add `input` to `Slack::BlockKit::Blocks` and elements to `Slack::BlockKit::Layout::Input` (#73)
36
+
37
+ ### Changed
38
+ - Development dependencies now managed by bundler via Gemfile, rather than in gemspec
39
+
40
+
28
41
  ---
29
42
 
30
43
 
@@ -71,7 +84,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
71
84
  See [releases] for previous changes.
72
85
 
73
86
 
74
- [Unreleased]: https://github.com/CGA1123/slack-ruby-block-kit/compare/v0.12.0...HEAD
87
+ [Unreleased]: https://github.com/CGA1123/slack-ruby-block-kit/compare/v0.13.0...HEAD
88
+ [0.13.0]: https://github.com/CGA1123/slack-ruby-block-kit/compare/v0.12.0...v0.13.0
75
89
  [0.12.0]: https://github.com/CGA1123/slack-ruby-block-kit/compare/v0.11.0...v0.12.0
76
90
  [0.11.0]: https://github.com/CGA1123/slack-ruby-block-kit/compare/v0.10.0...v0.11.0
77
91
  [0.10.0]: https://github.com/CGA1123/slack-ruby-block-kit/compare/v0.9.0...v0.10.0
data/Gemfile CHANGED
@@ -4,5 +4,16 @@ source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
6
 
7
- gem 'codecov', require: false
8
- gem 'simplecov', require: false
7
+ gem 'dotenv', '~> 2'
8
+ gem 'faraday', '~> 1'
9
+ gem 'pry', '~> 0.13'
10
+ gem 'rake', '~> 13'
11
+ gem 'rspec', '~> 3'
12
+ gem 'rspec_junit_formatter', '~> 0.4'
13
+
14
+ gem 'rubocop', '~> 1', require: false
15
+ gem 'rubocop-rake', '~> 0.5', require: false
16
+ gem 'rubocop-rspec', '~> 2', require: false
17
+
18
+ gem 'codecov', '~> 0.2', require: false
19
+ gem 'simplecov', '~> 0.20', require: false if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('3')
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  [![Gem Version](https://badge.fury.io/rb/slack-ruby-block-kit.svg)](https://badge.fury.io/rb/slack-ruby-block-kit)
2
2
  [![codecov](https://codecov.io/gh/CGA1123/slack-ruby-block-kit/branch/master/graph/badge.svg)](https://codecov.io/gh/CGA1123/slack-ruby-block-kit)
3
+ [![DeepSource](https://deepsource.io/gh/CGA1123/slack-ruby-block-kit.svg/?label=active+issues&show_trend=true)](https://deepsource.io/gh/CGA1123/slack-ruby-block-kit/?ref=repository-badge)
4
+ [![DeepSource](https://deepsource.io/gh/CGA1123/slack-ruby-block-kit.svg/?label=resolved+issues&show_trend=true)](https://deepsource.io/gh/CGA1123/slack-ruby-block-kit/?ref=repository-badge)
3
5
 
4
6
  # Slack::BlockKit
5
7
 
@@ -3,7 +3,9 @@
3
3
  module Slack
4
4
  module BlockKit
5
5
  module Composition; end
6
+
6
7
  module Element; end
8
+
7
9
  module Layout; end
8
10
 
9
11
  Dir[File.join(__dir__, 'block_kit', 'composition', '*.rb')].sort.each { |file| require file }
@@ -57,6 +57,18 @@ module Slack
57
57
  append(block)
58
58
  end
59
59
 
60
+ def input(label:, hint: nil, block_id: nil)
61
+ block = Layout::Input.new(
62
+ label: label,
63
+ hint: hint,
64
+ block_id: block_id
65
+ )
66
+
67
+ yield(block) if block_given?
68
+
69
+ append(block)
70
+ end
71
+
60
72
  def append(block)
61
73
  @blocks << block
62
74
 
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Slack
4
+ module BlockKit
5
+ module Element
6
+ # An element which allows selection of a time of day.
7
+ #
8
+ # On desktop clients, this time picker will take the form of a dropdown
9
+ # list with free-text entry for precise choices. On mobile clients, the
10
+ # time picker will use native time picker UIs.
11
+ #
12
+ # https://api.slack.com/reference/block-kit/block-elements#timepicker
13
+ class Timepicker
14
+ include Composition::ConfirmationDialog::Confirmable
15
+
16
+ TYPE = 'timepicker'
17
+
18
+ def initialize(action_id:)
19
+ @placeholder, @initial_time = nil
20
+ @action_id = action_id
21
+
22
+ yield(self) if block_given?
23
+ end
24
+
25
+ def placeholder(text:, emoji: nil)
26
+ @placeholder = Composition::PlainText.new(text: text, emoji: emoji)
27
+
28
+ self
29
+ end
30
+
31
+ def initial_time(time_str)
32
+ @initial_time = time_str
33
+
34
+ self
35
+ end
36
+
37
+ def as_json(*)
38
+ {
39
+ type: TYPE,
40
+ action_id: @action_id,
41
+ placeholder: @placeholder&.as_json,
42
+ initial_time: @initial_time,
43
+ confirm: confirm&.as_json
44
+ }.compact
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -4,18 +4,20 @@ module Slack
4
4
  module BlockKit
5
5
  module Layout
6
6
  # A block that collects information from users - it can hold a plain-text
7
- # input element, a select menu element, a multi-select menu element, or a
8
- # datepicker.
7
+ # input element, a checkbox element, a radio button element,
8
+ # a select menu element, a multi-select menu element, or a datepicker.
9
9
  #
10
10
  # https://api.slack.com/reference/block-kit/blocks#input
11
+ # rubocop:disable Metrics/ClassLength
11
12
  class Input
13
+ # rubocop:enable Metrics/ClassLength
12
14
  TYPE = 'input'
13
15
 
14
16
  attr_accessor :label, :element, :block_id, :hint, :optional, :emoji
15
17
 
16
18
  def initialize(
17
19
  label:,
18
- element:,
20
+ element: nil,
19
21
  block_id: nil,
20
22
  hint: nil,
21
23
  optional: nil,
@@ -28,6 +30,199 @@ module Slack
28
30
  @element = element
29
31
  end
30
32
 
33
+ def conversation_select(placeholder:, action_id:, initial: nil, emoji: nil)
34
+ @element = Element::ConversationsSelect.new(
35
+ placeholder: placeholder,
36
+ action_id: action_id,
37
+ initial: initial,
38
+ emoji: emoji
39
+ )
40
+
41
+ yield(@element) if block_given?
42
+
43
+ self
44
+ end
45
+
46
+ def multi_conversations_select(placeholder:, action_id:, initial: nil, emoji: nil, max_selected_items: nil)
47
+ @element = Element::MultiConversationsSelect.new(
48
+ placeholder: placeholder,
49
+ action_id: action_id,
50
+ initial: initial,
51
+ emoji: emoji,
52
+ max_selected_items: max_selected_items
53
+ )
54
+
55
+ yield(@element) if block_given?
56
+
57
+ self
58
+ end
59
+
60
+ def channels_select(placeholder:, action_id:, initial: nil, emoji: nil)
61
+ @element = Element::ChannelsSelect.new(
62
+ placeholder: placeholder,
63
+ action_id: action_id,
64
+ initial: initial,
65
+ emoji: emoji
66
+ )
67
+
68
+ yield(@element) if block_given?
69
+
70
+ self
71
+ end
72
+
73
+ def checkboxes(action_id:)
74
+ @element = Element::Checkboxes.new(action_id: action_id)
75
+
76
+ yield(@element) if block_given?
77
+
78
+ self
79
+ end
80
+
81
+ def datepicker(action_id:, placeholder: nil, initial: nil, emoji: nil)
82
+ @element = Element::DatePicker.new(
83
+ action_id: action_id,
84
+ placeholder: placeholder,
85
+ initial: initial,
86
+ emoji: emoji
87
+ )
88
+
89
+ yield(@element) if block_given?
90
+
91
+ self
92
+ end
93
+
94
+ def multi_channels_select(placeholder:, action_id:, initial: nil, emoji: nil, max_selected_items: nil)
95
+ @element = Element::MultiChannelsSelect.new(
96
+ placeholder: placeholder,
97
+ action_id: action_id,
98
+ initial: initial,
99
+ emoji: emoji,
100
+ max_selected_items: max_selected_items
101
+ )
102
+
103
+ yield(@element) if block_given?
104
+
105
+ self
106
+ end
107
+
108
+ def static_select(placeholder:, action_id:, emoji: nil)
109
+ @element = Element::StaticSelect.new(
110
+ placeholder: placeholder,
111
+ action_id: action_id,
112
+ emoji: emoji
113
+ )
114
+
115
+ yield(@element) if block_given?
116
+
117
+ self
118
+ end
119
+
120
+ def multi_static_select(placeholder:, action_id:, emoji: nil, max_selected_items: nil)
121
+ @element = Element::MultiStaticSelect.new(
122
+ placeholder: placeholder,
123
+ action_id: action_id,
124
+ emoji: emoji,
125
+ max_selected_items: max_selected_items
126
+ )
127
+
128
+ yield(@element) if block_given?
129
+
130
+ self
131
+ end
132
+
133
+ def external_select(placeholder:, action_id:, initial: nil, min_query_length: nil, emoji: nil)
134
+ @element = Element::ExternalSelect.new(
135
+ placeholder: placeholder,
136
+ action_id: action_id,
137
+ initial: initial,
138
+ min_query_length: min_query_length,
139
+ emoji: emoji
140
+ )
141
+
142
+ yield(@element) if block_given?
143
+
144
+ self
145
+ end
146
+
147
+ def multi_external_select(
148
+ placeholder:,
149
+ action_id:,
150
+ initial: nil,
151
+ min_query_length: nil,
152
+ emoji: nil,
153
+ max_selected_items: nil
154
+ )
155
+ @element = Element::MultiExternalSelect.new(
156
+ placeholder: placeholder,
157
+ action_id: action_id,
158
+ initial: initial,
159
+ min_query_length: min_query_length,
160
+ emoji: emoji,
161
+ max_selected_items: max_selected_items
162
+ )
163
+
164
+ yield(@element) if block_given?
165
+
166
+ self
167
+ end
168
+
169
+ def plain_text_input(
170
+ action_id:,
171
+ placeholder: nil,
172
+ emoji: nil,
173
+ initial_value: nil,
174
+ multiline: nil,
175
+ min_length: nil,
176
+ max_length: nil
177
+ )
178
+ @element = Element::PlainTextInput.new(
179
+ action_id: action_id,
180
+ placeholder: placeholder,
181
+ emoji: emoji,
182
+ initial_value: initial_value,
183
+ multiline: multiline,
184
+ min_length: min_length,
185
+ max_length: max_length
186
+ )
187
+
188
+ self
189
+ end
190
+
191
+ def radio_buttons(action_id:)
192
+ @element = Element::RadioButtons.new(action_id: action_id)
193
+
194
+ yield(@element) if block_given?
195
+
196
+ self
197
+ end
198
+
199
+ def users_select(placeholder:, action_id:, initial: nil, emoji: nil)
200
+ @element = Element::UsersSelect.new(
201
+ placeholder: placeholder,
202
+ action_id: action_id,
203
+ initial: initial,
204
+ emoji: emoji
205
+ )
206
+
207
+ yield(@element) if block_given?
208
+
209
+ self
210
+ end
211
+
212
+ def multi_users_select(placeholder:, action_id:, initial: nil, emoji: nil, max_selected_items: nil)
213
+ @element = Element::MultiUsersSelect.new(
214
+ placeholder: placeholder,
215
+ action_id: action_id,
216
+ initial: initial,
217
+ emoji: emoji,
218
+ max_selected_items: max_selected_items
219
+ )
220
+
221
+ yield(@element) if block_given?
222
+
223
+ self
224
+ end
225
+
31
226
  def as_json(*)
32
227
  {
33
228
  type: TYPE,
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Slack
4
4
  module BlockKit
5
- VERSION = '0.12.0'
5
+ VERSION = '0.13.0'
6
6
  end
7
7
  end
@@ -20,14 +20,4 @@ Gem::Specification.new do |spec|
20
20
  end
21
21
  spec.require_paths = ['lib']
22
22
  spec.required_ruby_version = '>= 2.5'
23
-
24
- spec.add_development_dependency 'bundler'
25
- spec.add_development_dependency 'dotenv'
26
- spec.add_development_dependency 'faraday'
27
- spec.add_development_dependency 'pry'
28
- spec.add_development_dependency 'rake'
29
- spec.add_development_dependency 'rspec'
30
- spec.add_development_dependency 'rspec_junit_formatter'
31
- spec.add_development_dependency 'rubocop'
32
- spec.add_development_dependency 'rubocop-rspec'
33
23
  end
metadata CHANGED
@@ -1,141 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: slack-ruby-block-kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christian Gregg
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-09 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: dotenv
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: faraday
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: pry
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rspec
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rspec_junit_formatter
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: rubocop
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: rubocop-rspec
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
11
+ date: 2020-12-29 00:00:00.000000000 Z
12
+ dependencies: []
139
13
  description:
140
14
  email:
141
15
  - c_arlt@hotmail.com
@@ -143,6 +17,7 @@ executables: []
143
17
  extensions: []
144
18
  extra_rdoc_files: []
145
19
  files:
20
+ - ".deepsource.toml"
146
21
  - ".github/dependabot.yml"
147
22
  - ".github/workflows/ci.yml"
148
23
  - ".gitignore"
@@ -151,7 +26,6 @@ files:
151
26
  - ".rubocop_todo.yml"
152
27
  - CHANGELOG.md
153
28
  - Gemfile
154
- - Gemfile.lock
155
29
  - LICENSE.txt
156
30
  - README.md
157
31
  - Rakefile
@@ -181,6 +55,7 @@ files:
181
55
  - lib/slack/block_kit/element/plain_text_input.rb
182
56
  - lib/slack/block_kit/element/radio_buttons.rb
183
57
  - lib/slack/block_kit/element/static_select.rb
58
+ - lib/slack/block_kit/element/timepicker.rb
184
59
  - lib/slack/block_kit/element/users_select.rb
185
60
  - lib/slack/block_kit/layout/actions.rb
186
61
  - lib/slack/block_kit/layout/context.rb
@@ -214,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
214
89
  - !ruby/object:Gem::Version
215
90
  version: '0'
216
91
  requirements: []
217
- rubygems_version: 3.1.2
92
+ rubygems_version: 3.2.3
218
93
  signing_key:
219
94
  specification_version: 4
220
95
  summary: A ruby wrapper for Slack's Block Kit
@@ -1,85 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- slack-ruby-block-kit (0.12.0)
5
-
6
- GEM
7
- remote: https://rubygems.org/
8
- specs:
9
- ast (2.4.1)
10
- codecov (0.2.11)
11
- json
12
- simplecov
13
- coderay (1.1.2)
14
- diff-lcs (1.3)
15
- docile (1.3.2)
16
- dotenv (2.7.6)
17
- faraday (1.0.1)
18
- multipart-post (>= 1.2, < 3)
19
- json (2.3.1)
20
- method_source (1.0.0)
21
- multipart-post (2.1.1)
22
- parallel (1.19.2)
23
- parser (2.7.2.0)
24
- ast (~> 2.4.1)
25
- pry (0.13.1)
26
- coderay (~> 1.1)
27
- method_source (~> 1.0)
28
- rainbow (3.0.0)
29
- rake (13.0.1)
30
- regexp_parser (1.8.1)
31
- rexml (3.2.4)
32
- rspec (3.9.0)
33
- rspec-core (~> 3.9.0)
34
- rspec-expectations (~> 3.9.0)
35
- rspec-mocks (~> 3.9.0)
36
- rspec-core (3.9.2)
37
- rspec-support (~> 3.9.3)
38
- rspec-expectations (3.9.2)
39
- diff-lcs (>= 1.2.0, < 2.0)
40
- rspec-support (~> 3.9.0)
41
- rspec-mocks (3.9.1)
42
- diff-lcs (>= 1.2.0, < 2.0)
43
- rspec-support (~> 3.9.0)
44
- rspec-support (3.9.3)
45
- rspec_junit_formatter (0.4.1)
46
- rspec-core (>= 2, < 4, != 2.12.0)
47
- rubocop (0.93.0)
48
- parallel (~> 1.10)
49
- parser (>= 2.7.1.5)
50
- rainbow (>= 2.2.2, < 4.0)
51
- regexp_parser (>= 1.8)
52
- rexml
53
- rubocop-ast (>= 0.6.0)
54
- ruby-progressbar (~> 1.7)
55
- unicode-display_width (>= 1.4.0, < 2.0)
56
- rubocop-ast (0.7.1)
57
- parser (>= 2.7.1.5)
58
- rubocop-rspec (1.43.2)
59
- rubocop (~> 0.87)
60
- ruby-progressbar (1.10.1)
61
- simplecov (0.19.0)
62
- docile (~> 1.1)
63
- simplecov-html (~> 0.11)
64
- simplecov-html (0.12.2)
65
- unicode-display_width (1.7.0)
66
-
67
- PLATFORMS
68
- ruby
69
-
70
- DEPENDENCIES
71
- bundler
72
- codecov
73
- dotenv
74
- faraday
75
- pry
76
- rake
77
- rspec
78
- rspec_junit_formatter
79
- rubocop
80
- rubocop-rspec
81
- simplecov
82
- slack-ruby-block-kit!
83
-
84
- BUNDLED WITH
85
- 2.1.4