mirror of
				https://gitea.com/gitea/tea.git
				synced 2025-10-31 17:25:27 +01:00 
			
		
		
		
	Update Vendors (#337)
* update & migrate gitea sdk (Fix Delete Tag Issue) * upgraded github.com/AlecAivazis/survey v2.2.7 => v2.2.8 * upgraded github.com/adrg/xdg v0.2.3 => v0.3.1 * upgraded github.com/araddon/dateparse * upgraded github.com/olekukonko/tablewriter v0.0.4 => v0.0.5 * upgraded gopkg.in/yaml.v2 v2.3.0 => v2.4.0 Reviewed-on: https://gitea.com/gitea/tea/pulls/337 Reviewed-by: Norwin <noerw@noreply.gitea.io> Reviewed-by: khmarbaise <khmarbaise@noreply.gitea.io> Co-authored-by: 6543 <6543@obermui.de> Co-committed-by: 6543 <6543@obermui.de>
This commit is contained in:
		
							
								
								
									
										22
									
								
								vendor/github.com/aymerick/douceur/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								vendor/github.com/aymerick/douceur/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,22 +0,0 @@ | ||||
| The MIT License (MIT) | ||||
|  | ||||
| Copyright (c) 2015 Aymerick JEHANNE | ||||
|  | ||||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
| of this software and associated documentation files (the "Software"), to deal | ||||
| in the Software without restriction, including without limitation the rights | ||||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||||
| copies of the Software, and to permit persons to whom the Software is | ||||
| furnished to do so, subject to the following conditions: | ||||
|  | ||||
| The above copyright notice and this permission notice shall be included in all | ||||
| copies or substantial portions of the Software. | ||||
|  | ||||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||||
| SOFTWARE. | ||||
|  | ||||
							
								
								
									
										60
									
								
								vendor/github.com/aymerick/douceur/css/declaration.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										60
									
								
								vendor/github.com/aymerick/douceur/css/declaration.go
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,60 +0,0 @@ | ||||
| package css | ||||
|  | ||||
| import "fmt" | ||||
|  | ||||
| // Declaration represents a parsed style property | ||||
| type Declaration struct { | ||||
| 	Property  string | ||||
| 	Value     string | ||||
| 	Important bool | ||||
| } | ||||
|  | ||||
| // NewDeclaration instanciates a new Declaration | ||||
| func NewDeclaration() *Declaration { | ||||
| 	return &Declaration{} | ||||
| } | ||||
|  | ||||
| // Returns string representation of the Declaration | ||||
| func (decl *Declaration) String() string { | ||||
| 	return decl.StringWithImportant(true) | ||||
| } | ||||
|  | ||||
| // StringWithImportant returns string representation with optional !important part | ||||
| func (decl *Declaration) StringWithImportant(option bool) string { | ||||
| 	result := fmt.Sprintf("%s: %s", decl.Property, decl.Value) | ||||
|  | ||||
| 	if option && decl.Important { | ||||
| 		result += " !important" | ||||
| 	} | ||||
|  | ||||
| 	result += ";" | ||||
|  | ||||
| 	return result | ||||
| } | ||||
|  | ||||
| // Equal returns true if both Declarations are equals | ||||
| func (decl *Declaration) Equal(other *Declaration) bool { | ||||
| 	return (decl.Property == other.Property) && (decl.Value == other.Value) && (decl.Important == other.Important) | ||||
| } | ||||
|  | ||||
| // | ||||
| // DeclarationsByProperty | ||||
| // | ||||
|  | ||||
| // DeclarationsByProperty represents sortable style declarations | ||||
| type DeclarationsByProperty []*Declaration | ||||
|  | ||||
| // Implements sort.Interface | ||||
| func (declarations DeclarationsByProperty) Len() int { | ||||
| 	return len(declarations) | ||||
| } | ||||
|  | ||||
| // Implements sort.Interface | ||||
| func (declarations DeclarationsByProperty) Swap(i, j int) { | ||||
| 	declarations[i], declarations[j] = declarations[j], declarations[i] | ||||
| } | ||||
|  | ||||
| // Implements sort.Interface | ||||
| func (declarations DeclarationsByProperty) Less(i, j int) bool { | ||||
| 	return declarations[i].Property < declarations[j].Property | ||||
| } | ||||
							
								
								
									
										230
									
								
								vendor/github.com/aymerick/douceur/css/rule.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										230
									
								
								vendor/github.com/aymerick/douceur/css/rule.go
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,230 +0,0 @@ | ||||
| package css | ||||
|  | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"strings" | ||||
| ) | ||||
|  | ||||
| const ( | ||||
| 	indentSpace = 2 | ||||
| ) | ||||
|  | ||||
| // RuleKind represents a Rule kind | ||||
| type RuleKind int | ||||
|  | ||||
| // Rule kinds | ||||
| const ( | ||||
| 	QualifiedRule RuleKind = iota | ||||
| 	AtRule | ||||
| ) | ||||
|  | ||||
| // At Rules than have Rules inside their block instead of Declarations | ||||
| var atRulesWithRulesBlock = []string{ | ||||
| 	"@document", "@font-feature-values", "@keyframes", "@media", "@supports", | ||||
| } | ||||
|  | ||||
| // Rule represents a parsed CSS rule | ||||
| type Rule struct { | ||||
| 	Kind RuleKind | ||||
|  | ||||
| 	// At Rule name (eg: "@media") | ||||
| 	Name string | ||||
|  | ||||
| 	// Raw prelude | ||||
| 	Prelude string | ||||
|  | ||||
| 	// Qualified Rule selectors parsed from prelude | ||||
| 	Selectors []string | ||||
|  | ||||
| 	// Style properties | ||||
| 	Declarations []*Declaration | ||||
|  | ||||
| 	// At Rule embedded rules | ||||
| 	Rules []*Rule | ||||
|  | ||||
| 	// Current rule embedding level | ||||
| 	EmbedLevel int | ||||
| } | ||||
|  | ||||
| // NewRule instanciates a new Rule | ||||
| func NewRule(kind RuleKind) *Rule { | ||||
| 	return &Rule{ | ||||
| 		Kind: kind, | ||||
| 	} | ||||
| } | ||||
|  | ||||
| // Returns string representation of rule kind | ||||
| func (kind RuleKind) String() string { | ||||
| 	switch kind { | ||||
| 	case QualifiedRule: | ||||
| 		return "Qualified Rule" | ||||
| 	case AtRule: | ||||
| 		return "At Rule" | ||||
| 	default: | ||||
| 		return "WAT" | ||||
| 	} | ||||
| } | ||||
|  | ||||
| // EmbedsRules returns true if this rule embeds another rules | ||||
| func (rule *Rule) EmbedsRules() bool { | ||||
| 	if rule.Kind == AtRule { | ||||
| 		for _, atRuleName := range atRulesWithRulesBlock { | ||||
| 			if rule.Name == atRuleName { | ||||
| 				return true | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	return false | ||||
| } | ||||
|  | ||||
| // Equal returns true if both rules are equals | ||||
| func (rule *Rule) Equal(other *Rule) bool { | ||||
| 	if (rule.Kind != other.Kind) || | ||||
| 		(rule.Prelude != other.Prelude) || | ||||
| 		(rule.Name != other.Name) { | ||||
| 		return false | ||||
| 	} | ||||
|  | ||||
| 	if (len(rule.Selectors) != len(other.Selectors)) || | ||||
| 		(len(rule.Declarations) != len(other.Declarations)) || | ||||
| 		(len(rule.Rules) != len(other.Rules)) { | ||||
| 		return false | ||||
| 	} | ||||
|  | ||||
| 	for i, sel := range rule.Selectors { | ||||
| 		if sel != other.Selectors[i] { | ||||
| 			return false | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	for i, decl := range rule.Declarations { | ||||
| 		if !decl.Equal(other.Declarations[i]) { | ||||
| 			return false | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	for i, rule := range rule.Rules { | ||||
| 		if !rule.Equal(other.Rules[i]) { | ||||
| 			return false | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	return true | ||||
| } | ||||
|  | ||||
| // Diff returns a string representation of rules differences | ||||
| func (rule *Rule) Diff(other *Rule) []string { | ||||
| 	result := []string{} | ||||
|  | ||||
| 	if rule.Kind != other.Kind { | ||||
| 		result = append(result, fmt.Sprintf("Kind: %s | %s", rule.Kind.String(), other.Kind.String())) | ||||
| 	} | ||||
|  | ||||
| 	if rule.Prelude != other.Prelude { | ||||
| 		result = append(result, fmt.Sprintf("Prelude: \"%s\" | \"%s\"", rule.Prelude, other.Prelude)) | ||||
| 	} | ||||
|  | ||||
| 	if rule.Name != other.Name { | ||||
| 		result = append(result, fmt.Sprintf("Name: \"%s\" | \"%s\"", rule.Name, other.Name)) | ||||
| 	} | ||||
|  | ||||
| 	if len(rule.Selectors) != len(other.Selectors) { | ||||
| 		result = append(result, fmt.Sprintf("Selectors: %v | %v", strings.Join(rule.Selectors, ", "), strings.Join(other.Selectors, ", "))) | ||||
| 	} else { | ||||
| 		for i, sel := range rule.Selectors { | ||||
| 			if sel != other.Selectors[i] { | ||||
| 				result = append(result, fmt.Sprintf("Selector: \"%s\" | \"%s\"", sel, other.Selectors[i])) | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	if len(rule.Declarations) != len(other.Declarations) { | ||||
| 		result = append(result, fmt.Sprintf("Declarations Nb: %d | %d", len(rule.Declarations), len(other.Declarations))) | ||||
| 	} else { | ||||
| 		for i, decl := range rule.Declarations { | ||||
| 			if !decl.Equal(other.Declarations[i]) { | ||||
| 				result = append(result, fmt.Sprintf("Declaration: \"%s\" | \"%s\"", decl.String(), other.Declarations[i].String())) | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	if len(rule.Rules) != len(other.Rules) { | ||||
| 		result = append(result, fmt.Sprintf("Rules Nb: %d | %d", len(rule.Rules), len(other.Rules))) | ||||
| 	} else { | ||||
|  | ||||
| 		for i, rule := range rule.Rules { | ||||
| 			if !rule.Equal(other.Rules[i]) { | ||||
| 				result = append(result, fmt.Sprintf("Rule: \"%s\" | \"%s\"", rule.String(), other.Rules[i].String())) | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	return result | ||||
| } | ||||
|  | ||||
| // Returns the string representation of a rule | ||||
| func (rule *Rule) String() string { | ||||
| 	result := "" | ||||
|  | ||||
| 	if rule.Kind == QualifiedRule { | ||||
| 		for i, sel := range rule.Selectors { | ||||
| 			if i != 0 { | ||||
| 				result += ", " | ||||
| 			} | ||||
| 			result += sel | ||||
| 		} | ||||
| 	} else { | ||||
| 		// AtRule | ||||
| 		result += fmt.Sprintf("%s", rule.Name) | ||||
|  | ||||
| 		if rule.Prelude != "" { | ||||
| 			if result != "" { | ||||
| 				result += " " | ||||
| 			} | ||||
| 			result += fmt.Sprintf("%s", rule.Prelude) | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	if (len(rule.Declarations) == 0) && (len(rule.Rules) == 0) { | ||||
| 		result += ";" | ||||
| 	} else { | ||||
| 		result += " {\n" | ||||
|  | ||||
| 		if rule.EmbedsRules() { | ||||
| 			for _, subRule := range rule.Rules { | ||||
| 				result += fmt.Sprintf("%s%s\n", rule.indent(), subRule.String()) | ||||
| 			} | ||||
| 		} else { | ||||
| 			for _, decl := range rule.Declarations { | ||||
| 				result += fmt.Sprintf("%s%s\n", rule.indent(), decl.String()) | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		result += fmt.Sprintf("%s}", rule.indentEndBlock()) | ||||
| 	} | ||||
|  | ||||
| 	return result | ||||
| } | ||||
|  | ||||
| // Returns identation spaces for declarations and rules | ||||
| func (rule *Rule) indent() string { | ||||
| 	result := "" | ||||
|  | ||||
| 	for i := 0; i < ((rule.EmbedLevel + 1) * indentSpace); i++ { | ||||
| 		result += " " | ||||
| 	} | ||||
|  | ||||
| 	return result | ||||
| } | ||||
|  | ||||
| // Returns identation spaces for end of block character | ||||
| func (rule *Rule) indentEndBlock() string { | ||||
| 	result := "" | ||||
|  | ||||
| 	for i := 0; i < (rule.EmbedLevel * indentSpace); i++ { | ||||
| 		result += " " | ||||
| 	} | ||||
|  | ||||
| 	return result | ||||
| } | ||||
							
								
								
									
										25
									
								
								vendor/github.com/aymerick/douceur/css/stylesheet.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										25
									
								
								vendor/github.com/aymerick/douceur/css/stylesheet.go
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -1,25 +0,0 @@ | ||||
| package css | ||||
|  | ||||
| // Stylesheet represents a parsed stylesheet | ||||
| type Stylesheet struct { | ||||
| 	Rules []*Rule | ||||
| } | ||||
|  | ||||
| // NewStylesheet instanciate a new Stylesheet | ||||
| func NewStylesheet() *Stylesheet { | ||||
| 	return &Stylesheet{} | ||||
| } | ||||
|  | ||||
| // Returns string representation of the Stylesheet | ||||
| func (sheet *Stylesheet) String() string { | ||||
| 	result := "" | ||||
|  | ||||
| 	for _, rule := range sheet.Rules { | ||||
| 		if result != "" { | ||||
| 			result += "\n" | ||||
| 		} | ||||
| 		result += rule.String() | ||||
| 	} | ||||
|  | ||||
| 	return result | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 6543
					6543