onboardable 1.3.3 → 1.5.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: c64ca22b6b557818ddbd19779baf17ebf1c9890d79caf6790525774098e10951
4
- data.tar.gz: 1580320037e0ffb67697b22a29a3c3c477752c2fde5ecbc71ba8425b87ecb046
3
+ metadata.gz: e9f0c447b6d3593da8e840bc4964a61fb7078df687a13e0d87bf846d51c17838
4
+ data.tar.gz: 5b0861f3ff6b98ed383d2497e4bca47bee0893ab98124e3bfd680c3b1e119dac
5
5
  SHA512:
6
- metadata.gz: c048601b0ca78f84d44602df3863f132d71489a81df86aec4f4b4e220aa4f2ffa58e8348b8f4007c1280dee098a50f7a48f5cd5b7f6508f1e0d03ca457c816bc
7
- data.tar.gz: 97efd280235a2965383df3a52fe7378b1e32024a37f413cac3140a17c18823b90e6318cce0e0af5da44541884a803da56cb7d43919e4715f07ae71da8586def3
6
+ metadata.gz: 15c8e34a8d136da36ec0a8d968f6140123c5d05cece765e60ed1f95267416bf10373e4ea79159b84095e78485a691f3906a4897c15cb4b85ce377e3337c87b51
7
+ data.tar.gz: dfdb3df40595dd49dc2860494bb9da050c8124f8e936f17ddd8c52a00626ac7576270d1cb4f793591f0d79277513079975d370a64c44504f5eda8151ed931944
data/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [1.5.0] - 2025-08-01
6
+
7
+ - Drop support for Ruby 3.1.
8
+ - Update development dependencies to their latest versions.
9
+
10
+ ## [1.4.0] - 2025-04-01
11
+
12
+ - Add support for Ruby 3.4.
13
+ - Drop support for Ruby 3.0.
14
+
5
15
  ## [1.3.3] - 2024-08-16
6
16
 
7
17
  - Updated rbs files to improve type-checking.
