21 lines
		
	
	
		
			668 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			668 B
		
	
	
	
		
			Go
		
	
	
| package share
 | |
| 
 | |
| type CreateBody struct {
 | |
| 	Password string `json:"password"`
 | |
| 	Expires  string `json:"expires"`
 | |
| 	Unit     string `json:"unit"`
 | |
| }
 | |
| 
 | |
| // Link is the information needed to build a shareable link.
 | |
| type Link struct {
 | |
| 	Hash         string `json:"hash" storm:"id,index"`
 | |
| 	Path         string `json:"path" storm:"index"`
 | |
| 	UserID       uint   `json:"userID"`
 | |
| 	Expire       int64  `json:"expire"`
 | |
| 	PasswordHash string `json:"password_hash,omitempty"`
 | |
| 	// Token is a random value that will only be set when PasswordHash is set. It is
 | |
| 	// URL-Safe and is used to download links in password-protected shares via a
 | |
| 	// query arg.
 | |
| 	Token string `json:"token,omitempty"`
 | |
| }
 |