@@ -11,6 +11,7 @@ import (
1111 "github.com/magaluCloud/mgccli/beautiful"
1212 "github.com/magaluCloud/mgccli/cmd/common/auth"
1313 cmdutils "github.com/magaluCloud/mgccli/cmd_utils"
14+ cobrautils "github.com/magaluCloud/mgccli/cobra_utils/flags"
1415 "github.com/magaluCloud/mgccli/i18n"
1516 "github.com/spf13/cobra"
1617)
@@ -87,7 +88,7 @@ func UpdateCommand(ctx context.Context) *cobra.Command {
8788 manager := i18n .GetInstance ()
8889
8990 cmd := & cobra.Command {
90- Use : "update" ,
91+ Use : "update [id] " ,
9192 Short : manager .T ("cli.auth.clients.update.short" ),
9293 Long : manager .T ("cli.auth.clients.update.long" ),
9394 Example : `mgc auth clients update --access-token-expiration=7200 --audiences="public" --description="Client description" --name="Client Name" --refresh-token-exp=15552000` ,
@@ -98,24 +99,24 @@ func UpdateCommand(ctx context.Context) *cobra.Command {
9899 ID : opts .ID ,
99100 }
100101
101- NilIfNotChanged (cmd , Name , & params .Name , opts .Name )
102- NilIfNotChanged (cmd , Description , & params .Description , opts .Description )
103- NilIfNotChanged (cmd , RedirectURIs , & params .RedirectURIs , opts .RedirectURIs )
104- NilIfNotChanged (cmd , BackchannelLogoutSessionEnabled , & params .BackchannelLogoutSessionEnabled , opts .BackchannelLogoutSessionEnabled )
105- NilIfNotChanged (cmd , ClientTermsURL , & params .ClientTermsURL , opts .ClientTermsURL )
106- NilIfNotChanged (cmd , ClientPrivacyTermURL , & params .ClientPrivacyTermURL , opts .ClientPrivacyTermURL )
107- NilIfNotChanged (cmd , Audiences , & params .Audiences , opts .Audiences )
108- NilIfNotChanged (cmd , Reason , & params .Reason , opts .Reason )
109- NilIfNotChanged (cmd , Icon , & params .Icon , opts .Icon )
110- NilIfNotChanged (cmd , AccessTokenExp , & params .AccessTokenExp , opts .AccessTokenExp )
111- NilIfNotChanged (cmd , AlwaysRequireLogin , & params .AlwaysRequireLogin , opts .AlwaysRequireLogin )
112- NilIfNotChanged (cmd , BackchannelLogoutURI , & params .BackchannelLogoutURI , opts .BackchannelLogoutURI )
113- NilIfNotChanged (cmd , OidcAudience , & params .OidcAudience , opts .OidcAudience )
114- NilIfNotChanged (cmd , RefreshTokenCustomExpiresEnabled , & params .RefreshTokenCustomExpiresEnabled , opts .RefreshTokenCustomExpiresEnabled )
115- NilIfNotChanged (cmd , RefreshTokenExp , & params .RefreshTokenExp , opts .RefreshTokenExp )
116- NilIfNotChanged (cmd , SupportURL , & params .SupportURL , opts .SupportURL )
117-
118- return runUpdate (ctx , params , raw )
102+ cobrautils . NilIfNotChanged (cmd , Name , & params .Name , opts .Name )
103+ cobrautils . NilIfNotChanged (cmd , Description , & params .Description , opts .Description )
104+ cobrautils . NilIfNotChanged (cmd , RedirectURIs , & params .RedirectURIs , opts .RedirectURIs )
105+ cobrautils . NilIfNotChanged (cmd , BackchannelLogoutSessionEnabled , & params .BackchannelLogoutSessionEnabled , opts .BackchannelLogoutSessionEnabled )
106+ cobrautils . NilIfNotChanged (cmd , ClientTermsURL , & params .ClientTermsURL , opts .ClientTermsURL )
107+ cobrautils . NilIfNotChanged (cmd , ClientPrivacyTermURL , & params .ClientPrivacyTermURL , opts .ClientPrivacyTermURL )
108+ cobrautils . NilIfNotChanged (cmd , Audiences , & params .Audiences , opts .Audiences )
109+ cobrautils . NilIfNotChanged (cmd , Reason , & params .Reason , opts .Reason )
110+ cobrautils . NilIfNotChanged (cmd , Icon , & params .Icon , opts .Icon )
111+ cobrautils . NilIfNotChanged (cmd , AccessTokenExp , & params .AccessTokenExp , opts .AccessTokenExp )
112+ cobrautils . NilIfNotChanged (cmd , AlwaysRequireLogin , & params .AlwaysRequireLogin , opts .AlwaysRequireLogin )
113+ cobrautils . NilIfNotChanged (cmd , BackchannelLogoutURI , & params .BackchannelLogoutURI , opts .BackchannelLogoutURI )
114+ cobrautils . NilIfNotChanged (cmd , OidcAudience , & params .OidcAudience , opts .OidcAudience )
115+ cobrautils . NilIfNotChanged (cmd , RefreshTokenCustomExpiresEnabled , & params .RefreshTokenCustomExpiresEnabled , opts .RefreshTokenCustomExpiresEnabled )
116+ cobrautils . NilIfNotChanged (cmd , RefreshTokenExp , & params .RefreshTokenExp , opts .RefreshTokenExp )
117+ cobrautils . NilIfNotChanged (cmd , SupportURL , & params .SupportURL , opts .SupportURL )
118+
119+ return runUpdate (ctx , params , args , raw )
119120 },
120121 }
121122
@@ -137,13 +138,25 @@ func UpdateCommand(ctx context.Context) *cobra.Command {
137138 cmd .Flags ().IntVar (& opts .RefreshTokenExp , RefreshTokenExp , 15552000 , manager .T ("cli.auth.clients.create.refresh_token_exp" ))
138139 cmd .Flags ().StringVar (& opts .SupportURL , SupportURL , "" , manager .T ("cli.auth.clients.create.support_url" ))
139140
140- cmd .MarkFlagRequired (ID )
141-
142141 return cmd
143142}
144143
145144// runUpdate executa o processo de atualizar as informações de um cliente
146- func runUpdate (ctx context.Context , opts UpdateClientParams , rawMode bool ) error {
145+ func runUpdate (ctx context.Context , opts UpdateClientParams , args []string , rawMode bool ) error {
146+ id := opts .ID
147+
148+ if len (args ) > 0 {
149+ id = args [0 ]
150+ }
151+
152+ if id == "" {
153+ beautiful .NewOutput (rawMode ).PrintError ("é necessário fornecer o ID como argumento ou usar a flag --id" )
154+
155+ return nil
156+ }
157+
158+ opts .ID = id
159+
147160 var confirm bool
148161 huh .NewConfirm ().Title (fmt .Sprintf ("This operation may disable your client %s until updates are approved by the ID Magalu. Do you wish to continue?" , opts .ID )).
149162 Affirmative ("Yes" ).
0 commit comments