data/Gemfile.lock CHANGED
@@ -1,71 +1,76 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- onboardable (1.3.3)
4
+ onboardable (1.5.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- ast (2.4.2)
10
- diff-lcs (1.5.1)
9
+ ast (2.4.3)
10
+ diff-lcs (1.6.2)
11
11
  docile (1.4.1)
12
- json (2.7.2)
13
- language_server-protocol (3.17.0.3)
14
- parallel (1.26.2)
15
- parser (3.3.4.2)
12
+ json (2.13.2)
13
+ language_server-protocol (3.17.0.5)
14
+ lint_roller (1.1.0)
15
+ parallel (1.27.0)
16
+ parser (3.3.9.0)
16
17
  ast (~> 2.4.1)
17
18
  racc
19
+ prism (1.4.0)
18
20
  racc (1.8.1)
19
21
  rainbow (3.1.1)
20
- rake (13.2.1)
21
- regexp_parser (2.9.2)
22
- rexml (3.3.5)
23
- strscan
24
- rspec (3.13.0)
22
+ rake (13.3.0)
23
+ regexp_parser (2.10.0)
24
+ rspec (3.13.1)
25
25
  rspec-core (~> 3.13.0)
26
26
  rspec-expectations (~> 3.13.0)
27
27
  rspec-mocks (~> 3.13.0)
28
- rspec-core (3.13.0)
28
+ rspec-core (3.13.4)
29
29
  rspec-support (~> 3.13.0)
30
- rspec-expectations (3.13.1)
30
+ rspec-expectations (3.13.5)
31
31
  diff-lcs (>= 1.2.0, < 2.0)
32
32
  rspec-support (~> 3.13.0)
33
- rspec-mocks (3.13.1)
33
+ rspec-mocks (3.13.5)
34
34
  diff-lcs (>= 1.2.0, < 2.0)
35
35
  rspec-support (~> 3.13.0)
36
- rspec-support (3.13.1)
37
- rubocop (1.65.1)
36
+ rspec-support (3.13.4)
37
+ rubocop (1.79.1)
38
38
  json (~> 2.3)
39
- language_server-protocol (>= 3.17.0)
39
+ language_server-protocol (~> 3.17.0.2)
40
+ lint_roller (~> 1.1.0)
40
41
  parallel (~> 1.10)
41
42
  parser (>= 3.3.0.2)
42
43
  rainbow (>= 2.2.2, < 4.0)
43
- regexp_parser (>= 2.4, < 3.0)
44
- rexml (>= 3.2.5, < 4.0)
45
- rubocop-ast (>= 1.31.1, < 2.0)
44
+ regexp_parser (>= 2.9.3, < 3.0)
45
+ rubocop-ast (>= 1.46.0, < 2.0)
46
46
  ruby-progressbar (~> 1.7)
47
- unicode-display_width (>= 2.4.0, < 3.0)
48
- rubocop-ast (1.32.0)
49
- parser (>= 3.3.1.0)
50
- rubocop-performance (1.21.1)
51
- rubocop (>= 1.48.1, < 2.0)
52
- rubocop-ast (>= 1.31.1, < 2.0)
53
- rubocop-rake (0.6.0)
54
- rubocop (~> 1.0)
55
- rubocop-rspec (3.0.4)
56
- rubocop (~> 1.61)
47
+ unicode-display_width (>= 2.4.0, < 4.0)
48
+ rubocop-ast (1.46.0)
49
+ parser (>= 3.3.7.2)
50
+ prism (~> 1.4)
51
+ rubocop-performance (1.25.0)
52
+ lint_roller (~> 1.1)
53
+ rubocop (>= 1.75.0, < 2.0)
54
+ rubocop-ast (>= 1.38.0, < 2.0)
55
+ rubocop-rake (0.7.1)
56
+ lint_roller (~> 1.1)
57
+ rubocop (>= 1.72.1)
58
+ rubocop-rspec (3.6.0)
59
+ lint_roller (~> 1.1)
60
+ rubocop (~> 1.72, >= 1.72.1)
57
61
  ruby-progressbar (1.13.0)
58
62
  simplecov (0.22.0)
59
63
  docile (~> 1.1)
60
64
  simplecov-html (~> 0.11)
61
65
  simplecov_json_formatter (~> 0.1)
62
- simplecov-html (0.12.3)
66
+ simplecov-html (0.13.1)
63
67
  simplecov_json_formatter (0.1.4)
64
- strscan (3.1.0)
65
- unicode-display_width (2.5.0)
68
+ unicode-display_width (3.1.4)
69
+ unicode-emoji (~> 4.0, >= 4.0.4)
70
+ unicode-emoji (4.0.4)
66
71
 
67
72
  PLATFORMS
68
- x86_64-darwin-23
73
+ x86_64-darwin-24
69
74
  x86_64-linux
70
75
 
71
76
  DEPENDENCIES
@@ -74,9 +79,9 @@ DEPENDENCIES
74
79
  rspec (~> 3.13)
75
80
  rubocop (~> 1.65, >= 1.65.1)
76
81
  rubocop-performance (~> 1.21, >= 1.21.1)
77
- rubocop-rake (~> 0.6.0)
82
+ rubocop-rake (~> 0.7.1)
78
83
  rubocop-rspec (~> 3.0, >= 3.0.4)
79
84
  simplecov (~> 0.22.0)
80
85
 
81
86
  BUNDLED WITH
82
- 2.5.17
87
+ 2.7.1
data/README.md CHANGED
@@ -65,7 +65,7 @@ could be included in the documentation. This guide covers initialization,
65
65
  navigation, step verification, and completion of the onboarding process.
66
66
 
67
67
  After defining and accessing the onboarding steps as described
68
- earlier, managed the onboarding process through various controls
68
+ earlier, manage the onboarding process through various controls
69
69
  that allow step navigation and state verification:
70
70
 
71
71
  1. **Initialize Onboarding Process**
@@ -73,34 +73,34 @@ that allow step navigation and state verification:
73
73
  - Instantiate the onboarding process when a `User` object is created.
74
74
  This sets up the initial step based on the defined onboarding flow.
75
75
 
76
- ```ruby
77
- onboarding = User.new.onboarding
78
- ```
76
+ ```ruby
77
+ onboarding = User.new.onboarding
78
+ ```
79
79
 
80
80
  - For a more detailed setup, use the `Onboardable::List::Builder` to
81
81
  create a custom onboarding flow with specific steps and details.
82
82
 
83
- ```ruby
84
- builder = Onboardable::List::Builder.new
83
+ ```ruby
84
+ builder = Onboardable::List::Builder.new
85
85
 
86
- builder.create_step 'welcome', message: 'Welcome to your new account!'
87
- builder.create_step 'account_setup', task: 'Create credentials'
88
- builder.create_step 'confirmation'
89
- builder.create_step_from ExternalStepProvider
86
+ builder.create_step 'welcome', message: 'Welcome to your new account!'
87
+ builder.create_step 'account_setup', task: 'Create credentials'
88
+ builder.create_step 'confirmation'
89
+ builder.create_step_from ExternalStepProvider
90
90
 
91
- onboarding = builder.build
92
- ```
91
+ onboarding = builder.build
92
+ ```
93
93
 
94
- 1. **Check the order of steps**
94
+ 2. **Check the order of steps**
95
95
 
96
96
  Determine the order of steps in the onboarding process to ensure
97
97
  that the sequence is correct and that the steps are defined as expected.
98
98
 
99
99
  ```ruby
100
- onboarding.steps # Returns the list of steps
100
+ onboarding.steps
101
101
  ```
102
102
 
103
- 1. **Navigating Through Steps**
103
+ 3. **Navigating Through Steps**
104
104
 
105
105
  Navigate through the onboarding steps using the navigation methods provided.
106
106
  These methods help in moving forward and backward through the onboarding process.
@@ -111,8 +111,8 @@ that allow step navigation and state verification:
111
111
  what's next or advance to it, updating the current step status.
112
112
 
113
113
  ```ruby
114
- onboarding.next_step # Preview the next step
115
- onboarding.next_step! # Advance to the next step
114
+ onboarding.next_step
115
+ onboarding.next_step!
116
116
  ```
117
117
 
118
118
  - **Previous Step**
@@ -121,71 +121,71 @@ that allow step navigation and state verification:
121
121
  making changes or updates to revert to the previous step.
122
122
 
123
123
  ```ruby
124
- onboarding.prev_step # Preview the previous step
125
- onboarding.prev_step! # Move back to the previous step
124
+ onboarding.prev_step
125
+ onboarding.prev_step!
126
126
  ```
127
127
 
128
- 1. **Check Step Position**
128
+ 4. **Check Step Position**
129
129
 
130
130
  Determine whether the current step is the first or the last in the sequence
131
131
  to manage UI elements like 'Next' or 'Back' buttons appropriately.
132
132
 
133
133
  ```ruby
134
- step = onboarding.steps.sample # Random step from the list
134
+ step = onboarding.steps.sample
135
135
 
136
- onboarding.first_step?(step) # Is the first step?
137
- onboarding.last_step?(step) # Is the last step?
138
- onboarding.current_step?(step) # Is the current step?
139
- onboarding.second_step?(step) # Is the second step?
140
- onboarding.prev_step?(step) # Is the previous step?
136
+ onboarding.first_step?(step)
137
+ onboarding.last_step?(step)
138
+ onboarding.current_step?(step)
139
+ onboarding.second_step?(step)
140
+ onboarding.prev_step?(step)
141
141
  ```
142
142
 
143
- 1. **Monitor Progress**
143
+ 5. **Monitor Progress**
144
144
 
145
145
  - Calculate the progress or completion percentage of the onboarding process
146
146
  to provide users with an indication of how far they have progressed.
147
147
 
148
- ```ruby
149
- onboarding.progress # Returns the completion percentage
150
- ```
148
+ ```ruby
149
+ onboarding.progress
150
+ ```
151
151
 
152
152
  - To customize the progress calculation formula, define a lambda function
153
153
  that takes the current step index and the total number of steps as arguments.
154
154
 
155
- ```ruby
156
- CALCULATION = ->(step_index, steps_size) { step_index + steps_size }
157
- onboarding.progress(CALCULATION)
158
- ```
155
+ ```ruby
156
+ CALCULATION = ->(step_index, steps_size) { step_index + steps_size }
157
+ onboarding.progress(CALCULATION)
158
+ ```
159
159
 
160
160
  - Alternatively, set the custom progress calculation formula during the
161
161
  onboarding definition to automatically calculate the progress.
162
162
 
163
- ```ruby
164
- class User
165
- include Onboardable
163
+ ```ruby
164
+ class User
165
+ include Onboardable
166
166
 
167
- CALCULATION = ->(step_index, steps_size) { step_index + steps_size }
167
+ CALCULATION = ->(step_index, steps_size) { step_index + steps_size }
168
168
 
169
- has_onboarding progress_calculation: CALCULATION do
170
- # ...
171
- end
172
- end
173
- ```
169
+ has_onboarding progress_calculation: CALCULATION do
170
+ # ...
171
+ end
172
+ end
173
+ ```
174
174
 
175
- 1. **Access Current Step Details**
175
+ 6. **Access Current Step Details**
176
176
 
177
177
  Retrieve details about the current step, which can include the name,
178
178
  custom data, and status, to display appropriate information or help
179
- the user completes tasks associated with the step.
179
+ the user understand their current position in the onboarding process.
180
180
 
181
181
  ```ruby
182
- onboarding.current_step # Current step details
183
- onboarding.current_step.name # Step name
184
- onboarding.current_step.data # Step custom data
185
- onboarding.current_step.status # Step status
182
+ onboarding.current_step
183
+ onboarding.current_step.name
184
+ onboarding.current_step.data
185
+ onboarding.current_step.status
186
186
  ```
187
187
 
188
- 1. **Complete the Onboarding Process**
188
+ 7. **Complete the Onboarding Process**
189
189
 
190
190
  Once the user reaches the last step and completes it, finalize the
191
191
  onboarding process, which might involve setting a user attribute to
@@ -200,12 +200,12 @@ that allow step navigation and state verification:
200
200
  # Exception Handling Approach
201
201
  begin
202
202
  onboarding.next_step!
203
- rescue LastStepError
203
+ rescue Onboardable::LastStepError
204
204
  # Implement finalization processes like updating user attributes
205
205
  end
206
206
  ```
207
207
 
208
- 1. **Exit the Onboarding Process Early**
208
+ 8. **Exit the Onboarding Process Early**
209
209
 
210
210
  Handle cases where a user decides to discontinue the onboarding
211
211
  by attempting to navigate back from the initial step.
@@ -219,7 +219,7 @@ that allow step navigation and state verification:
219
219
  # Exception Handling Approach
220
220
  begin
221
221
  onboarding.prev_step!
222
- rescue FirstStepError
222
+ rescue Onboardable::FirstStepError
223
223
  # Implement cleanup or final actions for an orderly exit
224
224
  end
225
225
  ```
@@ -230,13 +230,13 @@ user-friendly onboarding process using the Onboardable gem.
230
230
  ## 🛠 Development
231
231
 
232
232
  1. After checking out the repo, run `bin/setup` to install dependencies.
233
- 1. Then, run `rake spec` to run the tests.
234
- 1. Also run `bin/console` for an interactive prompt that will allow you to experiment.
235
- 1. To install this gem onto your local machine, run `bundle exec rake install`.
236
- 1. To release a new version, update the version number in `version.rb`.
237
- 1. After, run `bundle exec rake release`, which will create a git tag for the version.
238
- 1. Push git commits and the created tag.
239
- 1. Then push the `.gem` file to [rubygems.org](https://rubygems.org).
233
+ 2. Then, run `rake spec` to run the tests.
234
+ 3. Also run `bin/console` for an interactive prompt that will allow you to experiment.
235
+ 4. To install this gem onto your local machine, run `bundle exec rake install`.
236
+ 5. To release a new version, update the version number in `version.rb`.
237
+ 6. After, run `bundle exec rake release`, which will create a git tag for the version.
238
+ 7. Push git commits and the created tag.
239
+ 8. Then push the `.gem` file to [rubygems.org](https://rubygems.org).
240
240
 
241
241
  ## 🤝 Contributing
242
242
 
@@ -250,5 +250,5 @@ The gem is available as open source under the terms of the [MIT License](https:/
250
250
 
251
251
  ## 📜 Code of Conduct
252
252
 
253
- Everyone interacting in the Onboardable project's codebases, issue trackers,
253
+ Everyone interacting with the Onboardable project's codebases, issue trackers,
254
254
  chat rooms and mailing lists are expected to follow the [code of conduct](https://github.com/dmrAnderson/onboardable/blob/main/CODE_OF_CONDUCT.md).
@@ -22,7 +22,7 @@ module Onboardable
22
22
  # @param klass [Class] The class that failed to convert.
23
23
  # @param step [unknown] The object that was attempted to be converted to a Step.
24
24
  def initialize(klass, step)
25
- super("can't convert #{klass} to Step (#{klass}#to_onboarding_step gives #{step.class}).")
25
+ super("Can't convert #{klass} to Step (#{klass}#to_onboarding_step gives #{step.class}).")
26
26
  end
27
27
  end
28
28
 
@@ -14,11 +14,11 @@ module Onboardable
14
14
  # @return [Step] The current step in the list.
15
15
  attr_reader :current_step
16
16
 
17
- # Initializes a new instance of List with steps and a current step.
17
+ # Initializes a new instance of the List with steps and a current step.
18
18
  #
19
19
  # @param steps [Array<Step>] An array of steps comprising the onboarding process.
20
20
  # @param current_step [Step] The step currently active in the process.
21
- # @param options [Hash] An options hash for the list.
21
+ # @param options [Hash] Optional parameters for configuring the list.
22
22
  def initialize(steps, current_step, options = {})
23
23
  self.steps = steps
24
24
  self.current_step = current_step
@@ -39,7 +39,7 @@ module Onboardable
39
39
  # @return [Hash] The options hash for the list.
40
40
  attr_reader :options
41
41
 
42
- # Sets and validates the steps array, ensuring it is an Array of Step objects.
42
+ # Sets and validates an array of steps.
43
43
  #
44
44
  # @param steps [Array<Step>] The steps to be assigned to the list.
45
45
  # @return [Array<Step>] The assigned steps.
@@ -58,7 +58,7 @@ module Onboardable
58
58
  end
59
59
  end
60
60
 
61
- # Sets and validates the options hash, ensuring it is a Hash object.
61
+ # Sets and validates options for the list.
62
62
  #
63
63
  # @param options [Hash] The options to be assigned to the list.
64
64
  # @return [Hash] The assigned options.
@@ -59,9 +59,9 @@ module Onboardable
59
59
  # @return [Hash] The options hash for the builder.
60
60
  attr_reader :options
61
61
 
62
- # Sets the options hash for the builder.
62
+ # Sets options hash for the builder.
63
63
  #
64
- # @param options [Hash] The options hash to be set.
64
+ # @param options [Hash] Options to be set for the builder.
65
65
  def options=(options)
66
66
  @options = Hash(options).except(STEP_KEY)
67
67
  end
@@ -91,7 +91,7 @@ module Onboardable
91
91
  #
92
92
  # @param name [String] The name of the step to be converted to a Step object.
93
93
  # @return [Step] The corresponding Step object.
94
- # @raise [StepError] Raises if the specified step name is not present in the steps hash.
94
+ # @raise [StepError] Raises if the specified step name is not present in steps hash.
95
95
  def convert_to_step!(name)
96
96
  steps[name] || raise(StepError.new(name, steps.keys))
97
97
  end
@@ -16,8 +16,8 @@ module Onboardable
16
16
  class << self
17
17
  # Attempts to convert a class to a Step object using a specified conversion method.
18
18
  #
19
- # @param klass [Class] The class to convert to a Step
20
- # @return [Step, nil] The converted Step object, or nil if the class does not respond to the conversion method
19
+ # @param klass [Class] The class to convert to a Step.
20
+ # @return [Step, nil] The converted Step object, or nil if the class does not respond to the conversion method.
21
21
  def try_convert(klass)
22
22
  return unless klass.respond_to?(CONVERSION_METHOD)
23
23
 
@@ -30,26 +30,26 @@ module Onboardable
30
30
 
31
31
  # Raises an error for a failed conversion attempt.
32
32
  #
33
- # @param klass [Class] The class that failed to convert
34
- # @raise [StepConversionError] Raises an error for a failed conversion attempt
33
+ # @param klass [Class] The class that failed to convert.
34
+ # @raise [StepConversionError] Raises an error for a failed conversion attempt.
35
35
  def conversion_error!(klass, step)
36
36
  raise StepConversionError.new(klass, step)
37
37
  end
38
38
  end
39
39
 
40
- # @return [String] The name of the step
40
+ # @return [String] The name of the step.
41
41
  attr_reader :name
42
42
 
43
- # @return [Hash] Custom data associated with the step
43
+ # @return [Hash] Custom data associated with the step.
44
44
  attr_reader :data
45
45
 
46
- # @return [Symbol] The current status of the step
46
+ # @return [Symbol] The current status of the step.
47
47
  attr_reader :status
48
48
 
49
49
  # Initializes a new Step with a name, optional custom data, and a default status.
50
50
  #
51
- # @param name [String] The name of the step
52
- # @param data [Hash] The custom data associated with the step, defaults to an empty hash
51
+ # @param name [String] The name of the step.
52
+ # @param data [Hash] The custom data associated with the step.
53
53
  def initialize(name, data = {})
54
54
  self.name = name
55
55
  self.data = data
@@ -79,23 +79,23 @@ module Onboardable
79
79
 
80
80
  # Compares this step to another to determine if they are equivalent, based on the step name.
81
81
  #
82
- # @param other [Step] The step to compare with
83
- # @return [Boolean] True if both steps have the same name, false otherwise
82
+ # @param other [Step] The step to compare with.
83
+ # @return [Boolean] True if both steps have the same name, false otherwise.
84
84
  def ==(other)
85
85
  to_str == other.to_str
86
86
  end
87
87
 
88
88
  # Provides a string representation of the step, using its name.
89
89
  #
90
- # @return [String] The name of the step
90
+ # @return [String] The name of the step.
91
91
  def to_str
92
92
  name
93
93
  end
94
94
 
95
95
  # Updates the status of the step based on a specified comparison result.
96
96
  #
97
- # @param comparison_result [Integer] The result of a comparison with the current step (-1, 0, or 1)
98
- # @return [Symbol] The new status of the step
97
+ # @param comparison_result [Integer] The result of a comparison operation.
98
+ # @return [Symbol] The new status of the step.
99
99
  def update_status!(comparison_result)
100
100
  self.status = case comparison_result
101
101
  when -1 then COMPLETED_STATUS
@@ -108,14 +108,14 @@ module Onboardable
108
108
 
109
109
  # Sets the name of the step, ensuring it is a valid String.
110
110
  #
111
- # @param name [String] The raw name of the step
111
+ # @param name [String] The raw name of the step.
112
112
  def name=(name)
113
113
  @name = String.new(name).freeze
114
114
  end
115
115
 
116
116
  # Sets the status of the step.
117
117
  #
118
- # @param status [Symbol] The new status of the step
118
+ # @param status [Symbol] The new status of the step.
119
119
  def status=(status)
120
120
  STATUSES.include?(status) || raise(StepStatusError.new(status, STATUSES))
121
121
 
@@ -124,15 +124,15 @@ module Onboardable
124
124
 
125
125
  # Sets the custom data for the step, ensuring it is a valid Hash.
126
126
  #
127
- # @param data [Hash] The raw custom data
127
+ # @param data [Hash] The raw custom data.
128
128
  def data=(data)
129
129
  @data = Hash(data).freeze
130
130
  end
131
131
 
132
132
  # Raises an error for an invalid comparison result.
133
133
  #
134
- # @param comparison_result [Integer] The invalid comparison result
135
- # @raise [ComparisonResultError] Raises an error for an invalid comparison result
134
+ # @param comparison_result [Integer] The invalid comparison result.
135
+ # @raise [ComparisonResultError] Raises an error for an invalid comparison result.
136
136
  def comparison_result_error!(comparison_result)
137
137
  raise ComparisonResultError.new(comparison_result, (-1..1).to_a)
138
138
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Onboardable
4
- VERSION = '1.3.3'
4
+ VERSION = '1.5.0'
5
5
  end
data/lib/onboardable.rb CHANGED
@@ -29,9 +29,9 @@ module Onboardable
29
29
  # @param options [Hash] Optional configuration options for the ListBuilder.
30
30
  # @yield [List::Builder] Executes block in the context of List::Builder.
31
31
  # @return [Step] The current step in the building process.
32
- def onboarding=(options = {}, &block)
32
+ def onboarding=(options = {}, &)
33
33
  self.list_builder = List::Builder.new(options)
34
- list_builder.instance_eval(&block)
34
+ list_builder.instance_eval(&)
35
35
  end
36
36
  alias has_onboarding onboarding=
37
37
 
data/onboardable.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.description = 'Provides tools for easy setup of custom onboarding to boost engagement.'
13
13
  spec.homepage = 'https://github.com/dmrAnderson/onboardable'
14
14
  spec.license = 'MIT'
15
- spec.required_ruby_version = '>= 3.0.0'
15
+ spec.required_ruby_version = '>= 3.2.0'
16
16
 
17
17
  # spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
18
18
 
@@ -43,7 +43,7 @@ Gem::Specification.new do |spec|
43
43
  spec.add_development_dependency 'rspec', '~> 3.13'
44
44
  spec.add_development_dependency 'rubocop', '~> 1.65', '~> 1.65', '>= 1.65.1'
45
45
  spec.add_development_dependency 'rubocop-performance', '~> 1.21', '>= 1.21.1'
46
- spec.add_development_dependency 'rubocop-rake', '~> 0.6.0'
46
+ spec.add_development_dependency 'rubocop-rake', '~> 0.7.1'
47
47
  spec.add_development_dependency 'rubocop-rspec', '~> 3.0', '>= 3.0.4'
48
48
  spec.add_development_dependency 'simplecov', '~> 0.22.0'
49
49
 
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: onboardable
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.3
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Artem Skrynnyk
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2024-08-15 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: rake
@@ -90,14 +89,14 @@ dependencies:
90
89
  requirements:
91
90
  - - "~>"
92
91
  - !ruby/object:Gem::Version
93
- version: 0.6.0
92
+ version: 0.7.1
94
93
  type: :development
95
94
  prerelease: false
96
95
  version_requirements: !ruby/object:Gem::Requirement
97
96
  requirements:
98
97
  - - "~>"
99
98
  - !ruby/object:Gem::Version
100
- version: 0.6.0
99
+ version: 0.7.1
101
100
  - !ruby/object:Gem::Dependency
102
101
  name: rubocop-rspec
103
102
  requirement: !ruby/object:Gem::Requirement
@@ -171,7 +170,6 @@ metadata:
171
170
  bug_tracker_uri: https://github.com/dmrAnderson/onboardable/issues
172
171
  documentation_uri: https://rubydoc.info/gems/onboardable
173
172
  rubygems_mfa_required: 'true'
174
- post_install_message:
175
173
  rdoc_options: []
176
174
  require_paths:
177
175
  - lib
@@ -179,15 +177,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
179
177
  requirements:
180
178
  - - ">="
181
179
  - !ruby/object:Gem::Version
182
- version: 3.0.0
180
+ version: 3.2.0
183
181
  required_rubygems_version: !ruby/object:Gem::Requirement
184
182
  requirements:
185
183
  - - ">="
186
184
  - !ruby/object:Gem::Version
187
185
  version: '0'
188
186
  requirements: []
189
- rubygems_version: 3.5.11
190
- signing_key:
187
+ rubygems_version: 3.6.9
191
188
  specification_version: 4
192
189
  summary: Streamlines onboarding process integration
193
190
  test_files: []