The goal of this PR is to normalize the cli packages in a way that 1/ showcases clear ownership of data, 2/ minimizes package bloat, and 3/ helps avoid circular import issues. To achieve this, two primary changes were made. First, the cli/options package was folded into cli/utils, so that all "shared functionality" is owned by a single package. Second, all flag values, globals, declarations, and mutator funcs (in the cli layer, logging package was not changed) were extracted from cli/utils and placed into cli/flags. This divides ownership between the declaration and population of the flags (cli/flags) from the utilization of values derived from flags in command processing (cli/utils). This PR contains zero logical changes. Only code movement and renaming. --- #### Does this PR need a docs update or release note? - [x] ⛔ No #### Type of change - [x] 🧹 Tech Debt/Cleanup #### Issue(s) * #3664 #### Test Plan - [x] ⚡ Unit test - [x] 💚 E2E
61 lines
1.3 KiB
Go
61 lines
1.3 KiB
Go
package flags
|
|
|
|
import (
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
const (
|
|
FileFN = "file"
|
|
FolderFN = "folder"
|
|
|
|
FileCreatedAfterFN = "file-created-after"
|
|
FileCreatedBeforeFN = "file-created-before"
|
|
FileModifiedAfterFN = "file-modified-after"
|
|
FileModifiedBeforeFN = "file-modified-before"
|
|
)
|
|
|
|
var (
|
|
FolderPathFV []string
|
|
FileNameFV []string
|
|
|
|
FileCreatedAfterFV string
|
|
FileCreatedBeforeFV string
|
|
FileModifiedAfterFV string
|
|
FileModifiedBeforeFV string
|
|
)
|
|
|
|
// AddOneDriveDetailsAndRestoreFlags adds flags that are common to both the
|
|
// details and restore commands.
|
|
func AddOneDriveDetailsAndRestoreFlags(cmd *cobra.Command) {
|
|
fs := cmd.Flags()
|
|
|
|
fs.StringSliceVar(
|
|
&FolderPathFV,
|
|
FolderFN, nil,
|
|
"Select files by OneDrive folder; defaults to root.")
|
|
|
|
fs.StringSliceVar(
|
|
&FileNameFV,
|
|
FileFN, nil,
|
|
"Select files by name.")
|
|
|
|
fs.StringVar(
|
|
&FileCreatedAfterFV,
|
|
FileCreatedAfterFN, "",
|
|
"Select files created after this datetime.")
|
|
fs.StringVar(
|
|
&FileCreatedBeforeFV,
|
|
FileCreatedBeforeFN, "",
|
|
"Select files created before this datetime.")
|
|
|
|
fs.StringVar(
|
|
&FileModifiedAfterFV,
|
|
FileModifiedAfterFN, "",
|
|
"Select files modified after this datetime.")
|
|
|
|
fs.StringVar(
|
|
&FileModifiedBeforeFV,
|
|
FileModifiedBeforeFN, "",
|
|
"Select files modified before this datetime.")
|
|
}
|