use_packs 0.0.2 → 0.0.3
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '006912f2bf892c63364fba8ae22cb6202df72e8fe9bd2a081c8cf5d3610d0fb2'
|
4
|
+
data.tar.gz: 3b4510070e1f6160d8814fe5fea8947481330f8ca05c4bb995bf075930a21454
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d685dbd8cc145544a1c5c1116f3ba39f23d9feda347701657eea97a7e44b44a57f778ad452d719d2442edf33c79a8211451a14367624c9a39f6be77d5af23e49
|
7
|
+
data.tar.gz: 25d3c0d781b77ba831ede9f7a01124fd2bdede9737e4d9b0645d2a5080c132d397dd5fcbdc60d2121a22cc556e4cb0256f38d3460e43b07ac2a12c1f09ad7ec9
|
@@ -7,26 +7,47 @@ module UsePacks
|
|
7
7
|
extend T::Sig
|
8
8
|
|
9
9
|
sig { params(prompt: TTY::Prompt, question_text: String).returns(ParsePackwerk::Package) }
|
10
|
-
def self.single_pack_select(prompt, question_text: 'Please select a pack')
|
10
|
+
def self.single_pack_select(prompt, question_text: 'Please use space to select a pack')
|
11
11
|
packs = ParsePackwerk.all.to_h { |t| [t.name, t] }
|
12
|
-
|
12
|
+
|
13
|
+
pack_selection = T.let(prompt.select(
|
13
14
|
question_text,
|
14
15
|
packs,
|
15
16
|
filter: true,
|
16
17
|
per_page: 10,
|
17
18
|
show_help: :always
|
18
|
-
)
|
19
|
+
), T.nilable(ParsePackwerk::Package))
|
20
|
+
|
21
|
+
while pack_selection.nil?
|
22
|
+
prompt.error(
|
23
|
+
'No packs were selected, please select a pack using the space key before pressing enter.'
|
24
|
+
)
|
25
|
+
|
26
|
+
pack_selection = single_pack_select(prompt, question_text: question_text)
|
27
|
+
end
|
28
|
+
|
29
|
+
pack_selection
|
19
30
|
end
|
20
31
|
|
21
32
|
sig { params(prompt: TTY::Prompt, question_text: String).returns(T::Array[ParsePackwerk::Package]) }
|
22
|
-
def self.single_or_all_pack_multi_select(prompt, question_text: 'Please select one or more packs')
|
23
|
-
prompt.multi_select(
|
33
|
+
def self.single_or_all_pack_multi_select(prompt, question_text: 'Please use space to select one or more packs')
|
34
|
+
pack_selection = T.let(prompt.multi_select(
|
24
35
|
question_text,
|
25
36
|
ParsePackwerk.all.to_h { |t| [t.name, t] },
|
26
37
|
filter: true,
|
27
38
|
per_page: 10,
|
28
39
|
show_help: :always
|
29
|
-
)
|
40
|
+
), T::Array[ParsePackwerk::Package])
|
41
|
+
|
42
|
+
while pack_selection.empty?
|
43
|
+
prompt.error(
|
44
|
+
'No packs were selected, please select one or more packs using the space key before pressing enter.'
|
45
|
+
)
|
46
|
+
|
47
|
+
pack_selection = single_or_all_pack_multi_select(prompt, question_text: question_text)
|
48
|
+
end
|
49
|
+
|
50
|
+
pack_selection
|
30
51
|
end
|
31
52
|
end
|
32
53
|
end
|
@@ -7,27 +7,49 @@ module UsePacks
|
|
7
7
|
extend T::Sig
|
8
8
|
|
9
9
|
sig { params(prompt: TTY::Prompt, question_text: String).returns(CodeTeams::Team) }
|
10
|
-
def self.single_select(prompt, question_text: 'Please select a team owner')
|
10
|
+
def self.single_select(prompt, question_text: 'Please use space to select a team owner')
|
11
11
|
teams = CodeTeams.all.sort_by(&:name).to_h { |t| [t.name, t] }
|
12
|
-
|
12
|
+
|
13
|
+
team_selection = T.let(prompt.select(
|
13
14
|
question_text,
|
14
15
|
teams,
|
15
16
|
filter: true,
|
16
17
|
per_page: 10,
|
17
18
|
show_help: :always
|
18
|
-
)
|
19
|
+
), T.nilable(CodeTeams::Team))
|
20
|
+
|
21
|
+
while team_selection.nil?
|
22
|
+
prompt.error(
|
23
|
+
'No owners were selected, please select an owner using the space key before pressing enter.'
|
24
|
+
)
|
25
|
+
|
26
|
+
team_selection = single_select(prompt, question_text: question_text)
|
27
|
+
end
|
28
|
+
|
29
|
+
team_selection
|
19
30
|
end
|
20
31
|
|
21
32
|
sig { params(prompt: TTY::Prompt, question_text: String).returns(T::Array[CodeTeams::Team]) }
|
22
|
-
def self.multi_select(prompt, question_text: 'Please select team owners')
|
33
|
+
def self.multi_select(prompt, question_text: 'Please use space to select team owners')
|
23
34
|
teams = CodeTeams.all.to_h { |t| [t.name, t] }
|
24
|
-
|
35
|
+
|
36
|
+
team_selection = T.let(prompt.multi_select(
|
25
37
|
question_text,
|
26
38
|
teams,
|
27
39
|
filter: true,
|
28
40
|
per_page: 10,
|
29
41
|
show_help: :always
|
30
|
-
)
|
42
|
+
), T::Array[CodeTeams::Team])
|
43
|
+
|
44
|
+
while team_selection.empty?
|
45
|
+
prompt.error(
|
46
|
+
'No owners were selected, please select one or more owners using the space key before pressing enter.'
|
47
|
+
)
|
48
|
+
|
49
|
+
team_selection = multi_select(prompt, question_text: question_text)
|
50
|
+
end
|
51
|
+
|
52
|
+
team_selection
|
31
53
|
end
|
32
54
|
end
|
33
55
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: use_packs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gusto Engineers
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-12-
|
11
|
+
date: 2022-12-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: code_ownership
|