File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ const Blueprint = require('../blueprint')
33const ask = require ( '../util/ask' )
44const selectModel = require ( '../util/select-model' )
55const chooseCategory = require ( '../util/choose-category' )
6+ const chooseRoles = require ( '../util/choose-roles' )
67const chooseFilename = require ( '../util/choose-filename' )
78
89async function addSearchDoc ( options ) {
@@ -16,6 +17,8 @@ async function addSearchDoc (options) {
1617
1718 const category = await chooseCategory ( blueprint , model . name )
1819
20+ const roles = await chooseRoles ( blueprint , '$everyone' )
21+
1922 const filename = await chooseFilename (
2023 'Search-doc filename' ,
2124 `${ model . name } `
@@ -28,7 +31,7 @@ async function addSearchDoc (options) {
2831 primaryKeys : model . schema . primaryKey ,
2932 title : label ,
3033 description : description ,
31- roles : [ '$everyone' ] ,
34+ roles : roles ,
3235 sort : label ,
3336 category : category ,
3437 launches : 'boop' ,
Original file line number Diff line number Diff line change 1+ const c = require ( 'ansi-colors' )
2+ const ask = require ( './ask' )
3+
4+ async function chooseRoles ( blueprint , suggested = '$authenticated' ) {
5+ const roles = blueprint . roles ( )
6+
7+ if ( roles . length === 0 ) {
8+ console . log ( c . bold . red ( 'Blueprint has no roles defined' ) )
9+ return ask ( {
10+ message : 'Enter roles' ,
11+ hint : 'You can provide several roles, separated by commas' ,
12+ type : 'list' ,
13+ initial : suggested
14+ } )
15+ }
16+
17+ if ( roles . length === 1 ) {
18+ console . log ( c . bold ( `Blueprint has one role - ${ c . cyan ( roles [ 0 ] ) } ` ) )
19+ return roles
20+ }
21+
22+ const cats = await ask ( {
23+ type : 'multiselect' ,
24+ message : 'Select roles' ,
25+ choices : [
26+ '$everyone' ,
27+ '$authenticated' ,
28+ ...roles
29+ ]
30+ } )
31+
32+ return cats
33+ } // chooseRoles
34+
35+ module . exports = chooseRoles
You can’t perform that action at this time.
0 commit comments