cli-mastermind 1.2.2 → 1.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/cli/mastermind.rb +1 -1
- data/lib/cli/mastermind/parent_plan.rb +4 -0
- data/lib/cli/mastermind/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 24aff2be94a0113a809e45983fc8a528d99bfbdc4090db68c9b00d9e9e7d8416
|
4
|
+
data.tar.gz: 95059050f8d96aabebaf8b3f18798c0183ef7bf4731e223dba4748172ec55e04
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1809e4b280983a05468a89e9a2b9bf2a92c781e9ee5aa92e0aeff1ebfd9d0fbd321bbce2cb39c27e99ebf19d472573d511f3b57fd24be66adda305c687b92f21
|
7
|
+
data.tar.gz: 9b2cb023a9a1898809b74822d20ab0f1f5dd5323d1b9fb9cfed914332154a05244bb7b676443197e33155da5f7b01c8a630228fe7ab6cdb7859849930b6f6921
|
data/lib/cli/mastermind.rb
CHANGED
@@ -236,7 +236,7 @@ module CLI
|
|
236
236
|
end
|
237
237
|
|
238
238
|
def do_interactive_plan_selection
|
239
|
-
options = (@selected_plan
|
239
|
+
options = (@selected_plan || plans).map { |k,v| [titleize(k.to_s), v] }.to_h
|
240
240
|
|
241
241
|
@selected_plan = select("Select a plan under #{@plan_stack.join('/')}", options: options)
|
242
242
|
@plan_stack << titleize(@selected_plan.name)
|
@@ -1,7 +1,9 @@
|
|
1
1
|
module CLI
|
2
2
|
module Mastermind
|
3
3
|
class ParentPlan
|
4
|
+
extend Forwardable
|
4
5
|
include Plan
|
6
|
+
include Enumerable
|
5
7
|
|
6
8
|
# Used in the interactive plan selector to display child plans
|
7
9
|
attr_reader :children
|
@@ -20,6 +22,8 @@ module CLI
|
|
20
22
|
alias_method :[], :get_child
|
21
23
|
alias_method :dig, :get_child
|
22
24
|
|
25
|
+
def_delegators :@children, :each, :keep_if, :empty?
|
26
|
+
|
23
27
|
def add_children(plans)
|
24
28
|
raise InvalidPlanError, 'Cannot add child plans to a plan with an action' unless @block.nil?
|
25
29
|
plans.each(&method(:incorporate_plan))
|