github.com/taubyte/tau-cli@v0.1.13-0.20240326000942-487f0d57edfc/cli/commands/resources/storage/edit.go (about)

     1  package storage
     2  
     3  import (
     4  	structureSpec "github.com/taubyte/go-specs/structure"
     5  	resources "github.com/taubyte/tau-cli/cli/commands/resources/common"
     6  	"github.com/taubyte/tau-cli/cli/common"
     7  	"github.com/taubyte/tau-cli/flags"
     8  	storageFlags "github.com/taubyte/tau-cli/flags/storage"
     9  	storageI18n "github.com/taubyte/tau-cli/i18n/storage"
    10  	storageLib "github.com/taubyte/tau-cli/lib/storage"
    11  	storagePrompts "github.com/taubyte/tau-cli/prompts/storage"
    12  	storageTable "github.com/taubyte/tau-cli/table/storage"
    13  )
    14  
    15  func (link) Edit() common.Command {
    16  	return (&resources.Edit[*structureSpec.Storage]{
    17  		PromptsGetOrSelect: storagePrompts.GetOrSelect,
    18  		PromptsEdit:        storagePrompts.Edit,
    19  		TableConfirm:       storageTable.Confirm,
    20  		PromptsEditThis:    storagePrompts.EditThis,
    21  		LibSet:             storageLib.Set,
    22  		I18nEdited:         storageI18n.Edited,
    23  
    24  		UniqueFlags: flags.Combine(
    25  			flags.MatchRegex,
    26  			flags.Match,
    27  			storageFlags.Public,
    28  			flags.Size,
    29  			flags.SizeUnit,
    30  			storageFlags.BucketType,
    31  			storageFlags.Versioning, // BucketType Object
    32  			storageFlags.TTL,        // BucketType Streaming
    33  		),
    34  	}).Default()
    35  }