From cfa0e5cbd4313f3b00803f33a52db045e2adbcd4 Mon Sep 17 00:00:00 2001 From: Mike Lorbetske Date: Fri, 16 Dec 2016 15:15:48 -0800 Subject: [PATCH 01/94] First step to ingest template engine Please do not merge yet @piotrp @seancpeters @livarocc --- src/dotnet/Program.cs | 2 + .../commands/dotnet-new3/AppExtensions.cs | 111 +++ .../dotnet-new3/ExtendedCommandParser.cs | 413 ++++++++++ .../commands/dotnet-new3/HelpFormatter.cs | 228 ++++++ src/dotnet/commands/dotnet-new3/Program.cs | 716 ++++++++++++++++++ src/dotnet/dotnet.csproj | 13 + 6 files changed, 1483 insertions(+) create mode 100644 src/dotnet/commands/dotnet-new3/AppExtensions.cs create mode 100644 src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs create mode 100644 src/dotnet/commands/dotnet-new3/HelpFormatter.cs create mode 100644 src/dotnet/commands/dotnet-new3/Program.cs diff --git a/src/dotnet/Program.cs b/src/dotnet/Program.cs index 4d8786ccf..853a2d9bc 100644 --- a/src/dotnet/Program.cs +++ b/src/dotnet/Program.cs @@ -16,6 +16,7 @@ using Microsoft.DotNet.Tools.List; using Microsoft.DotNet.Tools.Migrate; using Microsoft.DotNet.Tools.MSBuild; using Microsoft.DotNet.Tools.New; +using Microsoft.DotNet.Tools.New3; using Microsoft.DotNet.Tools.NuGet; using Microsoft.DotNet.Tools.Pack; using Microsoft.DotNet.Tools.Publish; @@ -41,6 +42,7 @@ namespace Microsoft.DotNet.Cli ["migrate"] = MigrateCommand.Run, ["msbuild"] = MSBuildCommand.Run, ["new"] = NewCommand.Run, + ["new3"] = New3Command.Run, ["nuget"] = NuGetCommand.Run, ["pack"] = PackCommand.Run, ["publish"] = PublishCommand.Run, diff --git a/src/dotnet/commands/dotnet-new3/AppExtensions.cs b/src/dotnet/commands/dotnet-new3/AppExtensions.cs new file mode 100644 index 000000000..01db5122d --- /dev/null +++ b/src/dotnet/commands/dotnet-new3/AppExtensions.cs @@ -0,0 +1,111 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using Microsoft.DotNet.Cli.CommandLine; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; + +namespace Microsoft.DotNet.Tools.New3 +{ + internal static class AppExtensions + { + public static CommandOption Help(this CommandLineApplication app) + { + return app.Option("-h|--help", "Displays help for this command.", CommandOptionType.NoValue); + } + + public static IReadOnlyDictionary> ParseExtraArgs(this CommandLineApplication app, IList extraArgFileNames) + { + Dictionary> parameters = new Dictionary>(); + + // Note: If the same param is specified multiple times across the files, last-in-wins + // TODO: consider another course of action. + if (extraArgFileNames.Count > 0) + { + foreach (string argFile in extraArgFileNames) + { + using (Stream s = File.OpenRead(argFile)) + using (TextReader r = new StreamReader(s, Encoding.UTF8, true, 4096, true)) + using (JsonTextReader reader = new JsonTextReader(r)) + { + JObject obj = JObject.Load(reader); + + foreach (JProperty property in obj.Properties()) + { + if(property.Value.Type == JTokenType.String) + { + IList values = new List(); + values.Add(property.Value.ToString()); + // adding 2 dashes to the file-based params + // won't work right if there's a param that should have 1 dash + // + // TOOD: come up with a better way to deal with this + parameters["--" + property.Name] = values; + } + } + } + } + } + + for (int i = 0; i < app.RemainingArguments.Count; ++i) + { + string key = app.RemainingArguments[i]; + CommandOption arg = app.Options.FirstOrDefault(x => x.Template.Split('|').Any(y => string.Equals(y, key, StringComparison.OrdinalIgnoreCase))); + bool handled = false; + + if (arg != null) + { + if (arg.OptionType != CommandOptionType.NoValue) + { + handled = arg.TryParse(app.RemainingArguments[i + 1]); + ++i; + } + else + { + handled = arg.TryParse(null); + } + } + + if (handled) + { + continue; + } + + if (!key.StartsWith("-", StringComparison.Ordinal)) + { + throw new Exception("Parameter names must start with -- or -"); + } + + // Check the next value. If it doesn't start with a '-' then it's a value for the current param. + // Otherwise it's its own param. + string value = null; + if (app.RemainingArguments.Count > i + 1) + { + value = app.RemainingArguments[i + 1]; + + if (value.StartsWith("-", StringComparison.Ordinal)) + { + value = null; + } + else + { + ++i; + } + } + + IList valueList; + if (!parameters.TryGetValue(key, out valueList)) + { + valueList = new List(); + parameters.Add(key, valueList); + } + + valueList.Add(value); + } + + return parameters; + } + } +} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs b/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs new file mode 100644 index 000000000..e4f1799a5 --- /dev/null +++ b/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs @@ -0,0 +1,413 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.CompilerServices; +using System.Threading.Tasks; +using Microsoft.DotNet.Cli.CommandLine; +using Microsoft.TemplateEngine.Abstractions; +using Microsoft.TemplateEngine.Edge.Settings; + +namespace Microsoft.DotNet.Tools.New3 +{ + internal class ExtendedCommandParser + { + private CommandLineApplication _app; + + // Hidden & default options. Listed here to avoid clashes with on-the-fly params from individual templates. + private HashSet _defaultCommandOptions; + // key is the variant, value is the canonical version + private IDictionary _hiddenCommandCanonicalMapping; + // key is the canonical version + IDictionary _hiddenCommandOptions; + + // maps the template param variants to the canonical forms + private IDictionary _templateParamCanonicalMapping; + // Canonical form -> data type + private IDictionary _templateParamDataTypeMapping; + + // stores the parsed values + private IDictionary _parsedTemplateParams; + private IDictionary> _parsedInternalParams; + private IDictionary> _parsedRemainingParams; + + // stores the options & arguments that are NOT hidden + // this is used exclusively to show the help. + // it's a bit of a hack. + CommandLineApplication _helpDisplayer; + + public ExtendedCommandParser() + { + _app = new CommandLineApplication(false); + _defaultCommandOptions = new HashSet(); + _hiddenCommandOptions = new Dictionary(); + _hiddenCommandCanonicalMapping = new Dictionary(); + _templateParamCanonicalMapping = new Dictionary(); + _templateParamDataTypeMapping = new Dictionary(); + + _parsedTemplateParams = new Dictionary(); + _parsedInternalParams = new Dictionary>(); + _parsedRemainingParams = new Dictionary>(); + + _helpDisplayer = new CommandLineApplication(false); + } + + // TODO: consider optionally showing help for things not handled by the CommandLineApplication instance + public void ShowHelp() + { + _helpDisplayer.ShowHelp(); + } + + public void RemoveOption(CommandOption option) + { + _app.Options.Remove(option); + } + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + private bool IsParameterNameTaken(string testName) + { + return _defaultCommandOptions.Contains(testName) + || _hiddenCommandCanonicalMapping.ContainsKey(testName) + || _templateParamCanonicalMapping.ContainsKey(testName); + } + + public int Execute(params string[] args) + { + return _app.Execute(args); + } + + public void OnExecute(Func> invoke) + { + _app.OnExecute(invoke); + } + + // Returns the "standard" args that were input - the ones handled by the CommandLineApplication + public List RemainingArguments + { + get { return _app.RemainingArguments; } + } + + public CommandArgument Argument(string parameter, string description) + { + if (IsParameterNameTaken(parameter)) + { + throw new Exception($"Parameter name {parameter} cannot be used for multiple purposes"); + } + + _defaultCommandOptions.Add(parameter); + + // its not hidden, add it to the help + _helpDisplayer.Argument(parameter, description); + + return _app.Argument(parameter, description); + } + + public void InternalOption(string parameterVariants, string canonical, string description, CommandOptionType optionType) + { + _helpDisplayer.Option(parameterVariants, description, optionType); + HiddenInternalOption(parameterVariants, canonical, optionType); + } + + // NOTE: the exceptions here should never happen, this is strictly called by the program + // Once testing is done, we can probably remove them. + public void HiddenInternalOption(string parameterVariants, string canonical, CommandOptionType optionType) + { + string[] parameters = parameterVariants.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries); + + for (int i = 0; i < parameters.Length; i++) + { + if (IsParameterNameTaken(parameters[i])) + { + throw new Exception($"Parameter name {parameters[i]} cannot be used for multiple purposes"); + } + + _hiddenCommandCanonicalMapping.Add(parameters[i], canonical); + } + + _hiddenCommandOptions.Add(canonical, optionType); + } + + public bool TemplateParamHasValue(string paramName) + { + return _parsedTemplateParams.ContainsKey(paramName); + } + + public string TemplateParamValue(string paramName) + { + _parsedTemplateParams.TryGetValue(paramName, out string value); + return value; + } + + // returns a copy of the template params + public IReadOnlyDictionary AllTemplateParams + { + get + { + return new Dictionary(_parsedTemplateParams); + } + } + + public bool InternalParamHasValue(string paramName) + { + return _parsedInternalParams.ContainsKey(paramName); + } + + public string InternalParamValue(string paramName) + { + if (_parsedInternalParams.TryGetValue(paramName, out IList values)) + { + return values.FirstOrDefault(); + } + else + { + return null; + } + } + + public IList InternalParamValueList(string paramName) + { + _parsedInternalParams.TryGetValue(paramName, out IList values); + return values; + } + + public IDictionary> RemainingParameters + { + get + { + return _parsedRemainingParams; + } + } + + // Parses all command line args, and any input arg files. + // NOTE: any previously parsed values are lost - this resets the parsed values. + public void ParseArgs(IList extraArgFileNames = null) + { + _parsedTemplateParams = new Dictionary(); + _parsedInternalParams = new Dictionary>(); + _parsedRemainingParams = new Dictionary>(); + + if (extraArgFileNames == null) + { + extraArgFileNames = new List(); + } + IReadOnlyDictionary> allParameters = _app.ParseExtraArgs(extraArgFileNames); + + foreach (KeyValuePair> param in allParameters) + { + string canonicalName; + if (_hiddenCommandCanonicalMapping.TryGetValue(param.Key, out canonicalName)) + { + CommandOptionType optionType = _hiddenCommandOptions[canonicalName]; + + if (optionType == CommandOptionType.MultipleValue) + { + ; // nothing to check + } + else if (optionType == CommandOptionType.SingleValue) + { + if (param.Value.Count != 1) + { + throw new Exception($"Multiple values specified for single value parameter: {canonicalName}"); + } + } + else // NoValue + { + if (param.Value.Count != 1 || param.Value[0] != null) + { + throw new Exception($"Value specified for valueless parameter: {canonicalName}"); + } + } + + _parsedInternalParams.Add(canonicalName, param.Value); + } + else if (_templateParamCanonicalMapping.TryGetValue(param.Key, out canonicalName)) + { + if (_parsedTemplateParams.ContainsKey(canonicalName)) + { + // error, the same param was specified twice + throw new Exception($"Parameter [{canonicalName}] was specified multiple times, including with the flag [{param.Key}]"); + } + else + { + if ((param.Value[0] == null) && (_templateParamDataTypeMapping[canonicalName] != "bool")) + { + throw new Exception($"Parameter [{param.Key}] ({canonicalName}) must be given a value"); + } + + // TODO: allow for multi-valued params + _parsedTemplateParams[canonicalName] = param.Value[0]; + } + } + else + { + // not a known internal or template param. + _parsedRemainingParams[param.Key] = param.Value; + } + } + } + + // Canonical is the template param name without any dashes. The things mapped to it all have dashes, including the param name itself. + public void SetupTemplateParameters(IParameterSet allParams, IReadOnlyDictionary parameterNameMap) + { + HashSet invalidParams = new HashSet(); + + foreach (ITemplateParameter parameter in allParams.ParameterDefinitions.Where(x => x.Priority != TemplateParameterPriority.Implicit).OrderBy(x => x.Name)) + { + if (parameter.Name.IndexOf(':') >= 0) + { // Colon is reserved, template param names cannot have any. + invalidParams.Add(parameter.Name); + continue; + } + + string flagFullText; + if (parameterNameMap == null || !parameterNameMap.TryGetValue(parameter.Name, out flagFullText)) + { + flagFullText = parameter.Name; + } + + bool longNameFound = false; + bool shortNameFound = false; + + // always unless taken + string nameAsParameter = "--" + flagFullText; + if (!IsParameterNameTaken(nameAsParameter)) + { + MapTemplateParamToCanonical(nameAsParameter, parameter.Name); + longNameFound = true; + } + + // only as fallback + string qualifiedName = "--param:" + flagFullText; + if (!longNameFound && !IsParameterNameTaken(qualifiedName)) + { + MapTemplateParamToCanonical(qualifiedName, parameter.Name); + longNameFound = true; + } + + // always unless taken + string shortName = "-" + PosixNameToShortName(flagFullText); + if (!IsParameterNameTaken(shortName)) + { + MapTemplateParamToCanonical(shortName, parameter.Name); + shortNameFound = true; + } + + // only as fallback + string singleLetterName = "-" + flagFullText.Substring(0, 1); + if (!shortNameFound && !IsParameterNameTaken(singleLetterName)) + { + MapTemplateParamToCanonical(singleLetterName, parameter.Name); + shortNameFound = true; + } + + // only as fallback + string qualifiedShortName = "-p:" + PosixNameToShortName(flagFullText); + if (!shortNameFound && !IsParameterNameTaken(qualifiedShortName)) + { + MapTemplateParamToCanonical(qualifiedShortName, parameter.Name); + shortNameFound = true; + } + + // only as fallback + string qualifiedSingleLetterName = "-p:" + flagFullText.Substring(0, 1); + if (!shortNameFound && !IsParameterNameTaken(qualifiedSingleLetterName)) + { + MapTemplateParamToCanonical(qualifiedSingleLetterName, parameter.Name); + shortNameFound = true; + } + + if (!shortNameFound && !longNameFound) + { + invalidParams.Add(flagFullText); + } + else + { + _templateParamDataTypeMapping[parameter.Name] = parameter.DataType; + } + } + + if (invalidParams.Count > 0) + { + string unusableDisplayList = string.Join(", ", invalidParams); + throw new Exception($"Template is malformed. The following parameter names are invalid: {unusableDisplayList}"); + } + } + + private void MapTemplateParamToCanonical(string variant, string canonical) + { + if (_templateParamCanonicalMapping.TryGetValue(variant, out string existingCanonical)) + { + throw new Exception($"Option variant {variant} for canonical {canonical} was already defined for canonical {existingCanonical}"); + } + + _templateParamCanonicalMapping[variant] = canonical; + } + + // Concats the first letter of dash separated word. + private static string PosixNameToShortName(string name) + { + IList wordsInName = name.Split(new char[] { '-' }, StringSplitOptions.RemoveEmptyEntries).ToList(); + IList firstLetters = new List(); + + foreach (string word in wordsInName) + { + firstLetters.Add(word.Substring(0, 1)); + } + + return string.Join("", firstLetters); + } + + private IDictionary> _canonicalToVariantsTemplateParamMap; + + public IDictionary> CanonicalToVariantsTemplateParamMap + { + get + { + if (_canonicalToVariantsTemplateParamMap == null) + { + _canonicalToVariantsTemplateParamMap = new Dictionary>(); + + foreach (KeyValuePair variantToCanonical in _templateParamCanonicalMapping) + { + string variant = variantToCanonical.Key; + string canonical = variantToCanonical.Value; + + IList variantList; + if (!_canonicalToVariantsTemplateParamMap.TryGetValue(canonical, out variantList)) + { + variantList = new List(); + _canonicalToVariantsTemplateParamMap.Add(canonical, variantList); + } + + variantList.Add(variant); + } + } + + return _canonicalToVariantsTemplateParamMap; + } + } + + public string Name + { + get + { + return _app.Name; + } + set + { + _app.Name = value; + } + } + + public string FullName + { + get + { + return _app.FullName; + } + set + { + _app.FullName = value; + } + } + } +} diff --git a/src/dotnet/commands/dotnet-new3/HelpFormatter.cs b/src/dotnet/commands/dotnet-new3/HelpFormatter.cs new file mode 100644 index 000000000..6dea14662 --- /dev/null +++ b/src/dotnet/commands/dotnet-new3/HelpFormatter.cs @@ -0,0 +1,228 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Microsoft.DotNet.Tools.New3 +{ + public class HelpFormatter + { + public static HelpFormatter For(IEnumerable items, int columnPadding, char? headerSeparator = null, bool blankLineBetweenRows = false) + { + return new HelpFormatter(items, columnPadding, headerSeparator, blankLineBetweenRows); + } + } + + public class HelpFormatter + { + private readonly bool _blankLineBetweenRows; + private readonly int _columnPadding; + private readonly List _columns = new List(); + private readonly char? _headerSeparator; + private readonly IEnumerable _items; + + public HelpFormatter(IEnumerable items, int columnPadding, char? headerSeparator, bool blankLineBetweenRows) + { + _items = items; + _columnPadding = columnPadding; + _headerSeparator = headerSeparator; + _blankLineBetweenRows = blankLineBetweenRows; + } + + public HelpFormatter DefineColumn(Func binder, string header = null, int maxWidth = 0, bool alwaysMaximizeWidth = false) + { + _columns.Add(new ColumnDefinition(header, binder, maxWidth, alwaysMaximizeWidth)); + return this; + } + + public string Layout() + { + Dictionary widthLookup = new Dictionary(); + Dictionary lineCountLookup = new Dictionary(); + List textByRow = new List(); + + TextWrapper[] header = new TextWrapper[_columns.Count]; + int headerLines = 0; + for (int i = 0; i < _columns.Count; ++i) + { + header[i] = new TextWrapper(_columns[i].Header, _columns[i].MaxWidth, _columns[i].AlwaysMaximizeWidth); + headerLines = Math.Max(headerLines, header[i].LineCount); + widthLookup[i] = header[i].MaxWidth; + } + + int lineNumber = 0; + + foreach (T item in _items) + { + TextWrapper[] line = new TextWrapper[_columns.Count]; + int maxLineCount = 0; + + for (int i = 0; i < _columns.Count; ++i) + { + line[i] = _columns[i].GetCell(item); + widthLookup[i] = Math.Max(widthLookup[i], line[i].MaxWidth); + maxLineCount = Math.Max(maxLineCount, line[i].LineCount); + } + + lineCountLookup[lineNumber++] = maxLineCount; + textByRow.Add(line); + } + + StringBuilder b = new StringBuilder(); + + if (_columns.Any(x => !string.IsNullOrEmpty(x.Header))) + { + for (int j = 0; j < headerLines; ++j) + { + for (int i = 0; i < _columns.Count - 1; ++i) + { + b.Append(header[i][j, widthLookup[i]]); + b.Append("".PadRight(_columnPadding)); + } + + b.AppendLine(header[_columns.Count - 1][j, widthLookup[_columns.Count - 1]]); + } + } + + if (_headerSeparator.HasValue) + { + int totalWidth = _columnPadding * (_columns.Count - 1); + + for (int i = 0; i < _columns.Count; ++i) + { + totalWidth += Math.Max(header[i].MaxWidth, widthLookup[i]); + } + + b.AppendLine("".PadRight(totalWidth, _headerSeparator.Value)); + } + + int currentLine = 0; + foreach (TextWrapper[] line in textByRow) + { + for (int j = 0; j < lineCountLookup[currentLine]; ++j) + { + for (int i = 0; i < _columns.Count - 1; ++i) + { + b.Append(line[i][j, widthLookup[i]]); + b.Append("".PadRight(_columnPadding)); + } + + b.AppendLine(line[_columns.Count - 1][j, widthLookup[_columns.Count - 1]]); + } + + if (_blankLineBetweenRows) + { + b.AppendLine(); + } + + ++currentLine; + } + + return b.ToString(); + } + + private class ColumnDefinition + { + private readonly int _maxWidth; + private readonly string _header; + private readonly Func _binder; + private readonly bool _alwaysMaximizeWidth; + + public ColumnDefinition(string header, Func binder, int maxWidth = -1, bool alwaysMaximizeWidth = false) + { + _header = header; + _maxWidth = maxWidth > 0 ? maxWidth : int.MaxValue; + _binder = binder; + _alwaysMaximizeWidth = alwaysMaximizeWidth && maxWidth > 0; + } + + public string Header => _header; + + public bool AlwaysMaximizeWidth => _alwaysMaximizeWidth; + + public int MaxWidth => _maxWidth; + + public TextWrapper GetCell(T value) + { + return new TextWrapper(_binder(value), _maxWidth, _alwaysMaximizeWidth); + } + } + + private class TextWrapper + { + private readonly IReadOnlyList _lines; + + public TextWrapper(string text, int maxWidth, bool alwaysMax) + { + List lines = new List(); + int position = 0; + int realMaxWidth = alwaysMax ? maxWidth : 0; + + while (position < text.Length) + { + int newline = text.IndexOf(Environment.NewLine, position, StringComparison.Ordinal); + + if (newline > -1) + { + if (newline - position <= maxWidth) + { + lines.Add(text.Substring(position, newline - position).TrimEnd()); + position = newline + Environment.NewLine.Length; + } + else + { + GetLineText(text, lines, maxWidth, newline, ref position); + } + } + else + { + GetLineText(text, lines, maxWidth, text.Length - 1, ref position); + } + + realMaxWidth = Math.Max(realMaxWidth, lines[lines.Count - 1].Length); + } + + _lines = lines; + MaxWidth = realMaxWidth; + } + + public int LineCount => _lines.Count; + + public int MaxWidth { get; } + + public string this[int index, int padTo = 0] + { + get { return (_lines.Count > index ? _lines[index] : string.Empty).PadRight(MaxWidth).PadRight(padTo > MaxWidth ? padTo : MaxWidth); } + } + + private static void GetLineText(string text, List lines, int maxLength, int end, ref int position) + { + if (text.Length - position < maxLength) + { + lines.Add(text.Substring(position)); + position = text.Length; + return; + } + + int lastBreak = text.LastIndexOfAny(new[] { ' ', '-' }, end, end - position); + while (lastBreak > 0 && lastBreak - position > maxLength) + { + --lastBreak; + lastBreak = text.LastIndexOfAny(new[] { ' ', '-' }, lastBreak, lastBreak - position); + } + + if (lastBreak > 0) + { + lines.Add(text.Substring(position, lastBreak - position + 1).TrimEnd()); + position = lastBreak + 1; + } + else + { + int properMax = Math.Min(maxLength - 1, text.Length - position); + lines.Add(text.Substring(position, properMax) + '-'); + position += maxLength - 1; + } + } + } + } +} diff --git a/src/dotnet/commands/dotnet-new3/Program.cs b/src/dotnet/commands/dotnet-new3/Program.cs new file mode 100644 index 000000000..daea87610 --- /dev/null +++ b/src/dotnet/commands/dotnet-new3/Program.cs @@ -0,0 +1,716 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Text.RegularExpressions; +using System.Threading.Tasks; +using Microsoft.DotNet.Cli; +using Microsoft.DotNet.Cli.CommandLine; +using Microsoft.DotNet.Cli.Utils; +using Microsoft.TemplateEngine.Abstractions; +using Microsoft.TemplateEngine.Abstractions.Mount; +using Microsoft.TemplateEngine.Edge; +using Microsoft.TemplateEngine.Edge.Settings; +using Microsoft.TemplateEngine.Edge.Template; +using Microsoft.TemplateEngine.Utils; + +namespace Microsoft.DotNet.Tools.New3 +{ + public class New3Command + { + private static readonly string HostIdentifier = "dotnetcli"; + private static readonly Version HostVersion = typeof(Program).GetTypeInfo().Assembly.GetName().Version; + private static DefaultTemplateEngineHost Host; + + private static void SetupInternalCommands(ExtendedCommandParser appExt) + { + // visible + appExt.InternalOption("-l|--list", "--list", "List templates containing the specified name.", CommandOptionType.NoValue); + appExt.InternalOption("-n|--name", "--name", "The name for the output being created. If no name is specified, the name of the current directory is used.", CommandOptionType.SingleValue); + appExt.InternalOption("-h|--help", "--help", "Display help for the indicated template's parameters.", CommandOptionType.NoValue); + + // hidden + appExt.HiddenInternalOption("-d|--dir", "--dir", CommandOptionType.NoValue); + appExt.HiddenInternalOption("-a|--alias", "--alias", CommandOptionType.SingleValue); + appExt.HiddenInternalOption("-x|--extra-args", "--extra-args", CommandOptionType.MultipleValue); + appExt.HiddenInternalOption("--locale", "--locale", CommandOptionType.SingleValue); + appExt.HiddenInternalOption("--quiet", "--quiet", CommandOptionType.NoValue); + appExt.HiddenInternalOption("-i|--install", "--install", CommandOptionType.MultipleValue); + + // reserved but not currently used + appExt.HiddenInternalOption("-up|--update", "--update", CommandOptionType.MultipleValue); + appExt.HiddenInternalOption("-u|--uninstall", "--uninstall", CommandOptionType.MultipleValue); + appExt.HiddenInternalOption("--skip-update-check", "--skip-update-check", CommandOptionType.NoValue); + + // Preserve these for now - they've got the help text, in case we want it back. + // (they'll need to get converted to extended option calls) + // + //CommandOption dirOption = app.Option("-d|--dir", "Indicates whether to create a directory for the generated content.", CommandOptionType.NoValue); + //CommandOption aliasOption = app.Option("-a|--alias", "Creates an alias for the specified template.", CommandOptionType.SingleValue); + //CommandOption parametersFilesOption = app.Option("-x|--extra-args", "Specifies a file containing additional parameters.", CommandOptionType.MultipleValue); + //CommandOption localeOption = app.Option("--locale", "The locale to use", CommandOptionType.SingleValue); + //CommandOption quietOption = app.Option("--quiet", "Doesn't output any status information.", CommandOptionType.NoValue); + //CommandOption installOption = app.Option("-i|--install", "Installs a source or a template pack.", CommandOptionType.MultipleValue); + + //CommandOption update = app.Option("--update", "Update matching templates.", CommandOptionType.NoValue); + } + + public static int Run(string[] args) + { + // Initial host setup has the current locale. May need to be changed based on inputs. + Host = new DefaultTemplateEngineHost(HostIdentifier, HostVersion, CultureInfo.CurrentCulture.Name); + EngineEnvironmentSettings.Host = Host; + + ExtendedCommandParser app = new ExtendedCommandParser() + { + Name = "dotnet new3", + FullName = "Template Instantiation Commands for .NET Core CLI." + }; + SetupInternalCommands(app); + CommandArgument templateNames = app.Argument("template", "The template to instantiate."); + + app.OnExecute(async () => + { + app.ParseArgs(); + if (app.InternalParamHasValue("--extra-args")) + { + app.ParseArgs(app.InternalParamValueList("--extra-args")); + } + + if (app.RemainingParameters.ContainsKey("--debug:attach")) + { + Console.ReadLine(); + } + + if (app.InternalParamHasValue("--locale")) + { + string newLocale = app.InternalParamValue("--locale"); + if (!ValidateLocaleFormat(newLocale)) + { + EngineEnvironmentSettings.Host.LogMessage(string.Format("Invalid format for input locale: [{0}]. Example valid formats: [en] [en-US]", newLocale)); + return -1; + } + + Host.UpdateLocale(newLocale); + } + + int resultCode = InitializationAndDebugging(app, out bool shouldExit); + if (shouldExit) + { + return resultCode; + } + + resultCode = ParseTemplateArgs(app, templateNames.Value, out shouldExit); + if (shouldExit) + { + return resultCode; + } + + resultCode = MaintenanceAndInfo(app, templateNames.Value, out shouldExit); + if (shouldExit) + { + return resultCode; + } + + return await CreateTemplate(app, templateNames.Value); + }); + + int result; + try + { + using (Timing.Over("Execute")) + { + result = app.Execute(args); + } + } + catch (Exception ex) + { + AggregateException ax = ex as AggregateException; + + while (ax != null && ax.InnerExceptions.Count == 1) + { + ex = ax.InnerException; + ax = ex as AggregateException; + } + + Reporter.Error.WriteLine(ex.Message.Bold().Red()); + + while (ex.InnerException != null) + { + ex = ex.InnerException; + ax = ex as AggregateException; + + while (ax != null && ax.InnerExceptions.Count == 1) + { + ex = ax.InnerException; + ax = ex as AggregateException; + } + + Reporter.Error.WriteLine(ex.Message.Bold().Red()); + } + + Reporter.Error.WriteLine(ex.StackTrace.Bold().Red()); + result = 1; + } + + return result; + } + + private static async Task CreateTemplate(ExtendedCommandParser app, string templateName) + { + string nameValue = app.InternalParamValue("--name"); + string fallbackName = new DirectoryInfo(Directory.GetCurrentDirectory()).Name; + bool dirValue = app.InternalParamHasValue("--dir"); + string aliasName = app.InternalParamValue("--alias"); + bool skipUpdateCheckValue = app.InternalParamHasValue("--skip-update-check"); + + // TODO: refactor alias creation out of InstantiateAsync() + TemplateCreationResult instantiateResult = await TemplateCreator.InstantiateAsync(templateName ?? "", nameValue, fallbackName, dirValue, aliasName, app.AllTemplateParams, skipUpdateCheckValue); + + string resultTemplateName = string.IsNullOrEmpty(instantiateResult.TemplateFullName) ? templateName : instantiateResult.TemplateFullName; + + switch (instantiateResult.Status) + { + case CreationResultStatus.AliasSucceeded: + // TODO: get this localized - in the mean time just list the templates, showing the alias + //EngineEnvironmentSettings.Host.LogMessage("Alias creation successful"); + ListTemplates(templateName); + break; + case CreationResultStatus.AliasFailed: + EngineEnvironmentSettings.Host.LogMessage(string.Format("Specified alias {0} already exists. Please specify a different alias.", aliasName)); + ListTemplates(templateName); + break; + case CreationResultStatus.CreateSucceeded: + EngineEnvironmentSettings.Host.LogMessage(string.Format("The template {0} created successfully. Please run \"dotnet restore\" to get started!", resultTemplateName)); + break; + case CreationResultStatus.CreateFailed: + EngineEnvironmentSettings.Host.LogMessage(string.Format("Template {0} could not be created. Error returned was: {1}", resultTemplateName, instantiateResult.Message)); + ListTemplates(templateName); + break; + case CreationResultStatus.InstallSucceeded: + EngineEnvironmentSettings.Host.LogMessage(string.Format("The template {0} installed successfully. You can use \"dotnet new {0}\" to get started with the new template.", resultTemplateName)); + break; + case CreationResultStatus.InstallFailed: + EngineEnvironmentSettings.Host.LogMessage(string.Format("Template {0} could not be created. Error returned was: {1}.", resultTemplateName, instantiateResult.Message)); + break; + case CreationResultStatus.MissingMandatoryParam: + EngineEnvironmentSettings.Host.LogMessage(string.Format("Mandatory parameter {0} missing for template {1}.", instantiateResult.Message, resultTemplateName)); + break; + case CreationResultStatus.TemplateNotFound: + EngineEnvironmentSettings.Host.LogMessage(string.Format("Template {0} could not be created. Error returned was: {1}.", resultTemplateName, instantiateResult.Message)); + ListTemplates(templateName); + break; + default: + break; + } + + return instantiateResult.ResultCode; + } + + private static int InitializationAndDebugging(ExtendedCommandParser app, out bool shouldExit) + { + bool reinitFlag = app.RemainingArguments.Any(x => x == "--debug:reinit"); + if (reinitFlag) + { + Paths.User.FirstRunCookie.Delete(); + } + + // Note: this leaves things in a weird state. Might be related to the localized caches. + // not sure, need to look into it. + if (reinitFlag || app.RemainingArguments.Any(x => x == "--debug:reset-config")) + { + Paths.User.AliasesFile.Delete(); + Paths.User.SettingsFile.Delete(); + TemplateCache.DeleteAllLocaleCacheFiles(); + shouldExit = true; + return 0; + } + + if (!Paths.User.BaseDir.Exists() || !Paths.User.FirstRunCookie.Exists()) + { + if (!app.InternalParamHasValue("--quiet")) + { + Reporter.Output.WriteLine("Getting things ready for first use..."); + } + + ConfigureEnvironment(); + Paths.User.FirstRunCookie.WriteAllText(""); + } + + if (app.RemainingArguments.Any(x => x == "--debug:showconfig")) + { + ShowConfig(); + shouldExit = true; + return 0; + } + + shouldExit = false; + return 0; + } + + private static int ParseTemplateArgs(ExtendedCommandParser app, string templateName, out bool shouldExit) + { + try + { + IReadOnlyCollection templates = TemplateCreator.List(templateName); + if (templates.Count == 1) + { + ITemplateInfo templateInfo = templates.First(); + + ITemplate template = SettingsLoader.LoadTemplate(templateInfo); + IParameterSet allParams = template.Generator.GetParametersForTemplate(template); + IReadOnlyDictionary parameterNameMap = template.Generator.ParameterMapForTemplate(template); + app.SetupTemplateParameters(allParams, parameterNameMap); + } + + // re-parse after setting up the template params + app.ParseArgs(app.InternalParamValueList("--extra-args")); + } + catch (Exception ex) + { + Reporter.Error.WriteLine(ex.Message.Red().Bold()); + app.ShowHelp(); + shouldExit = true; + return -1; + } + + if (app.RemainingParameters.Any(x => !x.Key.StartsWith("--debug:"))) + { + EngineEnvironmentSettings.Host.LogMessage("Invalid input switch:"); + foreach (string flag in app.RemainingParameters.Keys) + { + EngineEnvironmentSettings.Host.LogMessage($"\t{flag}"); + } + + shouldExit = true; + return DisplayHelp(templateName, app, app.AllTemplateParams); + } + + shouldExit = false; + return 0; + } + + private static int MaintenanceAndInfo(ExtendedCommandParser app, string templateName, out bool shouldExit) + { + if (app.InternalParamHasValue("--list")) + { + ListTemplates(templateName); + shouldExit = true; + return -1; + } + + if (app.InternalParamHasValue("--help")) + { + shouldExit = true; + return DisplayHelp(templateName, app, app.AllTemplateParams); + } + + if (app.InternalParamHasValue("--install")) + { + InstallPackages(app.InternalParamValueList("--install").ToList(), app.InternalParamHasValue("--quiet")); + shouldExit = true; + return 0; + } + + //if (update.HasValue()) + //{ + // return PerformUpdateAsync(templateName, quiet, source); + //} + + if (string.IsNullOrEmpty(templateName)) + { + ListTemplates(string.Empty); + shouldExit = true; + return -1; + } + + shouldExit = false; + return 0; + } + + private static Regex _localeFormatRegex = new Regex(@" + ^ + [a-z]{2} + (?:-[A-Z]{2})? + $" + , RegexOptions.IgnorePatternWhitespace); + + private static bool ValidateLocaleFormat(string localeToCheck) + { + return _localeFormatRegex.IsMatch(localeToCheck); + } + + //private static async Task PerformUpdateAsync(string name, bool quiet, CommandOption source) + //{ + // HashSet allSources = new HashSet(); + // HashSet toInstall = new HashSet(StringComparer.OrdinalIgnoreCase); + + // foreach (ITemplate template in TemplateCreator.List(name, source)) + // { + // allSources.Add(template.Source); + // } + + // foreach (IConfiguredTemplateSource src in allSources) + // { + // if (!quiet) + // { + // Reporter.Output.WriteLine($"Checking for updates for {src.Alias}..."); + // } + + // bool updatesReady; + + // if (src.ParentSource != null) + // { + // updatesReady = await src.Source.CheckForUpdatesAsync(src.ParentSource, src.Location); + // } + // else + // { + // updatesReady = await src.Source.CheckForUpdatesAsync(src.Location); + // } + + // if (updatesReady) + // { + // if (!quiet) + // { + // Reporter.Output.WriteLine($"An update for {src.Alias} is available..."); + // } + + // string packageId = src.ParentSource != null + // ? src.Source.GetInstallPackageId(src.ParentSource, src.Location) + // : src.Source.GetInstallPackageId(src.Location); + + // toInstall.Add(packageId); + // } + // } + + // if(toInstall.Count == 0) + // { + // if (!quiet) + // { + // Reporter.Output.WriteLine("No updates were found."); + // } + + // return 0; + // } + + // if (!quiet) + // { + // Reporter.Output.WriteLine("Installing updates..."); + // } + + // List installCommands = new List(); + // List uninstallCommands = new List(); + + // foreach (string packageId in toInstall) + // { + // installCommands.Add("-i"); + // installCommands.Add(packageId); + + // uninstallCommands.Add("-i"); + // uninstallCommands.Add(packageId); + // } + + // installCommands.Add("--quiet"); + // uninstallCommands.Add("--quiet"); + + // Command.CreateDotNet("new3", uninstallCommands).ForwardStdOut().ForwardStdErr().Execute(); + // Command.CreateDotNet("new3", installCommands).ForwardStdOut().ForwardStdErr().Execute(); + // Broker.ComponentRegistry.ForceReinitialize(); + + // if (!quiet) + // { + // Reporter.Output.WriteLine("Done."); + // } + + // return 0; + //} + + private static void ConfigureEnvironment() + { + string userNuGetConfig = $@" + + + + +"; + Paths.User.NuGetConfig.WriteAllText(userNuGetConfig); + + string[] packageList = Paths.Global.DefaultInstallPackageList.ReadAllText().Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); + if (packageList.Length > 0) + { + InstallPackages(packageList, true); + } + + packageList = Paths.Global.DefaultInstallTemplateList.ReadAllText().Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); + if (packageList.Length > 0) + { + InstallPackages(packageList, true); + } + } + + private static void InstallPackages(IReadOnlyList packageNames, bool quiet = false) + { + List toInstall = new List(); + + foreach (string package in packageNames) + { + string pkg = package.Trim(); + pkg = Environment.ExpandEnvironmentVariables(pkg); + + try + { + if (Directory.Exists(pkg) || File.Exists(pkg)) + { + string packageLocation = new DirectoryInfo(pkg).FullName; + TemplateCache.Scan(packageLocation); + } + else + { + string directory = Path.GetDirectoryName(pkg); + string fileGlob = Path.GetFileName(pkg); + string fullDirectory = new DirectoryInfo(directory).FullName; + string fullPathGlob = Path.Combine(fullDirectory, fileGlob); + TemplateCache.Scan(fullPathGlob); + } + } + catch + { + EngineEnvironmentSettings.Host.OnNonCriticalError("InvalidPackageSpecification", string.Format($"Package [{pkg}] is not a valid package specification"), null, 0); + } + } + + TemplateCache.WriteTemplateCaches(); + + if (!quiet) + { + ListTemplates(string.Empty); + } + } + + private static void ListTemplates(string templateNames) + { + IEnumerable results = TemplateCreator.List(templateNames); + HelpFormatter formatter = new HelpFormatter(results, 6, '-', false); + formatter.DefineColumn(delegate (ITemplateInfo t) { return t.Name; }, "Templates"); + formatter.DefineColumn(delegate (ITemplateInfo t) { return $"[{t.ShortName}]"; }, "Short Name"); + formatter.DefineColumn(delegate (ITemplateInfo t) { return AliasRegistry.GetAliasForTemplate(t) ?? ""; }, "Alias"); + Reporter.Output.WriteLine(formatter.Layout()); + } + + private static void ShowConfig() + { + Reporter.Output.WriteLine("dotnet new3 current configuration:"); + Reporter.Output.WriteLine(" "); + TableFormatter.Print(SettingsLoader.MountPoints, "(No Items)", " ", '-', new Dictionary> + { + {"Mount Points", x => x.Place}, + {"Id", x => x.MountPointId}, + {"Parent", x => x.ParentMountPointId}, + {"Factory", x => x.MountPointFactoryId} + }); + + TableFormatter.Print(SettingsLoader.Components.OfType(), "(No Items)", " ", '-', new Dictionary> + { + {"Mount Point Factories", x => x.Id}, + {"Type", x => x.GetType().FullName}, + {"Assembly", x => x.GetType().GetTypeInfo().Assembly.FullName} + }); + + TableFormatter.Print(SettingsLoader.Components.OfType(), "(No Items)", " ", '-', new Dictionary> + { + {"Generators", x => x.Id}, + {"Type", x => x.GetType().FullName}, + {"Assembly", x => x.GetType().GetTypeInfo().Assembly.FullName} + }); + } + + private static int DisplayHelp(string templateNames, ExtendedCommandParser app, IReadOnlyDictionary userParameters) + { + if (string.IsNullOrWhiteSpace(templateNames)) + { // no template specified + app.ShowHelp(); + return 0; + } + + IReadOnlyCollection templates = TemplateCreator.List(templateNames); + + if (templates.Count > 1) + { + ListTemplates(templateNames); + return -1; + } + else if (templates.Count == 1) + { + ITemplateInfo templateInfo = templates.First(); + return TemplateHelp(templateInfo, app, userParameters); + } + else + { + // TODO: add a message indicating no templates matched the pattern. Requires LOC coordination + ListTemplates(string.Empty); + return -1; + } + } + + private static int TemplateHelp(ITemplateInfo templateInfo, ExtendedCommandParser app, IReadOnlyDictionary userParameters) + { + Reporter.Output.WriteLine(templateInfo.Name); + if (!string.IsNullOrWhiteSpace(templateInfo.Author)) + { + Reporter.Output.WriteLine($"Author: {templateInfo.Author}"); + } + + if (!string.IsNullOrWhiteSpace(templateInfo.Description)) + { + Reporter.Output.WriteLine($"Description: {templateInfo.Description}"); + } + + ITemplate template = SettingsLoader.LoadTemplate(templateInfo); + IParameterSet allParams = TemplateCreator.SetupDefaultParamValuesFromTemplateAndHost(template, template.DefaultName); + TemplateCreator.ResolveUserParameters(template, allParams, userParameters); + ParameterHelp(allParams, app); + + return 0; + } + + private static void ParameterHelp(IParameterSet allParams, ExtendedCommandParser app) + { + IEnumerable filteredParams = allParams.ParameterDefinitions.Where(x => x.Priority != TemplateParameterPriority.Implicit); + + if (filteredParams.Any()) + { + HelpFormatter formatter = new HelpFormatter(filteredParams, 2, null, true); + + formatter.DefineColumn(delegate (ITemplateParameter param) + { + // the key is guaranteed to exist + IList variants = app.CanonicalToVariantsTemplateParamMap[param.Name]; + string options = string.Join("|", variants.Reverse()); + return " " + options; + }, + "Options:" + ); + + formatter.DefineColumn(delegate (ITemplateParameter param) + { + StringBuilder displayValue = new StringBuilder(255); + displayValue.AppendLine(param.Documentation); + + if (string.Equals(param.DataType, "choice", StringComparison.OrdinalIgnoreCase)) + { + displayValue.AppendLine(string.Join(", ", param.Choices)); + } + else + { + displayValue.Append(param.DataType ?? "string"); + displayValue.AppendLine(" - " + param.Priority.ToString()); + } + + if (allParams.ResolvedValues.TryGetValue(param, out object resolvedValueObject)) + { + string resolvedValue = resolvedValueObject as string; + + if (!string.IsNullOrEmpty(resolvedValue) + && !string.IsNullOrEmpty(param.DefaultValue) + && !string.Equals(param.DefaultValue, resolvedValue)) + { + displayValue.AppendLine("Configured Value: " + resolvedValue); + } + } + + if (!string.IsNullOrEmpty(param.DefaultValue)) + { + displayValue.AppendLine("Default: " + param.DefaultValue); + } + + return displayValue.ToString(); + }, + string.Empty + ); + + Reporter.Output.WriteLine(formatter.Layout()); + } + else + { + Reporter.Output.WriteLine(" (No Parameters)"); + } + } + } + + internal class TableFormatter + { + public static void Print(IEnumerable items, string noItemsMessage, string columnPad, char header, Dictionary> dictionary) + { + List[] columns = new List[dictionary.Count]; + + for (int i = 0; i < dictionary.Count; ++i) + { + columns[i] = new List(); + } + + string[] headers = new string[dictionary.Count]; + int[] columnWidths = new int[dictionary.Count]; + int valueCount = 0; + + foreach (T item in items) + { + int index = 0; + foreach (KeyValuePair> act in dictionary) + { + headers[index] = act.Key; + columns[index++].Add(act.Value(item)?.ToString() ?? "(null)"); + } + ++valueCount; + } + + if (valueCount > 0) + { + for (int i = 0; i < columns.Length; ++i) + { + columnWidths[i] = Math.Max(columns[i].Max(x => x.Length), headers[i].Length); + } + } + else + { + int index = 0; + foreach (KeyValuePair> act in dictionary) + { + headers[index] = act.Key; + columnWidths[index++] = act.Key.Length; + } + } + + int headerWidth = columnWidths.Sum() + columnPad.Length * (dictionary.Count - 1); + + for (int i = 0; i < headers.Length - 1; ++i) + { + Reporter.Output.Write(headers[i].PadRight(columnWidths[i])); + Reporter.Output.Write(columnPad); + } + + Reporter.Output.WriteLine(headers[headers.Length - 1]); + Reporter.Output.WriteLine("".PadRight(headerWidth, header)); + + for (int i = 0; i < valueCount; ++i) + { + for (int j = 0; j < columns.Length - 1; ++j) + { + Reporter.Output.Write(columns[j][i].PadRight(columnWidths[j])); + Reporter.Output.Write(columnPad); + } + + Reporter.Output.WriteLine(columns[headers.Length - 1][i]); + } + + if (valueCount == 0) + { + Reporter.Output.WriteLine(noItemsMessage); + } + + Reporter.Output.WriteLine(" "); + } + } +} diff --git a/src/dotnet/dotnet.csproj b/src/dotnet/dotnet.csproj index 11905cb8b..877c6dc99 100755 --- a/src/dotnet/dotnet.csproj +++ b/src/dotnet/dotnet.csproj @@ -80,6 +80,19 @@ 1.0.1-beta-000933 + + + 1.0.0-beta1-20161216-12 + + + 1.0.0-beta1-20161216-12 + + + 1.0.0-beta1-20161216-12 + + + 1.0.0-beta1-20161216-12 + From ecfc0e10bafcfcb82f1d9fdacb1e371aa7eb2572 Mon Sep 17 00:00:00 2001 From: Mike Lorbetske Date: Fri, 16 Dec 2016 16:26:22 -0800 Subject: [PATCH 02/94] Localization --- .../commands/dotnet-new3/AppExtensions.cs | 14 +- .../dotnet-new3/ExtendedCommandParser.cs | 26 ++- .../dotnet-new3/LocalizableStrings.cs | 115 +++++++++++++ src/dotnet/commands/dotnet-new3/Program.cs | 156 +++++++++--------- 4 files changed, 211 insertions(+), 100 deletions(-) create mode 100644 src/dotnet/commands/dotnet-new3/LocalizableStrings.cs diff --git a/src/dotnet/commands/dotnet-new3/AppExtensions.cs b/src/dotnet/commands/dotnet-new3/AppExtensions.cs index 01db5122d..e69e15678 100644 --- a/src/dotnet/commands/dotnet-new3/AppExtensions.cs +++ b/src/dotnet/commands/dotnet-new3/AppExtensions.cs @@ -13,7 +13,7 @@ namespace Microsoft.DotNet.Tools.New3 { public static CommandOption Help(this CommandLineApplication app) { - return app.Option("-h|--help", "Displays help for this command.", CommandOptionType.NoValue); + return app.Option("-h|--help", LocalizableStrings.DisplaysHelp, CommandOptionType.NoValue); } public static IReadOnlyDictionary> ParseExtraArgs(this CommandLineApplication app, IList extraArgFileNames) @@ -36,8 +36,11 @@ namespace Microsoft.DotNet.Tools.New3 { if(property.Value.Type == JTokenType.String) { - IList values = new List(); - values.Add(property.Value.ToString()); + IList values = new List + { + property.Value.ToString() + }; + // adding 2 dashes to the file-based params // won't work right if there's a param that should have 1 dash // @@ -75,7 +78,7 @@ namespace Microsoft.DotNet.Tools.New3 if (!key.StartsWith("-", StringComparison.Ordinal)) { - throw new Exception("Parameter names must start with -- or -"); + throw new Exception(LocalizableStrings.ParameterNamePrefixError); } // Check the next value. If it doesn't start with a '-' then it's a value for the current param. @@ -95,8 +98,7 @@ namespace Microsoft.DotNet.Tools.New3 } } - IList valueList; - if (!parameters.TryGetValue(key, out valueList)) + if (!parameters.TryGetValue(key, out var valueList)) { valueList = new List(); parameters.Add(key, valueList); diff --git a/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs b/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs index e4f1799a5..684d41bee 100644 --- a/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs +++ b/src/dotnet/commands/dotnet-new3/ExtendedCommandParser.cs @@ -90,7 +90,7 @@ namespace Microsoft.DotNet.Tools.New3 { if (IsParameterNameTaken(parameter)) { - throw new Exception($"Parameter name {parameter} cannot be used for multiple purposes"); + throw new Exception(string.Format(LocalizableStrings.ParameterReuseError, parameter)); } _defaultCommandOptions.Add(parameter); @@ -117,7 +117,7 @@ namespace Microsoft.DotNet.Tools.New3 { if (IsParameterNameTaken(parameters[i])) { - throw new Exception($"Parameter name {parameters[i]} cannot be used for multiple purposes"); + throw new Exception(string.Format(LocalizableStrings.ParameterReuseError, parameters[i])); } _hiddenCommandCanonicalMapping.Add(parameters[i], canonical); @@ -193,8 +193,7 @@ namespace Microsoft.DotNet.Tools.New3 foreach (KeyValuePair> param in allParameters) { - string canonicalName; - if (_hiddenCommandCanonicalMapping.TryGetValue(param.Key, out canonicalName)) + if (_hiddenCommandCanonicalMapping.TryGetValue(param.Key, out string canonicalName)) { CommandOptionType optionType = _hiddenCommandOptions[canonicalName]; @@ -206,14 +205,14 @@ namespace Microsoft.DotNet.Tools.New3 { if (param.Value.Count != 1) { - throw new Exception($"Multiple values specified for single value parameter: {canonicalName}"); + throw new Exception(string.Format(LocalizableStrings.MultipleValuesSpecifiedForSingleValuedParameter, canonicalName)); } } else // NoValue { if (param.Value.Count != 1 || param.Value[0] != null) { - throw new Exception($"Value specified for valueless parameter: {canonicalName}"); + throw new Exception(string.Format(LocalizableStrings.ValueSpecifiedForValuelessParameter, canonicalName)); } } @@ -224,13 +223,13 @@ namespace Microsoft.DotNet.Tools.New3 if (_parsedTemplateParams.ContainsKey(canonicalName)) { // error, the same param was specified twice - throw new Exception($"Parameter [{canonicalName}] was specified multiple times, including with the flag [{param.Key}]"); + throw new Exception(string.Format(LocalizableStrings.ParameterSpecifiedMultipleTimes, canonicalName, param.Key)); } else { if ((param.Value[0] == null) && (_templateParamDataTypeMapping[canonicalName] != "bool")) { - throw new Exception($"Parameter [{param.Key}] ({canonicalName}) must be given a value"); + throw new Exception(string.Format(LocalizableStrings.ParameterMissingValue, param.Key, canonicalName)); } // TODO: allow for multi-valued params @@ -258,8 +257,7 @@ namespace Microsoft.DotNet.Tools.New3 continue; } - string flagFullText; - if (parameterNameMap == null || !parameterNameMap.TryGetValue(parameter.Name, out flagFullText)) + if (parameterNameMap == null || !parameterNameMap.TryGetValue(parameter.Name, out string flagFullText)) { flagFullText = parameter.Name; } @@ -328,7 +326,7 @@ namespace Microsoft.DotNet.Tools.New3 if (invalidParams.Count > 0) { string unusableDisplayList = string.Join(", ", invalidParams); - throw new Exception($"Template is malformed. The following parameter names are invalid: {unusableDisplayList}"); + throw new Exception(string.Format(LocalizableStrings.TemplateMalformedDueToBadParameters, unusableDisplayList)); } } @@ -336,7 +334,7 @@ namespace Microsoft.DotNet.Tools.New3 { if (_templateParamCanonicalMapping.TryGetValue(variant, out string existingCanonical)) { - throw new Exception($"Option variant {variant} for canonical {canonical} was already defined for canonical {existingCanonical}"); + throw new Exception(string.Format(LocalizableStrings.OptionVariantAlreadyDefined, variant, canonical, existingCanonical)); } _templateParamCanonicalMapping[variant] = canonical; @@ -370,9 +368,7 @@ namespace Microsoft.DotNet.Tools.New3 { string variant = variantToCanonical.Key; string canonical = variantToCanonical.Value; - - IList variantList; - if (!_canonicalToVariantsTemplateParamMap.TryGetValue(canonical, out variantList)) + if (!_canonicalToVariantsTemplateParamMap.TryGetValue(canonical, out var variantList)) { variantList = new List(); _canonicalToVariantsTemplateParamMap.Add(canonical, variantList); diff --git a/src/dotnet/commands/dotnet-new3/LocalizableStrings.cs b/src/dotnet/commands/dotnet-new3/LocalizableStrings.cs new file mode 100644 index 000000000..8cf9fb73f --- /dev/null +++ b/src/dotnet/commands/dotnet-new3/LocalizableStrings.cs @@ -0,0 +1,115 @@ +using System; + +namespace Microsoft.DotNet.Tools.New3 +{ + internal class LocalizableStrings + { + public const string DisplaysHelp = "Displays help for this command."; + + public const string ParameterNamePrefixError = "Parameter names must start with -- or -"; + + public const string ParameterReuseError = "Parameter name {0} cannot be used for multiple purposes"; + + public const string MultipleValuesSpecifiedForSingleValuedParameter = "Multiple values specified for single value parameter: {0}"; + + public const string ValueSpecifiedForValuelessParameter = "Value specified for valueless parameter: {0}"; + + public const string ParameterSpecifiedMultipleTimes = "Parameter [{0}] was specified multiple times, including with the flag [{1}]"; + + public const string ParameterMissingValue = "Parameter [{0}] ({1}) must be given a value"; + + public const string TemplateMalformedDueToBadParameters = "Template is malformed. The following parameter names are invalid: {0}"; + + public const string OptionVariantAlreadyDefined = "Option variant {0} for canonical {1} was already defined for canonical {2}"; + + public const string ListsTemplates = "List templates containing the specified name."; + + public const string NameOfOutput = "The name for the output being created. If no name is specified, the name of the current directory is used."; + + public const string CreateDirectoryHelp = "Indicates whether to create a directory for the generated content."; + + public const string CreateAliasHelp = "Creates an alias for the specified template."; + + public const string ExtraArgsFileHelp = "Specifies a file containing additional parameters."; + + public const string LocaleHelp = "The locale to use"; + + public const string QuietModeHelp = "Doesn't output any status information."; + + public const string InstallHelp = "Installs a source or a template pack."; + + public const string UpdateHelp = "Update matching templates."; + + public const string CommandDescription = "Template Instantiation Commands for .NET Core CLI."; + + public const string TemplateArgumentHelp = "The template to instantiate."; + + public const string BadLocaleError = "Invalid format for input locale: [{0}]. Example valid formats: [en] [en-US]"; + + public const string AliasCreated = "Alias creation successful"; + + public const string AliasAlreadyExists = "Specified alias {0} already exists. Please specify a different alias."; + + public const string CreateSuccessful = "The template {0} created successfully."; + + public const string CreateFailed = "Template {0} could not be created. Error returned was: {1}"; + + public const string InstallSuccessful = "{0} was installed successfully."; + + public const string InstallFailed = "{0} could not be installed. Error returned was: {1}."; + + public const string MissingRequiredParameter = "Mandatory parameter {0} missing for template {1}."; + + public const string GettingReady = "Getting ready..."; + + public const string InvalidInputSwitch = "Invalid input switch:"; + + public const string CheckingForUpdates = "Checking for updates for {0}..."; + + public const string UpdateAvailable = "An update for {0} is available..."; + + public const string NoUpdates = "No updates were found."; + + public const string InstallingUpdates = "Installing updates..."; + + public const string BadPackageSpec = "Package [{0}] is not a valid package specification"; + + public const string Templates = "Templates"; + + public const string ShortName = "Short Name"; + + public const string Alias = "Alias"; + + public const string CurrentConfiguration = "Current configuration:"; + + public const string NoItems = "(No Items)"; + + public const string MountPoints = "Mount Points"; + + public const string MountPointFactories = "Mount Point Factories"; + + public const string Generators = "Generators"; + + public const string Id = "Id"; + + public const string Parent = "Parent"; + + public const string Assembly = "Assembly"; + + public const string Type = "Type"; + + public const string Factory = "Factory"; + + public const string Author = "Author: {0}"; + + public const string Description = "Description: {0}"; + + public const string Options = "Options:"; + + public const string ConfiguredValue = "Configured Value: {0}"; + + public const string DefaultValue = "Default: {0}"; + + public const string NoParameters = " (No Parameters)"; + } +} diff --git a/src/dotnet/commands/dotnet-new3/Program.cs b/src/dotnet/commands/dotnet-new3/Program.cs index daea87610..d59086fc0 100644 --- a/src/dotnet/commands/dotnet-new3/Program.cs +++ b/src/dotnet/commands/dotnet-new3/Program.cs @@ -28,9 +28,9 @@ namespace Microsoft.DotNet.Tools.New3 private static void SetupInternalCommands(ExtendedCommandParser appExt) { // visible - appExt.InternalOption("-l|--list", "--list", "List templates containing the specified name.", CommandOptionType.NoValue); - appExt.InternalOption("-n|--name", "--name", "The name for the output being created. If no name is specified, the name of the current directory is used.", CommandOptionType.SingleValue); - appExt.InternalOption("-h|--help", "--help", "Display help for the indicated template's parameters.", CommandOptionType.NoValue); + appExt.InternalOption("-l|--list", "--list", LocalizableStrings.ListsTemplates, CommandOptionType.NoValue); + appExt.InternalOption("-n|--name", "--name", LocalizableStrings.NameOfOutput, CommandOptionType.SingleValue); + appExt.InternalOption("-h|--help", "--help", LocalizableStrings.DisplaysHelp, CommandOptionType.NoValue); // hidden appExt.HiddenInternalOption("-d|--dir", "--dir", CommandOptionType.NoValue); @@ -48,14 +48,14 @@ namespace Microsoft.DotNet.Tools.New3 // Preserve these for now - they've got the help text, in case we want it back. // (they'll need to get converted to extended option calls) // - //CommandOption dirOption = app.Option("-d|--dir", "Indicates whether to create a directory for the generated content.", CommandOptionType.NoValue); - //CommandOption aliasOption = app.Option("-a|--alias", "Creates an alias for the specified template.", CommandOptionType.SingleValue); - //CommandOption parametersFilesOption = app.Option("-x|--extra-args", "Specifies a file containing additional parameters.", CommandOptionType.MultipleValue); - //CommandOption localeOption = app.Option("--locale", "The locale to use", CommandOptionType.SingleValue); - //CommandOption quietOption = app.Option("--quiet", "Doesn't output any status information.", CommandOptionType.NoValue); - //CommandOption installOption = app.Option("-i|--install", "Installs a source or a template pack.", CommandOptionType.MultipleValue); + //CommandOption dirOption = app.Option("-d|--dir", LocalizableStrings.CreateDirectoryHelp, CommandOptionType.NoValue); + //CommandOption aliasOption = app.Option("-a|--alias", LocalizableStrings.CreateAliasHelp, CommandOptionType.SingleValue); + //CommandOption parametersFilesOption = app.Option("-x|--extra-args", LocalizableString.ExtraArgsFileHelp, CommandOptionType.MultipleValue); + //CommandOption localeOption = app.Option("--locale", LocalizableStrings.LocaleHelp, CommandOptionType.SingleValue); + //CommandOption quietOption = app.Option("--quiet", LocalizableStrings.QuietModeHelp, CommandOptionType.NoValue); + //CommandOption installOption = app.Option("-i|--install", LocalizableStrings.InstallHelp, CommandOptionType.MultipleValue); - //CommandOption update = app.Option("--update", "Update matching templates.", CommandOptionType.NoValue); + //CommandOption update = app.Option("--update", LocalizableStrings.UpdateHelp, CommandOptionType.NoValue); } public static int Run(string[] args) @@ -66,11 +66,11 @@ namespace Microsoft.DotNet.Tools.New3 ExtendedCommandParser app = new ExtendedCommandParser() { - Name = "dotnet new3", - FullName = "Template Instantiation Commands for .NET Core CLI." + Name = "dotnet new", + FullName = LocalizableStrings.CommandDescription }; SetupInternalCommands(app); - CommandArgument templateNames = app.Argument("template", "The template to instantiate."); + CommandArgument templateNames = app.Argument("template", LocalizableStrings.TemplateArgumentHelp); app.OnExecute(async () => { @@ -90,7 +90,7 @@ namespace Microsoft.DotNet.Tools.New3 string newLocale = app.InternalParamValue("--locale"); if (!ValidateLocaleFormat(newLocale)) { - EngineEnvironmentSettings.Host.LogMessage(string.Format("Invalid format for input locale: [{0}]. Example valid formats: [en] [en-US]", newLocale)); + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.BadLocaleError, newLocale)); return -1; } @@ -115,7 +115,7 @@ namespace Microsoft.DotNet.Tools.New3 return resultCode; } - return await CreateTemplate(app, templateNames.Value); + return await CreateTemplateAsync(app, templateNames.Value); }); int result; @@ -159,7 +159,7 @@ namespace Microsoft.DotNet.Tools.New3 return result; } - private static async Task CreateTemplate(ExtendedCommandParser app, string templateName) + private static async Task CreateTemplateAsync(ExtendedCommandParser app, string templateName) { string nameValue = app.InternalParamValue("--name"); string fallbackName = new DirectoryInfo(Directory.GetCurrentDirectory()).Name; @@ -176,32 +176,29 @@ namespace Microsoft.DotNet.Tools.New3 { case CreationResultStatus.AliasSucceeded: // TODO: get this localized - in the mean time just list the templates, showing the alias - //EngineEnvironmentSettings.Host.LogMessage("Alias creation successful"); + //EngineEnvironmentSettings.Host.LogMessage(LocalizableStrings.AliasCreated); ListTemplates(templateName); break; case CreationResultStatus.AliasFailed: - EngineEnvironmentSettings.Host.LogMessage(string.Format("Specified alias {0} already exists. Please specify a different alias.", aliasName)); + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.AliasAlreadyExists, aliasName)); ListTemplates(templateName); break; case CreationResultStatus.CreateSucceeded: - EngineEnvironmentSettings.Host.LogMessage(string.Format("The template {0} created successfully. Please run \"dotnet restore\" to get started!", resultTemplateName)); + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.CreateSuccessful, resultTemplateName)); break; case CreationResultStatus.CreateFailed: - EngineEnvironmentSettings.Host.LogMessage(string.Format("Template {0} could not be created. Error returned was: {1}", resultTemplateName, instantiateResult.Message)); + case CreationResultStatus.TemplateNotFound: + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.CreateFailed, resultTemplateName, instantiateResult.Message)); ListTemplates(templateName); break; case CreationResultStatus.InstallSucceeded: - EngineEnvironmentSettings.Host.LogMessage(string.Format("The template {0} installed successfully. You can use \"dotnet new {0}\" to get started with the new template.", resultTemplateName)); + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.InstallSuccessful, resultTemplateName)); break; case CreationResultStatus.InstallFailed: - EngineEnvironmentSettings.Host.LogMessage(string.Format("Template {0} could not be created. Error returned was: {1}.", resultTemplateName, instantiateResult.Message)); + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.InstallFailed, resultTemplateName, instantiateResult.Message)); break; case CreationResultStatus.MissingMandatoryParam: - EngineEnvironmentSettings.Host.LogMessage(string.Format("Mandatory parameter {0} missing for template {1}.", instantiateResult.Message, resultTemplateName)); - break; - case CreationResultStatus.TemplateNotFound: - EngineEnvironmentSettings.Host.LogMessage(string.Format("Template {0} could not be created. Error returned was: {1}.", resultTemplateName, instantiateResult.Message)); - ListTemplates(templateName); + EngineEnvironmentSettings.Host.LogMessage(string.Format(LocalizableStrings.MissingRequiredParameter, instantiateResult.Message, resultTemplateName)); break; default: break; @@ -233,7 +230,7 @@ namespace Microsoft.DotNet.Tools.New3 { if (!app.InternalParamHasValue("--quiet")) { - Reporter.Output.WriteLine("Getting things ready for first use..."); + Reporter.Output.WriteLine(LocalizableStrings.GettingReady); } ConfigureEnvironment(); @@ -279,7 +276,7 @@ namespace Microsoft.DotNet.Tools.New3 if (app.RemainingParameters.Any(x => !x.Key.StartsWith("--debug:"))) { - EngineEnvironmentSettings.Host.LogMessage("Invalid input switch:"); + EngineEnvironmentSettings.Host.LogMessage(LocalizableStrings.InvalidInputSwitch); foreach (string flag in app.RemainingParameters.Keys) { EngineEnvironmentSettings.Host.LogMessage($"\t{flag}"); @@ -357,7 +354,7 @@ namespace Microsoft.DotNet.Tools.New3 // { // if (!quiet) // { - // Reporter.Output.WriteLine($"Checking for updates for {src.Alias}..."); + // Reporter.Output.WriteLine(string.Format(LocalizableStrings.CheckingForUpdates, src.Alias)); // } // bool updatesReady; @@ -375,7 +372,7 @@ namespace Microsoft.DotNet.Tools.New3 // { // if (!quiet) // { - // Reporter.Output.WriteLine($"An update for {src.Alias} is available..."); + // Reporter.Output.WriteLine(string.Format(LocalizableStrings.UpdateAvailable, src.Alias)); // } // string packageId = src.ParentSource != null @@ -390,7 +387,7 @@ namespace Microsoft.DotNet.Tools.New3 // { // if (!quiet) // { - // Reporter.Output.WriteLine("No updates were found."); + // Reporter.Output.WriteLine(LocalizableStrings.NoUpdates); // } // return 0; @@ -398,7 +395,7 @@ namespace Microsoft.DotNet.Tools.New3 // if (!quiet) // { - // Reporter.Output.WriteLine("Installing updates..."); + // Reporter.Output.WriteLine(LocalizableString.InstallingUpdates); // } // List installCommands = new List(); @@ -416,8 +413,8 @@ namespace Microsoft.DotNet.Tools.New3 // installCommands.Add("--quiet"); // uninstallCommands.Add("--quiet"); - // Command.CreateDotNet("new3", uninstallCommands).ForwardStdOut().ForwardStdErr().Execute(); - // Command.CreateDotNet("new3", installCommands).ForwardStdOut().ForwardStdErr().Execute(); + // Command.CreateDotNet("new", uninstallCommands).ForwardStdOut().ForwardStdErr().Execute(); + // Command.CreateDotNet("new", installCommands).ForwardStdOut().ForwardStdErr().Execute(); // Broker.ComponentRegistry.ForceReinitialize(); // if (!quiet) @@ -430,24 +427,24 @@ namespace Microsoft.DotNet.Tools.New3 private static void ConfigureEnvironment() { - string userNuGetConfig = $@" - - - - -"; - Paths.User.NuGetConfig.WriteAllText(userNuGetConfig); + string[] packageList; - string[] packageList = Paths.Global.DefaultInstallPackageList.ReadAllText().Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); - if (packageList.Length > 0) + if (Paths.Global.DefaultInstallPackageList.FileExists()) { - InstallPackages(packageList, true); + packageList = Paths.Global.DefaultInstallPackageList.ReadAllText().Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); + if (packageList.Length > 0) + { + InstallPackages(packageList, true); + } } - packageList = Paths.Global.DefaultInstallTemplateList.ReadAllText().Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); - if (packageList.Length > 0) + if (Paths.Global.DefaultInstallTemplateList.FileExists()) { - InstallPackages(packageList, true); + packageList = Paths.Global.DefaultInstallTemplateList.ReadAllText().Split(new[] { '\n' }, StringSplitOptions.RemoveEmptyEntries); + if (packageList.Length > 0) + { + InstallPackages(packageList, true); + } } } @@ -478,7 +475,7 @@ namespace Microsoft.DotNet.Tools.New3 } catch { - EngineEnvironmentSettings.Host.OnNonCriticalError("InvalidPackageSpecification", string.Format($"Package [{pkg}] is not a valid package specification"), null, 0); + EngineEnvironmentSettings.Host.OnNonCriticalError("InvalidPackageSpecification", string.Format(LocalizableStrings.BadPackageSpec, pkg), null, 0); } } @@ -494,36 +491,36 @@ namespace Microsoft.DotNet.Tools.New3 { IEnumerable results = TemplateCreator.List(templateNames); HelpFormatter formatter = new HelpFormatter(results, 6, '-', false); - formatter.DefineColumn(delegate (ITemplateInfo t) { return t.Name; }, "Templates"); - formatter.DefineColumn(delegate (ITemplateInfo t) { return $"[{t.ShortName}]"; }, "Short Name"); - formatter.DefineColumn(delegate (ITemplateInfo t) { return AliasRegistry.GetAliasForTemplate(t) ?? ""; }, "Alias"); + formatter.DefineColumn(delegate (ITemplateInfo t) { return t.Name; }, LocalizableStrings.Templates); + formatter.DefineColumn(delegate (ITemplateInfo t) { return $"[{t.ShortName}]"; }, LocalizableStrings.ShortName); + formatter.DefineColumn(delegate (ITemplateInfo t) { return AliasRegistry.GetAliasForTemplate(t) ?? ""; }, LocalizableStrings.Alias); Reporter.Output.WriteLine(formatter.Layout()); } private static void ShowConfig() { - Reporter.Output.WriteLine("dotnet new3 current configuration:"); + Reporter.Output.WriteLine(LocalizableStrings.CurrentConfiguration); Reporter.Output.WriteLine(" "); - TableFormatter.Print(SettingsLoader.MountPoints, "(No Items)", " ", '-', new Dictionary> + TableFormatter.Print(SettingsLoader.MountPoints, LocalizableStrings.NoItems, " ", '-', new Dictionary> { - {"Mount Points", x => x.Place}, - {"Id", x => x.MountPointId}, - {"Parent", x => x.ParentMountPointId}, - {"Factory", x => x.MountPointFactoryId} + {LocalizableStrings.MountPoints, x => x.Place}, + {LocalizableStrings.Id, x => x.MountPointId}, + {LocalizableStrings.Parent, x => x.ParentMountPointId}, + {LocalizableStrings.Factory, x => x.MountPointFactoryId} }); - TableFormatter.Print(SettingsLoader.Components.OfType(), "(No Items)", " ", '-', new Dictionary> + TableFormatter.Print(SettingsLoader.Components.OfType(), LocalizableStrings.NoItems, " ", '-', new Dictionary> { - {"Mount Point Factories", x => x.Id}, - {"Type", x => x.GetType().FullName}, - {"Assembly", x => x.GetType().GetTypeInfo().Assembly.FullName} + {LocalizableStrings.MountPointFactories, x => x.Id}, + {LocalizableStrings.Type, x => x.GetType().FullName}, + {LocalizableStrings.Assembly, x => x.GetType().GetTypeInfo().Assembly.FullName} }); - TableFormatter.Print(SettingsLoader.Components.OfType(), "(No Items)", " ", '-', new Dictionary> + TableFormatter.Print(SettingsLoader.Components.OfType(), LocalizableStrings.NoItems, " ", '-', new Dictionary> { - {"Generators", x => x.Id}, - {"Type", x => x.GetType().FullName}, - {"Assembly", x => x.GetType().GetTypeInfo().Assembly.FullName} + {LocalizableStrings.Generators, x => x.Id}, + {LocalizableStrings.Type, x => x.GetType().FullName}, + {LocalizableStrings.Assembly, x => x.GetType().GetTypeInfo().Assembly.FullName} }); } @@ -560,12 +557,12 @@ namespace Microsoft.DotNet.Tools.New3 Reporter.Output.WriteLine(templateInfo.Name); if (!string.IsNullOrWhiteSpace(templateInfo.Author)) { - Reporter.Output.WriteLine($"Author: {templateInfo.Author}"); + Reporter.Output.WriteLine(string.Format(LocalizableStrings.Author, templateInfo.Author)); } if (!string.IsNullOrWhiteSpace(templateInfo.Description)) { - Reporter.Output.WriteLine($"Description: {templateInfo.Description}"); + Reporter.Output.WriteLine(string.Format(LocalizableStrings.Description, templateInfo.Description)); } ITemplate template = SettingsLoader.LoadTemplate(templateInfo); @@ -584,14 +581,15 @@ namespace Microsoft.DotNet.Tools.New3 { HelpFormatter formatter = new HelpFormatter(filteredParams, 2, null, true); - formatter.DefineColumn(delegate (ITemplateParameter param) - { - // the key is guaranteed to exist - IList variants = app.CanonicalToVariantsTemplateParamMap[param.Name]; - string options = string.Join("|", variants.Reverse()); - return " " + options; - }, - "Options:" + formatter.DefineColumn( + param => + { + // the key is guaranteed to exist + IList variants = app.CanonicalToVariantsTemplateParamMap[param.Name]; + string options = string.Join("|", variants.Reverse()); + return " " + options; + }, + LocalizableStrings.Options ); formatter.DefineColumn(delegate (ITemplateParameter param) @@ -617,13 +615,13 @@ namespace Microsoft.DotNet.Tools.New3 && !string.IsNullOrEmpty(param.DefaultValue) && !string.Equals(param.DefaultValue, resolvedValue)) { - displayValue.AppendLine("Configured Value: " + resolvedValue); + displayValue.AppendLine(string.Format(LocalizableStrings.ConfiguredValue, resolvedValue)); } } if (!string.IsNullOrEmpty(param.DefaultValue)) { - displayValue.AppendLine("Default: " + param.DefaultValue); + displayValue.AppendLine(string.Format(LocalizableStrings.DefaultValue, param.DefaultValue)); } return displayValue.ToString(); @@ -635,7 +633,7 @@ namespace Microsoft.DotNet.Tools.New3 } else { - Reporter.Output.WriteLine(" (No Parameters)"); + Reporter.Output.WriteLine(LocalizableStrings.NoParameters); } } } From 9b4cb6a0721c31a34e5f74b53d759d813742d289 Mon Sep 17 00:00:00 2001 From: Alex Barney Date: Sun, 18 Dec 2016 22:42:54 -0600 Subject: [PATCH 03/94] Add Runtime Identifier option to dotnet-restore * Add an option to specify an RID when restoring * This brings the option from the publish and build command to the restore command --- .../commands/dotnet-restore/LocalizableStrings.cs | 4 ++++ src/dotnet/commands/dotnet-restore/Program.cs | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/src/dotnet/commands/dotnet-restore/LocalizableStrings.cs b/src/dotnet/commands/dotnet-restore/LocalizableStrings.cs index 7b63ee1b7..ac3d8b115 100644 --- a/src/dotnet/commands/dotnet-restore/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-restore/LocalizableStrings.cs @@ -14,6 +14,10 @@ public const string CmdSourceOptionDescription = "Specifies a NuGet package source to use during the restore."; + public const string CmdRuntimeOption = "RUNTIME_IDENTIFIER"; + + public const string CmdRuntimeOptionDescription = "Target runtime to restore packages for."; + public const string CmdPackagesOption = "PACKAGES_DIRECTORY"; public const string CmdPackagesOptionDescription = "Directory to install packages in."; diff --git a/src/dotnet/commands/dotnet-restore/Program.cs b/src/dotnet/commands/dotnet-restore/Program.cs index 8d6e1b390..017c764ae 100644 --- a/src/dotnet/commands/dotnet-restore/Program.cs +++ b/src/dotnet/commands/dotnet-restore/Program.cs @@ -35,6 +35,11 @@ namespace Microsoft.DotNet.Tools.Restore LocalizableStrings.CmdSourceOptionDescription, CommandOptionType.MultipleValue); + var runtimeOption = cmd.Option( + $"-r|--runtime <{LocalizableStrings.CmdRuntimeOption}>", + LocalizableStrings.CmdRuntimeOptionDescription, + CommandOptionType.MultipleValue); + var packagesOption = cmd.Option( $"--packages <{LocalizableStrings.CmdPackagesOption}>", LocalizableStrings.CmdPackagesOptionDescription, @@ -81,6 +86,11 @@ namespace Microsoft.DotNet.Tools.Restore msbuildArgs.Add($"/p:RestoreSources={string.Join("%3B", sourceOption.Values)}"); } + if (runtimeOption.HasValue()) + { + msbuildArgs.Add($"/p:RuntimeIdentifiers={string.Join("%3B", runtimeOption.Values)}"); + } + if (packagesOption.HasValue()) { msbuildArgs.Add($"/p:RestorePackagesPath={packagesOption.Value()}"); From abd496a6f146020a041d22fba230fdd04d01fd52 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Tue, 20 Dec 2016 14:23:11 -0800 Subject: [PATCH 04/94] Adding base add package sub command --- src/dotnet/commands/dotnet-add/Program.cs | 4 +- .../dotnet-add-package/LocalizableStrings.cs | 22 +++ .../dotnet-add/dotnet-add-package/Program.cs | 130 ++++++++++++++++++ 3 files changed, 155 insertions(+), 1 deletion(-) create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs diff --git a/src/dotnet/commands/dotnet-add/Program.cs b/src/dotnet/commands/dotnet-add/Program.cs index 7ddd12e45..e6a5fc452 100644 --- a/src/dotnet/commands/dotnet-add/Program.cs +++ b/src/dotnet/commands/dotnet-add/Program.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using Microsoft.DotNet.Cli; +using Microsoft.DotNet.Tools.Add.PackageReference; using Microsoft.DotNet.Tools.Add.ProjectToProjectReference; using Microsoft.DotNet.Tools.Add.ProjectToSolution; @@ -18,6 +19,7 @@ namespace Microsoft.DotNet.Tools.Add { AddProjectToSolutionCommand.Create, AddProjectToProjectReferenceCommand.Create, + AddPackageReferenceCommand.Create }; public static int Run(string[] args) @@ -26,4 +28,4 @@ namespace Microsoft.DotNet.Tools.Add return command.RunCommand(args); } } -} +} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs new file mode 100644 index 000000000..570cd0e52 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs @@ -0,0 +1,22 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace Microsoft.DotNet.Tools.Add.PackageReference +{ + internal class LocalizableStrings + { + public const string AppFullName = ".NET Add Package reference Command"; + + public const string AppDescription = "Command to add package reference"; + + public const string AppHelpText = "Package references to add"; + + public const string CmdFrameworkDescription = "Add reference only when targetting a specific framework"; + + public const string CmdNoRestoreDescription = "Add reference without performing restore preview and compatibility check."; + + public const string CmdSourceDescription = "Use specific NuGet package sources to use during the restore."; + + public const string CmdPackageDirectoryDescription = "Restore the packages to this Directory ."; + } +} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs new file mode 100644 index 000000000..34976633d --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs @@ -0,0 +1,130 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Text; +using Microsoft.Build.Evaluation; +using Microsoft.DotNet.Cli; +using Microsoft.DotNet.Cli.CommandLine; +using Microsoft.DotNet.Cli.Utils; +using Microsoft.DotNet.Tools.Common; +using Microsoft.DotNet.Tools.MSBuild; +using NuGet.Frameworks; + +namespace Microsoft.DotNet.Tools.Add.PackageReference +{ + internal class AddPackageReferenceCommand : DotNetSubCommandBase + { + private CommandOption _frameworkOption; + private CommandOption _noRestore; + private CommandOption _source; + private CommandOption _packageDirectory; + + public static DotNetSubCommandBase Create() + { + var command = new AddPackageReferenceCommand() + { + Name = "package", + FullName = LocalizableStrings.AppFullName, + Description = LocalizableStrings.AppDescription, + HandleRemainingArguments = true, + ArgumentSeparatorHelpText = LocalizableStrings.AppHelpText, + }; + + command.HelpOption("-h|--help"); + + command._frameworkOption = command.Option( + $"-f|--framework", + LocalizableStrings.CmdFrameworkDescription, + CommandOptionType.SingleValue); + + command._noRestore = command.Option( + $"-n|--no-restore ", + LocalizableStrings.CmdNoRestoreDescription, + CommandOptionType.NoValue); + + command._source = command.Option( + $"-s|--source ", + LocalizableStrings.CmdSourceDescription, + CommandOptionType.SingleValue); + + command._packageDirectory = command.Option( + $"--package-directory", + LocalizableStrings.CmdPackageDirectoryDescription, + CommandOptionType.SingleValue); + + return command; + } + + public override int Run(string fileOrDirectory) + { + WaitForDebugger(); + var projects = new ProjectCollection(); + var msbuildProj = MsbuildProject.FromFileOrDirectory(projects, fileOrDirectory); + + if (RemainingArguments.Count == 0) + { + throw new GracefulException(CommonLocalizableStrings.SpecifyAtLeastOneReferenceToAdd); + } + + var tempDgFilePath = CreateTemporaryFile(".dg"); + + GetProjectDependencyGraph(msbuildProj.ProjectDirectory, tempDgFilePath); + + DisposeTemporaryFile(tempDgFilePath); + + return 0; + } + + private void GetProjectDependencyGraph(string projectFilePath, + string dgFilePath) + { + var args = new List(); + + // Pass the task as generate restore dg file + args.Add("/t:GenerateRestoreGraphFile"); + + // Pass dg file output path + args.Add(string.Format("/p:RestoreGraphOutputPath={0}{1}{2}", '"', dgFilePath, '"')); + + var result = new MSBuildForwardingApp(args).Execute(); + + if (result != 0) + { + throw new GracefulException("Could not generate dg file"); + } + } + + private string CreateTemporaryFile(string extension) + { + var tempDirectory = Path.GetTempPath(); + var tempFile = Path.Combine(tempDirectory, Guid.NewGuid().ToString() + extension); + File.Create(tempFile).Dispose(); + return tempFile; + } + + private void DisposeTemporaryFile(string filePath) + { + if (File.Exists(filePath)) + { + File.Delete(filePath); + } + } + + public void WaitForDebugger() + { + Console.WriteLine("Waiting for debugger to attach."); + Console.WriteLine($"Process ID: {Process.GetCurrentProcess().Id}"); + + while (!Debugger.IsAttached) + { + System.Threading.Thread.Sleep(100); + } + Debugger.Break(); + } + } +} \ No newline at end of file From 3a5b89c24248fae4188fc1eebfdb9e923c72a066 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Tue, 20 Dec 2016 16:25:18 -0800 Subject: [PATCH 05/94] Add package sub command --- .../dotnet-add-package/LocalizableStrings.cs | 4 + .../dotnet-add/dotnet-add-package/Program.cs | 74 ++++++++++++++----- 2 files changed, 60 insertions(+), 18 deletions(-) diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs index 570cd0e52..2e5ddb6df 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs @@ -18,5 +18,9 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public const string CmdSourceDescription = "Use specific NuGet package sources to use during the restore."; public const string CmdPackageDirectoryDescription = "Restore the packages to this Directory ."; + + public const string CmdVersionDescription = "Version for the package to be added."; + + public const string CmdDGFileException = "Unable to Create Dependency graph file for project '{0}'. Cannot add package reference."; } } \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs index 34976633d..aa86d8c0a 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs @@ -13,16 +13,18 @@ using Microsoft.DotNet.Cli.CommandLine; using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.Tools.Common; using Microsoft.DotNet.Tools.MSBuild; +using Microsoft.DotNet.Tools.NuGet; using NuGet.Frameworks; namespace Microsoft.DotNet.Tools.Add.PackageReference { internal class AddPackageReferenceCommand : DotNetSubCommandBase { + private CommandOption _versionOption; private CommandOption _frameworkOption; - private CommandOption _noRestore; - private CommandOption _source; - private CommandOption _packageDirectory; + private CommandOption _noRestoreOption; + private CommandOption _sourceOption; + private CommandOption _packageDirectoryOption; public static DotNetSubCommandBase Create() { @@ -37,22 +39,27 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference command.HelpOption("-h|--help"); + command._versionOption = command.Option( + $"-v|--version", + LocalizableStrings.CmdVersionDescription, + CommandOptionType.SingleValue); + command._frameworkOption = command.Option( $"-f|--framework", LocalizableStrings.CmdFrameworkDescription, CommandOptionType.SingleValue); - command._noRestore = command.Option( + command._noRestoreOption = command.Option( $"-n|--no-restore ", LocalizableStrings.CmdNoRestoreDescription, CommandOptionType.NoValue); - command._source = command.Option( + command._sourceOption = command.Option( $"-s|--source ", LocalizableStrings.CmdSourceDescription, CommandOptionType.SingleValue); - command._packageDirectory = command.Option( + command._packageDirectoryOption = command.Option( $"--package-directory", LocalizableStrings.CmdPackageDirectoryDescription, CommandOptionType.SingleValue); @@ -62,10 +69,10 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public override int Run(string fileOrDirectory) { - WaitForDebugger(); var projects = new ProjectCollection(); var msbuildProj = MsbuildProject.FromFileOrDirectory(projects, fileOrDirectory); + var x = this.Arguments; if (RemainingArguments.Count == 0) { throw new GracefulException(CommonLocalizableStrings.SpecifyAtLeastOneReferenceToAdd); @@ -73,10 +80,10 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference var tempDgFilePath = CreateTemporaryFile(".dg"); - GetProjectDependencyGraph(msbuildProj.ProjectDirectory, tempDgFilePath); - + GetProjectDependencyGraph(msbuildProj.ProjectRootElement.FullPath, tempDgFilePath); + + var result = NuGetCommand.Run(TransformArgs(tempDgFilePath, msbuildProj.ProjectRootElement.FullPath)); DisposeTemporaryFile(tempDgFilePath); - return 0; } @@ -85,6 +92,9 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference { var args = new List(); + // Pass the project file path + args.Add(projectFilePath); + // Pass the task as generate restore dg file args.Add("/t:GenerateRestoreGraphFile"); @@ -95,7 +105,7 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference if (result != 0) { - throw new GracefulException("Could not generate dg file"); + throw new GracefulException(string.Format(LocalizableStrings.CmdDGFileException, projectFilePath)); } } @@ -115,16 +125,44 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference } } - public void WaitForDebugger() + private string[] TransformArgs(string tempDgFilePath, string projectFilePath) { - Console.WriteLine("Waiting for debugger to attach."); - Console.WriteLine($"Process ID: {Process.GetCurrentProcess().Id}"); - - while (!Debugger.IsAttached) + var args = new List(){ + "package", + "add", + "--package", + "Newtonsoft.Json", + "--project", + projectFilePath, + "--dg-file", + tempDgFilePath + }; + if(_versionOption.HasValue()) { - System.Threading.Thread.Sleep(100); + args.Append("--version"); + args.Append(_versionOption.Value()); } - Debugger.Break(); + if(_sourceOption.HasValue()) + { + args.Append("--source"); + args.Append(_sourceOption.Value()); + } + if(_frameworkOption.HasValue()) + { + args.Append("--framework"); + args.Append(_frameworkOption.Value()); + } + if(_noRestoreOption.HasValue()) + { + args.Append("--no-restore"); + } + if(_packageDirectoryOption.HasValue()) + { + args.Append("--package-directory"); + args.Append(_packageDirectoryOption.Value()); + } + + return args.ToArray(); } } } \ No newline at end of file From 0f6e4e3f10a88904e6a541f10168c31b7d48e736 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Tue, 20 Dec 2016 19:48:52 -0800 Subject: [PATCH 06/94] FIxing argument adding --- .../dotnet-add/dotnet-add-package/Program.cs | 68 +++++++++++-------- 1 file changed, 41 insertions(+), 27 deletions(-) diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs index aa86d8c0a..a0ababecc 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs @@ -40,27 +40,27 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference command.HelpOption("-h|--help"); command._versionOption = command.Option( - $"-v|--version", + "-v|--version", LocalizableStrings.CmdVersionDescription, CommandOptionType.SingleValue); command._frameworkOption = command.Option( - $"-f|--framework", + $"-f|--framework <{CommonLocalizableStrings.CmdFramework}>", LocalizableStrings.CmdFrameworkDescription, CommandOptionType.SingleValue); command._noRestoreOption = command.Option( - $"-n|--no-restore ", + "-n|--no-restore ", LocalizableStrings.CmdNoRestoreDescription, CommandOptionType.NoValue); command._sourceOption = command.Option( - $"-s|--source ", + "-s|--source ", LocalizableStrings.CmdSourceDescription, CommandOptionType.SingleValue); command._packageDirectoryOption = command.Option( - $"--package-directory", + "--package-directory", LocalizableStrings.CmdPackageDirectoryDescription, CommandOptionType.SingleValue); @@ -69,22 +69,33 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public override int Run(string fileOrDirectory) { + Console.WriteLine("Waiting for debugger to attach."); + Console.WriteLine($"Process ID: {Process.GetCurrentProcess().Id}"); + + while (!Debugger.IsAttached) + { + System.Threading.Thread.Sleep(100); + } + Debugger.Break(); var projects = new ProjectCollection(); var msbuildProj = MsbuildProject.FromFileOrDirectory(projects, fileOrDirectory); - var x = this.Arguments; if (RemainingArguments.Count == 0) { throw new GracefulException(CommonLocalizableStrings.SpecifyAtLeastOneReferenceToAdd); } - var tempDgFilePath = CreateTemporaryFile(".dg"); + var tempDgFilePath = string.Empty; + if(!_noRestoreOption.HasValue()) + { + // Create a Dependency Graph file for the project + tempDgFilePath = CreateTemporaryFile(".dg"); + GetProjectDependencyGraph(msbuildProj.ProjectRootElement.FullPath, tempDgFilePath); + } - GetProjectDependencyGraph(msbuildProj.ProjectRootElement.FullPath, tempDgFilePath); - var result = NuGetCommand.Run(TransformArgs(tempDgFilePath, msbuildProj.ProjectRootElement.FullPath)); DisposeTemporaryFile(tempDgFilePath); - return 0; + return result; } private void GetProjectDependencyGraph(string projectFilePath, @@ -95,10 +106,10 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference // Pass the project file path args.Add(projectFilePath); - // Pass the task as generate restore dg file + // Pass the task as generate restore Dependency Graph file args.Add("/t:GenerateRestoreGraphFile"); - // Pass dg file output path + // Pass Dependency Graph file output path args.Add(string.Format("/p:RestoreGraphOutputPath={0}{1}{2}", '"', dgFilePath, '"')); var result = new MSBuildForwardingApp(args).Execute(); @@ -133,33 +144,36 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference "--package", "Newtonsoft.Json", "--project", - projectFilePath, - "--dg-file", - tempDgFilePath + projectFilePath }; if(_versionOption.HasValue()) { - args.Append("--version"); - args.Append(_versionOption.Value()); + args.Add("--version"); + args.Add(_versionOption.Value()); } if(_sourceOption.HasValue()) { - args.Append("--source"); - args.Append(_sourceOption.Value()); + args.Add("--source"); + args.Add(_sourceOption.Value()); } if(_frameworkOption.HasValue()) { - args.Append("--framework"); - args.Append(_frameworkOption.Value()); - } - if(_noRestoreOption.HasValue()) - { - args.Append("--no-restore"); + args.Add("--framework"); + args.Add(_frameworkOption.Value()); } if(_packageDirectoryOption.HasValue()) { - args.Append("--package-directory"); - args.Append(_packageDirectoryOption.Value()); + args.Add("--package-directory"); + args.Add(_packageDirectoryOption.Value()); + } + if(_noRestoreOption.HasValue()) + { + args.Add("--no-restore"); + } + else + { + args.Add("--dg-file"); + args.Add(tempDgFilePath); } return args.ToArray(); From 303a267a01b5c2a877d6e95df2a7a45d0d7d9d79 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Wed, 21 Dec 2016 11:44:45 -0800 Subject: [PATCH 07/94] Clean up before PR --- .../dotnet-add-package/LocalizableStrings.cs | 9 +++++++++ .../dotnet-add/dotnet-add-package/Program.cs | 16 ++++------------ 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs index 2e5ddb6df..25986ace6 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs @@ -22,5 +22,14 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public const string CmdVersionDescription = "Version for the package to be added."; public const string CmdDGFileException = "Unable to Create Dependency graph file for project '{0}'. Cannot add package reference."; + + public const string CmdVersion = "VERSION"; + + public const string CmdFramework = "FRAMEWORK"; + + public const string CmdSource = "SOURCE"; + + public const string CmdPackageDirectory = "PACKAGE_DIRECTORY"; + } } \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs index a0ababecc..7f344e4c9 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs @@ -40,12 +40,12 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference command.HelpOption("-h|--help"); command._versionOption = command.Option( - "-v|--version", + $"-v|--version <{LocalizableStrings.CmdVersion}>", LocalizableStrings.CmdVersionDescription, CommandOptionType.SingleValue); command._frameworkOption = command.Option( - $"-f|--framework <{CommonLocalizableStrings.CmdFramework}>", + $"-f|--framework <{LocalizableStrings.CmdFramework}>", LocalizableStrings.CmdFrameworkDescription, CommandOptionType.SingleValue); @@ -55,12 +55,12 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference CommandOptionType.NoValue); command._sourceOption = command.Option( - "-s|--source ", + $"-s|--source <{LocalizableStrings.CmdSource}>", LocalizableStrings.CmdSourceDescription, CommandOptionType.SingleValue); command._packageDirectoryOption = command.Option( - "--package-directory", + $"--package-directory <{LocalizableStrings.CmdPackageDirectory}>", LocalizableStrings.CmdPackageDirectoryDescription, CommandOptionType.SingleValue); @@ -69,14 +69,6 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public override int Run(string fileOrDirectory) { - Console.WriteLine("Waiting for debugger to attach."); - Console.WriteLine($"Process ID: {Process.GetCurrentProcess().Id}"); - - while (!Debugger.IsAttached) - { - System.Threading.Thread.Sleep(100); - } - Debugger.Break(); var projects = new ProjectCollection(); var msbuildProj = MsbuildProject.FromFileOrDirectory(projects, fileOrDirectory); From ac988a4ac92cecb3eb21a58e88cf645f0f2d7279 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Thu, 22 Dec 2016 15:29:29 -0800 Subject: [PATCH 08/94] Fixing on PR comments --- src/dotnet/MsbuildProject.cs | 42 +++++++------- .../dotnet-add-package/LocalizableStrings.cs | 3 +- .../dotnet-add/dotnet-add-package/Program.cs | 58 ++++++++++--------- 3 files changed, 52 insertions(+), 51 deletions(-) diff --git a/src/dotnet/MsbuildProject.cs b/src/dotnet/MsbuildProject.cs index 8d2ec6879..414ebf4cb 100644 --- a/src/dotnet/MsbuildProject.cs +++ b/src/dotnet/MsbuildProject.cs @@ -1,6 +1,10 @@ // Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; using Microsoft.Build.Construction; using Microsoft.Build.Evaluation; using Microsoft.Build.Exceptions; @@ -8,10 +12,6 @@ using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.Tools.Common; using Microsoft.DotNet.Tools.ProjectExtensions; using NuGet.Frameworks; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; namespace Microsoft.DotNet.Tools { @@ -61,6 +61,19 @@ namespace Microsoft.DotNet.Tools } public static MsbuildProject FromDirectory(ProjectCollection projects, string projectDirectory) + { + FileInfo projectFile = GetProjectFileFromDirectory(projectDirectory); + + var project = TryOpenProject(projects, projectFile.FullName); + if (project == null) + { + throw new GracefulException(CommonLocalizableStrings.FoundInvalidProject, projectFile.FullName); + } + + return new MsbuildProject(projects, project); + } + + public static FileInfo GetProjectFileFromDirectory(string projectDirectory) { DirectoryInfo dir; try @@ -90,22 +103,7 @@ namespace Microsoft.DotNet.Tools throw new GracefulException(CommonLocalizableStrings.MoreThanOneProjectInDirectory, projectDirectory); } - FileInfo projectFile = files.First(); - - if (!projectFile.Exists) - { - throw new GracefulException( - CommonLocalizableStrings.CouldNotFindAnyProjectInDirectory, - projectDirectory); - } - - var project = TryOpenProject(projects, projectFile.FullName); - if (project == null) - { - throw new GracefulException(CommonLocalizableStrings.FoundInvalidProject, projectFile.FullName); - } - - return new MsbuildProject(projects, project); + return files.First(); } public int AddProjectToProjectReferences(string framework, IEnumerable refs) @@ -120,7 +118,7 @@ namespace Microsoft.DotNet.Tools if (ProjectRootElement.HasExistingItemWithCondition(framework, @ref)) { Reporter.Output.WriteLine(string.Format( - CommonLocalizableStrings.ProjectAlreadyHasAreference, + CommonLocalizableStrings.ProjectAlreadyHasAreference, @ref)); continue; } @@ -270,4 +268,4 @@ namespace Microsoft.DotNet.Tools } } } -} +} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs index 25986ace6..1290883a3 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/LocalizableStrings.cs @@ -11,6 +11,8 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public const string AppHelpText = "Package references to add"; + public const string SpecifyExactlyOnePackageReference = "Please specify one package reference to add."; + public const string CmdFrameworkDescription = "Add reference only when targetting a specific framework"; public const string CmdNoRestoreDescription = "Add reference without performing restore preview and compatibility check."; @@ -30,6 +32,5 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public const string CmdSource = "SOURCE"; public const string CmdPackageDirectory = "PACKAGE_DIRECTORY"; - } } \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs index 7f344e4c9..1394638e8 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/Program.cs @@ -28,7 +28,7 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public static DotNetSubCommandBase Create() { - var command = new AddPackageReferenceCommand() + var command = new AddPackageReferenceCommand { Name = "package", FullName = LocalizableStrings.AppFullName, @@ -69,29 +69,38 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference public override int Run(string fileOrDirectory) { - var projects = new ProjectCollection(); - var msbuildProj = MsbuildProject.FromFileOrDirectory(projects, fileOrDirectory); - - if (RemainingArguments.Count == 0) + if (RemainingArguments.Count != 1) { - throw new GracefulException(CommonLocalizableStrings.SpecifyAtLeastOneReferenceToAdd); + throw new GracefulException(LocalizableStrings.SpecifyExactlyOnePackageReference); + } + + var projectFilePath = string.Empty; + + if (!File.Exists(fileOrDirectory)) + { + projectFilePath = MsbuildProject.GetProjectFileFromDirectory(fileOrDirectory).FullName; + } + else + { + projectFilePath = fileOrDirectory; } var tempDgFilePath = string.Empty; - if(!_noRestoreOption.HasValue()) + + if (!_noRestoreOption.HasValue()) { // Create a Dependency Graph file for the project - tempDgFilePath = CreateTemporaryFile(".dg"); - GetProjectDependencyGraph(msbuildProj.ProjectRootElement.FullPath, tempDgFilePath); + tempDgFilePath = Path.GetTempFileName(); + GetProjectDependencyGraph(projectFilePath, tempDgFilePath); } - var result = NuGetCommand.Run(TransformArgs(tempDgFilePath, msbuildProj.ProjectRootElement.FullPath)); + var result = NuGetCommand.Run(TransformArgs(RemainingArguments.First(), tempDgFilePath, projectFilePath)); DisposeTemporaryFile(tempDgFilePath); + return result; } - private void GetProjectDependencyGraph(string projectFilePath, - string dgFilePath) + private void GetProjectDependencyGraph(string projectFilePath, string dgFilePath) { var args = new List(); @@ -102,7 +111,7 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference args.Add("/t:GenerateRestoreGraphFile"); // Pass Dependency Graph file output path - args.Add(string.Format("/p:RestoreGraphOutputPath={0}{1}{2}", '"', dgFilePath, '"')); + args.Add($"/p:RestoreGraphOutputPath=\"{dgFilePath}\""); var result = new MSBuildForwardingApp(args).Execute(); @@ -112,14 +121,6 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference } } - private string CreateTemporaryFile(string extension) - { - var tempDirectory = Path.GetTempPath(); - var tempFile = Path.Combine(tempDirectory, Guid.NewGuid().ToString() + extension); - File.Create(tempFile).Dispose(); - return tempFile; - } - private void DisposeTemporaryFile(string filePath) { if (File.Exists(filePath)) @@ -128,37 +129,38 @@ namespace Microsoft.DotNet.Tools.Add.PackageReference } } - private string[] TransformArgs(string tempDgFilePath, string projectFilePath) + private string[] TransformArgs(string packageId, string tempDgFilePath, string projectFilePath) { var args = new List(){ "package", "add", "--package", - "Newtonsoft.Json", + packageId, "--project", projectFilePath }; - if(_versionOption.HasValue()) + + if (_versionOption.HasValue()) { args.Add("--version"); args.Add(_versionOption.Value()); } - if(_sourceOption.HasValue()) + if (_sourceOption.HasValue()) { args.Add("--source"); args.Add(_sourceOption.Value()); } - if(_frameworkOption.HasValue()) + if (_frameworkOption.HasValue()) { args.Add("--framework"); args.Add(_frameworkOption.Value()); } - if(_packageDirectoryOption.HasValue()) + if (_packageDirectoryOption.HasValue()) { args.Add("--package-directory"); args.Add(_packageDirectoryOption.Value()); } - if(_noRestoreOption.HasValue()) + if (_noRestoreOption.HasValue()) { args.Add("--no-restore"); } From 5580b4018147a0ca96652e5be34e84cce52b064a Mon Sep 17 00:00:00 2001 From: v-mdriml Date: Fri, 23 Dec 2016 17:16:52 +0100 Subject: [PATCH 09/94] Loc HB XLF files --- .../xlf/LocalizableStrings.cs.xlf | 28 +-- .../xlf/LocalizableStrings.de.xlf | 28 +-- .../xlf/LocalizableStrings.es.xlf | 28 +-- .../xlf/LocalizableStrings.fr.xlf | 28 +-- .../xlf/LocalizableStrings.it.xlf | 28 +-- .../xlf/LocalizableStrings.ja.xlf | 28 +-- .../xlf/LocalizableStrings.ko.xlf | 28 +-- .../xlf/LocalizableStrings.pl.xlf | 28 +-- .../xlf/LocalizableStrings.pt-BR.xlf | 28 +-- .../xlf/LocalizableStrings.ru.xlf | 28 +-- .../xlf/LocalizableStrings.tr.xlf | 28 +-- .../xlf/LocalizableStrings.zh-Hans.xlf | 28 +-- .../xlf/LocalizableStrings.zh-Hant.xlf | 28 +-- .../xlf/LocalizableStrings.cs.xlf | 168 ++++++------- .../xlf/LocalizableStrings.de.xlf | 168 ++++++------- .../xlf/LocalizableStrings.es.xlf | 168 ++++++------- .../xlf/LocalizableStrings.fr.xlf | 168 ++++++------- .../xlf/LocalizableStrings.it.xlf | 168 ++++++------- .../xlf/LocalizableStrings.ja.xlf | 168 ++++++------- .../xlf/LocalizableStrings.ko.xlf | 168 ++++++------- .../xlf/LocalizableStrings.pl.xlf | 168 ++++++------- .../xlf/LocalizableStrings.pt-BR.xlf | 168 ++++++------- .../xlf/LocalizableStrings.ru.xlf | 168 ++++++------- .../xlf/LocalizableStrings.tr.xlf | 168 ++++++------- .../xlf/LocalizableStrings.zh-Hans.xlf | 168 ++++++------- .../xlf/LocalizableStrings.zh-Hant.xlf | 168 ++++++------- .../xlf/LocalizableStrings.cs.xlf | 22 +- .../xlf/LocalizableStrings.de.xlf | 22 +- .../xlf/LocalizableStrings.es.xlf | 22 +- .../xlf/LocalizableStrings.fr.xlf | 22 +- .../xlf/LocalizableStrings.it.xlf | 22 +- .../xlf/LocalizableStrings.ja.xlf | 22 +- .../xlf/LocalizableStrings.ko.xlf | 22 +- .../xlf/LocalizableStrings.pl.xlf | 22 +- .../xlf/LocalizableStrings.pt-BR.xlf | 22 +- .../xlf/LocalizableStrings.ru.xlf | 22 +- .../xlf/LocalizableStrings.tr.xlf | 22 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 22 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 22 +- .../xlf/LocalizableStrings.cs.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.de.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.es.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.fr.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.it.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.ja.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.ko.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.pl.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.pt-BR.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.ru.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.tr.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.zh-Hans.xlf | 236 +++++++++--------- .../xlf/LocalizableStrings.zh-Hant.xlf | 236 +++++++++--------- .../CommandLine/xlf/LocalizableStrings.cs.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.de.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.es.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.fr.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.it.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.ja.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.ko.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.pl.xlf | 112 ++++----- .../xlf/LocalizableStrings.pt-BR.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.ru.xlf | 112 ++++----- .../CommandLine/xlf/LocalizableStrings.tr.xlf | 112 ++++----- .../xlf/LocalizableStrings.zh-Hans.xlf | 112 ++++----- .../xlf/LocalizableStrings.zh-Hant.xlf | 112 ++++----- .../xlf/LocalizableStrings.cs.xlf | 12 +- .../xlf/LocalizableStrings.de.xlf | 12 +- .../xlf/LocalizableStrings.es.xlf | 12 +- .../xlf/LocalizableStrings.fr.xlf | 12 +- .../xlf/LocalizableStrings.it.xlf | 12 +- .../xlf/LocalizableStrings.ja.xlf | 12 +- .../xlf/LocalizableStrings.ko.xlf | 12 +- .../xlf/LocalizableStrings.pl.xlf | 12 +- .../xlf/LocalizableStrings.pt-BR.xlf | 12 +- .../xlf/LocalizableStrings.ru.xlf | 12 +- .../xlf/LocalizableStrings.tr.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 12 +- .../xlf/LocalizableStrings.cs.xlf | 20 +- .../xlf/LocalizableStrings.de.xlf | 20 +- .../xlf/LocalizableStrings.es.xlf | 20 +- .../xlf/LocalizableStrings.fr.xlf | 20 +- .../xlf/LocalizableStrings.it.xlf | 20 +- .../xlf/LocalizableStrings.ja.xlf | 20 +- .../xlf/LocalizableStrings.ko.xlf | 20 +- .../xlf/LocalizableStrings.pl.xlf | 20 +- .../xlf/LocalizableStrings.pt-BR.xlf | 20 +- .../xlf/LocalizableStrings.ru.xlf | 20 +- .../xlf/LocalizableStrings.tr.xlf | 20 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 20 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 20 +- .../xlf/LocalizableStrings.cs.xlf | 12 +- .../xlf/LocalizableStrings.de.xlf | 12 +- .../xlf/LocalizableStrings.es.xlf | 12 +- .../xlf/LocalizableStrings.fr.xlf | 12 +- .../xlf/LocalizableStrings.it.xlf | 12 +- .../xlf/LocalizableStrings.ja.xlf | 12 +- .../xlf/LocalizableStrings.ko.xlf | 12 +- .../xlf/LocalizableStrings.pl.xlf | 12 +- .../xlf/LocalizableStrings.pt-BR.xlf | 12 +- .../xlf/LocalizableStrings.ru.xlf | 12 +- .../xlf/LocalizableStrings.tr.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 12 +- .../dotnet-help/xlf/LocalizableStrings.cs.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.de.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.es.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.fr.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.it.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.ja.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.ko.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.pl.xlf | 60 ++--- .../xlf/LocalizableStrings.pt-BR.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.ru.xlf | 60 ++--- .../dotnet-help/xlf/LocalizableStrings.tr.xlf | 60 ++--- .../xlf/LocalizableStrings.zh-Hans.xlf | 60 ++--- .../xlf/LocalizableStrings.zh-Hant.xlf | 60 ++--- .../xlf/LocalizableStrings.cs.xlf | 14 +- .../xlf/LocalizableStrings.de.xlf | 14 +- .../xlf/LocalizableStrings.es.xlf | 14 +- .../xlf/LocalizableStrings.fr.xlf | 14 +- .../xlf/LocalizableStrings.it.xlf | 14 +- .../xlf/LocalizableStrings.ja.xlf | 14 +- .../xlf/LocalizableStrings.ko.xlf | 14 +- .../xlf/LocalizableStrings.pl.xlf | 14 +- .../xlf/LocalizableStrings.pt-BR.xlf | 14 +- .../xlf/LocalizableStrings.ru.xlf | 14 +- .../xlf/LocalizableStrings.tr.xlf | 14 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 14 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 14 +- .../xlf/LocalizableStrings.cs.xlf | 8 +- .../xlf/LocalizableStrings.de.xlf | 8 +- .../xlf/LocalizableStrings.es.xlf | 8 +- .../xlf/LocalizableStrings.fr.xlf | 8 +- .../xlf/LocalizableStrings.it.xlf | 8 +- .../xlf/LocalizableStrings.ja.xlf | 8 +- .../xlf/LocalizableStrings.ko.xlf | 8 +- .../xlf/LocalizableStrings.pl.xlf | 8 +- .../xlf/LocalizableStrings.pt-BR.xlf | 8 +- .../xlf/LocalizableStrings.ru.xlf | 8 +- .../xlf/LocalizableStrings.tr.xlf | 8 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 8 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 8 +- .../dotnet-list/xlf/LocalizableStrings.cs.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.de.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.es.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.fr.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.it.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.ja.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.ko.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.pl.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.ru.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 4 +- .../xlf/LocalizableStrings.cs.xlf | 19 +- .../xlf/LocalizableStrings.de.xlf | 17 +- .../xlf/LocalizableStrings.es.xlf | 15 +- .../xlf/LocalizableStrings.fr.xlf | 19 +- .../xlf/LocalizableStrings.it.xlf | 17 +- .../xlf/LocalizableStrings.ja.xlf | 13 +- .../xlf/LocalizableStrings.ko.xlf | 11 +- .../xlf/LocalizableStrings.pl.xlf | 17 +- .../xlf/LocalizableStrings.pt-BR.xlf | 17 +- .../xlf/LocalizableStrings.ru.xlf | 17 +- .../xlf/LocalizableStrings.tr.xlf | 11 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 15 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 17 +- .../xlf/LocalizableStrings.cs.xlf | 4 +- .../xlf/LocalizableStrings.de.xlf | 4 +- .../xlf/LocalizableStrings.es.xlf | 4 +- .../xlf/LocalizableStrings.fr.xlf | 4 +- .../xlf/LocalizableStrings.it.xlf | 4 +- .../xlf/LocalizableStrings.ja.xlf | 4 +- .../xlf/LocalizableStrings.ko.xlf | 4 +- .../xlf/LocalizableStrings.pl.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 4 +- .../xlf/LocalizableStrings.ru.xlf | 4 +- .../xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 4 +- .../dotnet-pack/xlf/LocalizableStrings.cs.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.de.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.es.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.fr.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.it.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.ja.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.ko.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.pl.xlf | 28 +-- .../xlf/LocalizableStrings.pt-BR.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.ru.xlf | 28 +-- .../dotnet-pack/xlf/LocalizableStrings.tr.xlf | 28 +-- .../xlf/LocalizableStrings.zh-Hans.xlf | 28 +-- .../xlf/LocalizableStrings.zh-Hant.xlf | 28 +-- .../xlf/LocalizableStrings.cs.xlf | 20 +- .../xlf/LocalizableStrings.de.xlf | 20 +- .../xlf/LocalizableStrings.es.xlf | 20 +- .../xlf/LocalizableStrings.fr.xlf | 20 +- .../xlf/LocalizableStrings.it.xlf | 20 +- .../xlf/LocalizableStrings.ja.xlf | 20 +- .../xlf/LocalizableStrings.ko.xlf | 20 +- .../xlf/LocalizableStrings.pl.xlf | 20 +- .../xlf/LocalizableStrings.pt-BR.xlf | 20 +- .../xlf/LocalizableStrings.ru.xlf | 20 +- .../xlf/LocalizableStrings.tr.xlf | 20 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 20 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 20 +- .../xlf/LocalizableStrings.cs.xlf | 4 +- .../xlf/LocalizableStrings.de.xlf | 4 +- .../xlf/LocalizableStrings.es.xlf | 4 +- .../xlf/LocalizableStrings.fr.xlf | 4 +- .../xlf/LocalizableStrings.it.xlf | 4 +- .../xlf/LocalizableStrings.ja.xlf | 4 +- .../xlf/LocalizableStrings.ko.xlf | 4 +- .../xlf/LocalizableStrings.pl.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 4 +- .../xlf/LocalizableStrings.ru.xlf | 4 +- .../xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 4 +- .../xlf/LocalizableStrings.cs.xlf | 12 +- .../xlf/LocalizableStrings.de.xlf | 12 +- .../xlf/LocalizableStrings.es.xlf | 12 +- .../xlf/LocalizableStrings.fr.xlf | 12 +- .../xlf/LocalizableStrings.it.xlf | 12 +- .../xlf/LocalizableStrings.ja.xlf | 12 +- .../xlf/LocalizableStrings.ko.xlf | 12 +- .../xlf/LocalizableStrings.pl.xlf | 12 +- .../xlf/LocalizableStrings.pt-BR.xlf | 12 +- .../xlf/LocalizableStrings.ru.xlf | 12 +- .../xlf/LocalizableStrings.tr.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 12 +- .../xlf/LocalizableStrings.cs.xlf | 20 +- .../xlf/LocalizableStrings.de.xlf | 20 +- .../xlf/LocalizableStrings.es.xlf | 20 +- .../xlf/LocalizableStrings.fr.xlf | 20 +- .../xlf/LocalizableStrings.it.xlf | 20 +- .../xlf/LocalizableStrings.ja.xlf | 20 +- .../xlf/LocalizableStrings.ko.xlf | 20 +- .../xlf/LocalizableStrings.pl.xlf | 20 +- .../xlf/LocalizableStrings.pt-BR.xlf | 20 +- .../xlf/LocalizableStrings.ru.xlf | 20 +- .../xlf/LocalizableStrings.tr.xlf | 20 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 20 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 20 +- .../dotnet-run/xlf/LocalizableStrings.cs.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.de.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.es.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.fr.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.it.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.ja.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.ko.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.pl.xlf | 12 +- .../xlf/LocalizableStrings.pt-BR.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.ru.xlf | 12 +- .../dotnet-run/xlf/LocalizableStrings.tr.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 12 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 12 +- .../dotnet-test/xlf/LocalizableStrings.cs.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.de.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.es.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.fr.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.it.xlf | 47 ++-- .../dotnet-test/xlf/LocalizableStrings.ja.xlf | 47 ++-- .../dotnet-test/xlf/LocalizableStrings.ko.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.pl.xlf | 45 ++-- .../xlf/LocalizableStrings.pt-BR.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.ru.xlf | 45 ++-- .../dotnet-test/xlf/LocalizableStrings.tr.xlf | 45 ++-- .../xlf/LocalizableStrings.zh-Hans.xlf | 45 ++-- .../xlf/LocalizableStrings.zh-Hant.xlf | 47 ++-- .../xlf/CommonLocalizableStrings.cs.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.de.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.es.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.fr.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.it.xlf | 66 ++--- .../xlf/CommonLocalizableStrings.ja.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.ko.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.pl.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.pt-BR.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.ru.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.tr.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.zh-Hans.xlf | 60 ++--- .../xlf/CommonLocalizableStrings.zh-Hant.xlf | 60 ++--- src/dotnet/xlf/LocalizableStrings.it.xlf | 4 +- 287 files changed, 5980 insertions(+), 5954 deletions(-) diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf index f2ae043a3..7f2fffc56 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Několikrát zadaný globální oddíl + Global section not closed - Global section not closed - + Neuzavřený globální oddíl + File header is missing - File header is missing - + Chybí hlavička souboru + Project section not closed - Project section not closed - + Neuzavřený oddíl projektu + Invalid section type: {0} - Invalid section type: {0} - + Neplatný typ oddílu: {0} + Section id missing - Section id missing - + Chybí ID oddílu + Closing section tag not found - Closing section tag not found - + Nenalezena koncová značka oddílu + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf index fd3ae9901..7712e951e 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Globaler Abschnitt mehrmals angegeben + Global section not closed - Global section not closed - + Globaler Abschnitt nicht geschlossen + File header is missing - File header is missing - + Dateiheader fehlt + Project section not closed - Project section not closed - + Projektabschnitt nicht geschlossen + Invalid section type: {0} - Invalid section type: {0} - + Ungültiger Abschnittstyp: {0} + Section id missing - Section id missing - + Abschnitts-ID fehlt + Closing section tag not found - Closing section tag not found - + Schließendes Abschnittstag nicht gefunden + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf index 189301973..e4709087c 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Sección global especificada más de una vez + Global section not closed - Global section not closed - + Sección global no cerrada + File header is missing - File header is missing - + Encabezado de archivo omitido + Project section not closed - Project section not closed - + Sección de proyecto no cerrada + Invalid section type: {0} - Invalid section type: {0} - + Tipo de sección no válido: {0} + Section id missing - Section id missing - + Id. de sección omitido + Closing section tag not found - Closing section tag not found - + No se encuentra la etiqueta de cierre de la sección + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf index 66a5e89b6..5be1cb145 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Section Global spécifiée plusieurs fois + Global section not closed - Global section not closed - + Section Global non fermée + File header is missing - File header is missing - + En-tête de fichier manquant + Project section not closed - Project section not closed - + Section Project non fermée + Invalid section type: {0} - Invalid section type: {0} - + Type de section non valide : {0} + Section id missing - Section id missing - + ID de section manquant + Closing section tag not found - Closing section tag not found - + Balise de fermeture de section introuvable + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf index 1f16f86d8..68092a9dc 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + La sezione Global è stata specificata più di una volta + Global section not closed - Global section not closed - + La sezione Global non è stata chiusa + File header is missing - File header is missing - + Manca l'intestazione del file + Project section not closed - Project section not closed - + La sezione Project non è stata chiusa + Invalid section type: {0} - Invalid section type: {0} - + Tipo di sezione non valido: {0} + Section id missing - Section id missing - + Manca l'ID sezione + Closing section tag not found - Closing section tag not found - + Il tag di chiusura sessione non è stato trovato + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf index 9cc3cc509..922340c6f 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + グローバル セクションが 2 回以上指定されています + Global section not closed - Global section not closed - + グローバル セクションが閉じられていません + File header is missing - File header is missing - + ファイル ヘッダーがありません + Project section not closed - Project section not closed - + プロジェクト セクションが閉じられていません + Invalid section type: {0} - Invalid section type: {0} - + 無効なセクションの種類: {0} + Section id missing - Section id missing - + セクション ID がありません + Closing section tag not found - Closing section tag not found - + 終了セクション タグが見つかりません + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf index c73914f84..e13abead4 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + 전역 섹션이 두 번 이상 지정됨 + Global section not closed - Global section not closed - + 전역 섹션이 닫히지 않음 + File header is missing - File header is missing - + 파일 헤더가 누락됨 + Project section not closed - Project section not closed - + 프로젝트 섹션이 닫히지 않음 + Invalid section type: {0} - Invalid section type: {0} - + 잘못된 섹션 유형: {0} + Section id missing - Section id missing - + 섹션 ID가 누락됨 + Closing section tag not found - Closing section tag not found - + 닫기 섹션 태그를 찾을 수 없음 + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf index 170dbe3a6..8fb1024ee 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Sekcja globalna została określona więcej niż raz + Global section not closed - Global section not closed - + Nie zamknięto sekcji globalnej + File header is missing - File header is missing - + Brak nagłówka pliku + Project section not closed - Project section not closed - + Nie zamknięto sekcji projektu + Invalid section type: {0} - Invalid section type: {0} - + Nieprawidłowy typ sekcji: {0} + Section id missing - Section id missing - + Brak identyfikatora sekcji + Closing section tag not found - Closing section tag not found - + Nie odnaleziono tagu zamykającego sekcję + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf index 78293003a..d9f58551d 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Seção global especificada mais de uma vez + Global section not closed - Global section not closed - + Seção global não fechada + File header is missing - File header is missing - + Cabeçalho de arquivo ausente + Project section not closed - Project section not closed - + Seção de projeto não fechada + Invalid section type: {0} - Invalid section type: {0} - + Tipo de seção inválido: {0} + Section id missing - Section id missing - + ID de sessão ausente + Closing section tag not found - Closing section tag not found - + Marca de fechamento de seção não encontrada + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf index b3d4ad03e..e1e1a44ec 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Глобальный раздел указан более одного раза. + Global section not closed - Global section not closed - + Глобальный раздел не закрыт. + File header is missing - File header is missing - + Отсутствует заголовок файла. + Project section not closed - Project section not closed - + Раздел проекта не закрыт. + Invalid section type: {0} - Invalid section type: {0} - + Недопустимый тип раздела: {0} + Section id missing - Section id missing - + Отсутствует идентификатор раздела. + Closing section tag not found - Closing section tag not found - + Закрывающий тег раздела не найден. + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf index a7a329cf2..a65202f1d 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + Genel bölüm birden çok kez belirtilmiş + Global section not closed - Global section not closed - + Genel bölüm kapatılmadı + File header is missing - File header is missing - + Dosya üst bilgisi eksik + Project section not closed - Project section not closed - + Proje bölümü kapatılmadı + Invalid section type: {0} - Invalid section type: {0} - + Geçersiz bölüm türü: {0} + Section id missing - Section id missing - + Bölüm kimliği eksik + Closing section tag not found - Closing section tag not found - + Kapatma bölümü etiketi bulunamadı + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf index d1569148c..9b604d3af 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + 多次指定了全局节 + Global section not closed - Global section not closed - + 未关闭全局节 + File header is missing - File header is missing - + 缺少文件标头 + Project section not closed - Project section not closed - + 未关闭项目节 + Invalid section type: {0} - Invalid section type: {0} - + 无效的节类型: {0} + Section id missing - Section id missing - + 缺少节 ID + Closing section tag not found - Closing section tag not found - + 未找到结束节标记 + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf index a6200f482..8809af601 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,38 +5,38 @@ Global section specified more than once - Global section specified more than once - + 全域區段指定了一次以上 + Global section not closed - Global section not closed - + 全域區段未關閉 + File header is missing - File header is missing - + 遺漏檔案標頭 + Project section not closed - Project section not closed - + 專案區段未關閉 + Invalid section type: {0} - Invalid section type: {0} - + 區段類型無效: {0} + Section id missing - Section id missing - + 遺漏區段識別碼 + Closing section tag not found - Closing section tag not found - + 找不到關閉區段標記 + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf index ad24dc2c9..2f5c7eb4f 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Nesprávně naformátovaný text příkazu {0} + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} neexistuje + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: pokus o nalezení příkazu {1} v {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: nepodařilo se najít toolAssembly pro {1} + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: nepodařilo se najít commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Nepodařilo se najít multiplexor dotnetu. + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: hledání souboru prefercliruntime v {1} + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: pokus o vyřešení {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: Nepodařilo se najít shodný projekt {1}. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: neplatné hodnoty commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} neexistuje. + Ambiguous command name: {0} - Ambiguous command name: {0} - + Nejednoznačný název příkazu {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: nalezena knihovna nástrojů {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: cesta k projektu MSBuildu = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Zadejte, jaký soubor projektu se použije, protože {0} obsahuje více souborů projektů. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: Objekt pro vytváření projektů ProjectFactory nenašel projekt. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: Řeší se specifikace příkazu commandspec z knihoven nástroje {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: Specifikaci příkazu commandspec z knihovny se nepodařilo vyřešit. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: pokus o vyřešení specifikace příkazu nástroje {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: kořen balíčků NuGet: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: zjištěný lockfile nástroje na: {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: Knihovna nebyla v souboru lock nalezena. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: pokus o vytvoření specifikace příkazu commandspec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: Specifikace příkazu commandSpec je null. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: soubor deps.json se očekává v: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Generování souboru deps.json do: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + Soubor deps.json se nepodařilo vygenerovat, protože už je pravděpodobně vygenerovaný: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + nepodařilo se odstranit dočasný soubor deps.json: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + Verzi balíčku {0} se nepodařilo vyřešit. + File not found `{0}`. - File not found `{0}`. - + Soubor {0} nebyl nenalezen. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Projekt se nepodařilo obnovit nebo jeho obnovení nebylo úspěšné. Spusťte příkaz „dotnet restore“. + No executable found matching command "{0}" - No executable found matching command "{0}" - + Nenalezen spustitelný soubor odpovídající příkazu {0} + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Čeká se na připojení ladicího programu. Pokračujte stisknutím tlačítka ENTER. + Process ID: {0} - Process ID: {0} - + ID procesu: {0} + Could not access assets file. - Could not access assets file. - + Nepodařilo se získat přístup k souboru prostředků. + .NET Command Line Tools - .NET Command Line Tools - + Nástroje příkazového řádku .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + Předávání WriteLine už je nastavené. + Already capturing stream! - Already capturing stream! - + Stream už se zaznamenává. + Running {0} {1} - Running {0} {1} - + Spuštěno {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} skončil s {1} ve {2} ms. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Po spuštění příkazu se nepodařilo volat {0}. + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf index dc63ecafa..97813be07 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Fehlerhafter Befehlstext '{0}' + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} nicht vorhanden + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: Versuch, Befehl {1} in {2} zu finden + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: toolAssembly für {1} nicht gefunden + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: commandPath für {1} nicht gefunden + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Dotnetmultiplexer nicht gefunden + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: Suche nach prefercliruntime-Datei unter `{1}` + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: Versuch, {1} aufzulösen + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: Kein passendes Projekt {1} gefunden. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: ungültige commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} nicht vorhanden + Ambiguous command name: {0} - Ambiguous command name: {0} - + Nicht eindeutiger Befehlsname: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: Toolbibliothek gefunden: {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: MSBuild-Projektpfad = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Geben Sie an, welche Projektdatei verwendet werden soll, weil '{0}' mehrere Projektdateien enthält. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory hat das Projekt nicht gefunden. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: commandSpec aus {1} Toolbibliotheken wird aufgelöst. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: commandSpec aus Bibliothek konnte nicht aufgelöst werden. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: Versuch, commandSpec aus Tool {1} aufzulösen + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: NuGet-Paketestamm: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: Toolsperrdatei gefunden unter: {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: Bibliothek nicht in Sperrdatei gefunden. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: Versuch, commandSpec zu erstellen + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec ist NULL. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: „deps.json“ vermutet unter: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + „deps.json“ wird erzeugt unter: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + „deps.json“ kann nicht erzeugt werden; sie wurde vielleicht bereits erzeugt: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + Temporäre deps.json-Datei kann nicht gelöscht werden: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + Version für Paket `{0}` konnte nicht aufgelöst werden. + File not found `{0}`. - File not found `{0}`. - + Datei nicht gefunden: `{0}`. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Das Projekt wurde möglicherweise nicht wiederhergestellt, oder bei der Wiederherstellung ist ein Fehler aufgetreten - führen Sie `dotnet restore` aus. + No executable found matching command "{0}" - No executable found matching command "{0}" - + Keine ausführbare Datei zum Befehl „{0}“ gefunden. + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Warten auf Anhängen des Debuggers. EINGABE drücken, um fortzufahren. + Process ID: {0} - Process ID: {0} - + Prozess-ID: {0} + Could not access assets file. - Could not access assets file. - + Zugriff auf Ressourcendatei nicht möglich. + .NET Command Line Tools - .NET Command Line Tools - + .NET-Befehlszeilentools + WriteLine forwarder set previously - WriteLine forwarder set previously - + WriteLine-Weiterleitung wurde bereits festgelegt. + Already capturing stream! - Already capturing stream! - + Datenstrom wird bereits erfasst! + Running {0} {1} - Running {0} {1} - + {0} {1} wird ausgeführt. + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} wird in {2} ms mit {1} beendet. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + {0} kann nach Ausführung des Befehls nicht aufgerufen werden. + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf index 42ff6b92e..fcff87a46 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Texto de comando con formato incorrecto "{0}" + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} no existe + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: intentando encontrar el comando {1} en {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: no se pudo encontrar toolAssembly para {1} + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: no se pudo encontrar commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + No se puede ubicar el multiplexor dotnet + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: buscando el archivo prefercliruntime en "{1}" + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: intentando resolver {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: no se encontró un proyecto coincidente {1}. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: commandResolverArguments no válidos + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} no existe + Ambiguous command name: {0} - Ambiguous command name: {0} - + Nombre de comando ambiguo: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: se encontró biblioteca de herramientas {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: ruta del proyecto MSBuild = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Especifique el archivo de proyecto que se debe usar porque "{0}" contiene más de un archivo de proyecto. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory no encontró el proyecto. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: resolviendo commandspec desde las bibliotecas de herramientas de {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: no se pudo resolver commandspec desde la biblioteca. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: intentando resolver especificaciones de comando desde la herramienta {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: raíz de paquetes NuGet: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: se encontró el archivo de bloqueo de herramienta en: {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: no se encontró la biblioteca en el archivo de bloqueo. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: intentando crear commandspec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec es nulo. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: se espera deps.json en: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Generando deps.json en: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + no se puede generar deps.json; es posible que ya se haya generado: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + no se puede eliminar el archivo deps.json temporal: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + No se pudo resolver la versión del paquete "{0}". + File not found `{0}`. - File not found `{0}`. - + No se encontró el archivo "{0}". + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Es posible que el proyecto no se haya restaurado o que hubo un error en la restauración; ejecute "dotnet restore" + No executable found matching command "{0}" - No executable found matching command "{0}" - + No se encontró ningún ejecutable que coincida con el comando "{0}" + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Esperando anexar el depurador. Presione ENTRAR para continuar + Process ID: {0} - Process ID: {0} - + Id. de proceso: {0} + Could not access assets file. - Could not access assets file. - + No se pudo tener acceso al archivo de recursos. + .NET Command Line Tools - .NET Command Line Tools - + Herramientas de la línea de comandos .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + El reenviador WriteLine se estableció previamente + Already capturing stream! - Already capturing stream! - + Ya se está capturando la secuencia. + Running {0} {1} - Running {0} {1} - + Ejecutando {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} se cerró con {1} en {2} ms. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + No se puede invocar {0} después de la ejecución del comando + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf index add6eb7d1..21fee319a 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Texte de commande incorrect '{0}' + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver : {0} n'existe pas + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0} : tentative de recherche de la commande {1} dans {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0} : échec de la recherche de toolAssembly pour {1} + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0} : échec de la recherche de commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Le multiplexeur dotnet est introuvable + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0} : recherche du fichier prefercliruntime sur '{1}' + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0} : tentative de résolution de {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0} : projet correspondant introuvable {1}. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0} : commandResolverArguments non valide + {0}: {1} does not exist - {0}: {1} does not exist - + {0} : {1} n'existe pas + Ambiguous command name: {0} - Ambiguous command name: {0} - + Nom de commande ambigu : {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0} : bibliothèque d'outils trouvée {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0} : CHEMIN_MSBUILD_EXE = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0} : chemin de projet MSBuild = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Spécifiez le fichier projet à utiliser, car '{0}' contient plusieurs fichiers projet. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0} : ProjectFactory n'a pas trouvé le projet. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0} : résolution de la spécification de commande à partir des bibliothèques d'outils {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0} : échec de la résolution de la spécification de commande à partir de la bibliothèque. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0} : tentative de résolution de la spécification de commande à partir de l'outil {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0} : racine des packages NuGet : {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0} : fichier de verrouillage d'outil trouvé sur : {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0} : bibliothèque introuvable dans le fichier de verrouillage. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0} : tentative de création de la spécification de commande + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0} : commandSpec a une valeur null. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0} : deps.json attendu sur {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Génération de deps.json sur : {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + impossible de générer deps.json, il a peut-être été déjà généré : {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + impossible de supprimer le fichier temporaire deps.json : {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + La version du package '{0}' n'a pas pu être résolue. + File not found `{0}`. - File not found `{0}`. - + Fichier introuvable '{0}'. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Le projet n'a peut-être pas été restauré, ou la restauration n'a pas fonctionné - exécutez 'dotnet restore' + No executable found matching command "{0}" - No executable found matching command "{0}" - + Aucun exécutable ne correspond à la commande "{0}" + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + En attente d'attachement du débogueur. Appuyez sur ENTRÉE pour continuer + Process ID: {0} - Process ID: {0} - + ID de processus : {0} + Could not access assets file. - Could not access assets file. - + Impossible d'accéder au fichier de composants. + .NET Command Line Tools - .NET Command Line Tools - + Outils en ligne de commande .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + Redirecteur WriteLine déjà défini + Already capturing stream! - Already capturing stream! - + Flux déjà en cours de capture ! + Running {0} {1} - Running {0} {1} - + Exécution de {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} s'est arrêté avec {1} en {2} ms. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Impossible d'appeler {0} après l'exécution de la commande + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.it.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.it.xlf index efeeb38df..2fb130b58 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.it.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.it.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Il testo del comando '{0}' non è corretto + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} non esiste + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: tentativo di individuazione del comando {1} in {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: toolAssembly per {1} non trovato + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: commandPath {1} non trovato + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Il multiplexer dotnet non è stato trovato + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: ricerca del file prefercliruntime in `{1}` + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: tentativo di risolvere {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: non è stato trovato alcun progetto {1} corrispondente. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: commandResolverArguments non valido + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} non esiste + Ambiguous command name: {0} - Ambiguous command name: {0} - + Nome di comando ambiguo: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: libreria degli strumenti {1} trovata + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: PERCORSO_EXE_MSBUILD = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: percorso del progetto MSBuild = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Specificare il file di progetto da usare perché questo file perché questo elemento '{0}' contiene più file di progetto. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory non ha trovato l'elemento Project. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: risoluzione di commandSpec dalle librerie degli strumenti di {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: non è stato possibile risolvere commandSpec dalla libreria. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: tentativo di risolvere commandSpec dallo strumento {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: radice dei pacchetti NuGet: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: il file di blocco dello strumento è stato trovato in: {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: la libreria non è stata trovata nel file di blocco. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: tentativo di creare commandSpec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec è Null. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: è previsto deps.json in: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Generazione del file deps.json in: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + non è possibile generare deps.json. Potrebbe essere già stato generato: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + non è possibile eliminare il file deps.json temporaneo: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + Non è stato possibile risolvere la versione per il pacchetto `{0}`. + File not found `{0}`. - File not found `{0}`. - + Il file `{0}` non è stato trovato. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + È possibile che il progetto non sia stato ripristinato o che il ripristino non sia riuscito. Eseguire `dotnet restore` + No executable found matching command "{0}" - No executable found matching command "{0}" - + Non è stato trovato alcun file eseguibile corrispondente al comando "{0}" + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + In attesa del collegamento del debugger. Premere INVIO per continuare + Process ID: {0} - Process ID: {0} - + ID processo: {0} + Could not access assets file. - Could not access assets file. - + Non è stato possibile accedere al file di risorse. + .NET Command Line Tools - .NET Command Line Tools - + Strumenti da riga di comando di .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + Il forwarder WriteLine è stato impostato in precedenza + Already capturing stream! - Already capturing stream! - + L'acquisizione del flusso è già in corso. + Running {0} {1} - Running {0} {1} - + {0} in esecuzione: {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} è stato terminato con {1} in {2} ms. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Non è possibile richiamare {0} dopo l'esecuzione del comando + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf index eb49d83f1..46c007ea5 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + 無効な形式のコマンド テキスト '{0}' + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} は存在しません + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: {2} でコマンド {1} を検索しています + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: {1} の toolAssembly が見つかりませんでした + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: commandPath {1} が見つかりませんでした + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + dotnet マルチプレクサーが見つかりません + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: `{1}` で prefercliruntime ファイルを検索しています + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: {1} を解決しようとしています + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: 一致するプロジェクト {1}.が見つかりませんでした。 + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: 無効な commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} は存在しません + Ambiguous command name: {0} - Ambiguous command name: {0} - + あいまいなコマンド名: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: ツール ライブラリで {1} が見つかりました + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: MSBuild プロジェクト パス = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + この '{0}' には複数のプロジェクト ファイルが含まれているため、使用するプロジェクト ファイルを指定します。 + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory でプロジェクトが見つかりませんでした。 + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: {1} ツール ライブラリから commandspec を解決しています。 + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: ライブラリから commandspec を解決できませんでした。 + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: ツール {1} から commandspec を解決しようとしています + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: NuGet パッケージ ルート: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: {1} でツールのロックファイルが見つかりました + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: ロック ファイルにライブラリが見つかりませんでした。 + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: commandspec を作成しようとしています + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec が null です。 + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: {1} で deps.json が必要です + Generating deps.json at: {0} - Generating deps.json at: {0} - + {0} で deps.json を生成しています + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + deps.json を生成できません。既に生成されている可能性があります: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + deps.json 一時ファイルを削除できません: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + パッケージ `{0}` のバージョンを解決できませんでした。 + File not found `{0}`. - File not found `{0}`. - + ファイルが見つかりません: `{0}`。 + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + プロジェクトが復元されていない可能性があるか、または - run `dotnet restore` の復元に失敗しました。 + No executable found matching command "{0}" - No executable found matching command "{0}" - + コマンド "{0}" に一致する実行可能ファイルが見つかりません + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + デバッガーのアタッチを待機しています。続行するには Enter キーを押してください + Process ID: {0} - Process ID: {0} - + プロセス ID: {0} + Could not access assets file. - Could not access assets file. - + 資産ファイルにアクセスできませんでした。 + .NET Command Line Tools - .NET Command Line Tools - + .NET コマンド ライン ツール + WriteLine forwarder set previously - WriteLine forwarder set previously - + 以前に設定した WriteLine フォワーダー + Already capturing stream! - Already capturing stream! - + 既にストリームをキャプチャ中です! + Running {0} {1} - Running {0} {1} - + {0} {1} を実行しています + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} が {1} で終了しました ({2} ミリ秒)。 + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + コマンドの実行後、{0} を呼び出せません + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf index 1e4f83045..7da3727c2 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + 형식이 잘못된 명령 텍스트 '{0}' + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0}이(가) 없습니다. + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: {2}에서 {1} 명령을 찾으려고 시도 중 + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: {1}용 toolAssembly 찾기 실패 + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: commandPath {1} 찾기 실패 + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + dotnet multiplexer를 찾을 수 없음 + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: '{1}'에서 prefercliruntime 파일을 찾는 중 + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: {1} 확인을 시도 중 + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: 일치하는 프로젝트 {1}을(를) 찾지 못했습니다. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: 잘못된 commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1}이(가) 없습니다. + Ambiguous command name: {0} - Ambiguous command name: {0} - + 모호한 명령 이름: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: {1} 도구 라이브러리가 발견됨 + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: MSBuild 프로젝트 경로 = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + 이 '{0}'에 둘 이상의 프로젝트 파일이 포함되어 있으므로 사용할 프로젝트 파일을 지정하세요. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory에서 프로젝트를 찾지 못했습니다. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: {1} 도구 라이브러리에서 commandspec을 확인하는 중입니다. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: 라이브러리에서 commandspec을 확인하지 못했습니다. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: {1} 도구에서 command spec을 확인하려고 시도하는 중입니다. + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: nuget 패키지 루트: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: {1}에서 도구 잠금 파일을 찾았습니다. + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: 잠금 파일에서 라이브러리를 찾지 못했습니다. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: commandspec 만들기 시도 중 + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec이 null입니다. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: {1}에서 deps.json 필요 + Generating deps.json at: {0} - Generating deps.json at: {0} - + {0}에서 deps.json 생성 중 + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + deps.json을 생성할 수 없습니다. 이미 생성되었을 수 있습니다. {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + 임시 deps.json 파일을 삭제할 수 없습니다. {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + '{0}' 패키지의 버전을 확인할 수 없습니다. + File not found `{0}`. - File not found `{0}`. - + '{0}' 파일을 찾을 수 없습니다. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + 프로젝트가 복원되지 않았거나 복원이 실패했을 수 있습니다. 'dotnet restore'를 실행하세요. + No executable found matching command "{0}" - No executable found matching command "{0}" - + "{0}" 명령과 일치하는 실행 파일을 찾을 수 없습니다. + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + 연결할 디버거를 대기 중입니다. 계속하려면 ENTER 키를 누르세요. + Process ID: {0} - Process ID: {0} - + 프로세스 ID: {0} + Could not access assets file. - Could not access assets file. - + 자산 파일에 액세스할 수 없습니다. + .NET Command Line Tools - .NET Command Line Tools - + .NET 명령줄 도구 + WriteLine forwarder set previously - WriteLine forwarder set previously - + WriteLine 전달자가 전에 설정됨 + Already capturing stream! - Already capturing stream! - + 이미 스트림을 캡처하는 중입니다! + Running {0} {1} - Running {0} {1} - + {0} {1} 실행 중 + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0}이(가) {2}ms만에 {1}과(와) 함께 종료되었습니다. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + 명령이 실행된 후 {0}을(를) 호출할 수 없음 + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf index dd7cd2367..4a2d09d1d 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Nieprawidłowo sformułowany tekst polecenia „{0}” + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + Element outputpathresolver: {0} nie istnieje + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: Próba odnalezienia polecenia {1} w lokalizacji {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: Nie udało się odnaleźć elementu toolAssembly dla elementu {1} + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: Nie udało się odnaleźć ścieżki commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Nie można zlokalizować multipleksera dotnet + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: Wyszukiwanie pliku prefercliruntime w lokalizacji „{1}” + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: Próba rozpoznania elementu {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: Nie znaleziono pasującego projektu {1}. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: Nieprawidłowa wartość elementu commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: Element {1} nie istnieje + Ambiguous command name: {0} - Ambiguous command name: {0} - + Niejednoznaczna nazwa polecenia: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: Znaleziono bibliotekę narzędzia {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: Ścieżka MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: Ścieżka projektu programu MSBuild = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Określ, który plik ma zostać użyty, ponieważ w tym elemencie „{0}” podano kilka plików projektu. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: Element ProjectFactory nie odnalazł projektu. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: Rozpoznawanie elementu commandspec z bibliotek narzędzia {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: Nie udało się rozpoznać elementu commandspec z biblioteki. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: Próba rozpoznania specyfikacji polecenia z narzędzia {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: Korzeń pakietów NuGet: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: Odnaleziono plik blokady narzędzia w lokalizacji: {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: Nie odnaleziono biblioteki w pliku blokady. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: Próba utworzenia elementu commandspec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: Element commandSpec ma wartość null. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: Oczekiwano pliku deps.json w lokalizacji: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Generowanie pliku deps.json w lokalizacji: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + nie można wygenerować pliku deps.json, być może został już wygenerowany: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + nie można usunąć tymczasowego pliku deps.json: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + Nie można rozpoznać wersji pakietu „{0}”. + File not found `{0}`. - File not found `{0}`. - + Nie odnaleziono pliku „{0}”. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Projekt mógł nie zostać przywrócony lub przywracanie zakończyło się niepowodzeniem — uruchom polecenie „dotnet restore” + No executable found matching command "{0}" - No executable found matching command "{0}" - + Nie odnaleziono pliku wykonywalnego zgodnego z poleceniem „{0}” + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Oczekiwanie na dołączenie debugera. Naciśnij klawisz ENTER, aby kontynuować + Process ID: {0} - Process ID: {0} - + Identyfikator procesu: {0} + Could not access assets file. - Could not access assets file. - + Nie można uzyskać dostępu do pliku zasobów. + .NET Command Line Tools - .NET Command Line Tools - + Narzędzia wiersza polecenia programu .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + Ustawiona wcześniej usługa przesyłania dalej WriteLine + Already capturing stream! - Already capturing stream! - + Strumień jest już przechwytywany! + Running {0} {1} - Running {0} {1} - + Uruchamianie procesu {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < Proces {0} zakończył się z kodem {1} w ciągu {2} ms. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Nie można wywołać elementu {0} po uruchomieniu polecenia + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf index bccf28ee7..57a23c3c6 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Texto do comando malformado '{0}' + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} não existe + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: tentando encontrar o comando {1} em {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: falha ao encontrar toolAssembly para {1} + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: falha ao encontrar commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Não é possível localizar o multiplexador do dotnet + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: procurando o arquivo prefercliruntime em '{1}' + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: tentando resolver {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: não encontrou um projeto {1} correspondente. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: commandResolverArguments inválido + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} não existe + Ambiguous command name: {0} - Ambiguous command name: {0} - + Nome de comando ambíguo: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: a biblioteca de ferramentas encontrou {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: caminho de projeto do MSBuild = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Especifique qual arquivo de projeto será usado, pois este '{0}' contém mais de um arquivo de projeto. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory não encontrou o Projeto. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: resolvendo commandspec por meio das Bibliotecas de Ferramentas de {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: falha ao resolver commandspec por meio da biblioteca. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: tentando resolver commandspec por meio da ferramenta {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: raiz de pacotes NuGet: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: arquivo de bloqueio de ferramenta encontrado em: {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: biblioteca não encontrada no arquivo de bloqueio. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: tentando criar commandspec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec é nulo. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: espera de deps.json em: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Gerando deps.json em: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + não é possível gerar deps.json; ele pode já ter sido gerado: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + não é possível excluir o arquivo temporário deps.json: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + A versão do pacote '{0}' não pôde ser resolvida. + File not found `{0}`. - File not found `{0}`. - + Arquivo não encontrado '{0}'. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + O projeto pode não ter sido restaurado ou a restauração falhou – execute 'dotnet restore' + No executable found matching command "{0}" - No executable found matching command "{0}" - + Nenhum executável encontrado correspondente ao comando "{0}" + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Aguardando o depurador anexar. Pressione ENTER para continuar + Process ID: {0} - Process ID: {0} - + ID do processo: {0} + Could not access assets file. - Could not access assets file. - + Não foi possível acessar o arquivo de ativos. + .NET Command Line Tools - .NET Command Line Tools - + Ferramentas de Linha de Comando do .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + Encaminhador WriteLine definido anteriormente + Already capturing stream! - Already capturing stream! - + O fluxo já está sendo capturado. + Running {0} {1} - Running {0} {1} - + Executando {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} foi fechado com {1} em {2} ms. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Não é possível invocar {0} após a execução do comando + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf index f5131a90f..016bf7d6a 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Неправильный формат текста команды "{0}" + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} не существует. + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: попытка найти команду {1} в {2} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: не удалось найти toolAssembly для {1}. + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: не удалось найти commandPath {1}. + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Не удается найти мультиплексор dotnet. + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: поиск файла prefercliruntime в "{1}" + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: попытка разрешить {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: не найден подходящий проект {1}. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: недопустимый commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} не существует. + Ambiguous command name: {0} - Ambiguous command name: {0} - + Неоднозначное имя команды: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: найдена библиотека средств {1}. + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: путь проекта MSBuild — {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Укажите используемый файл проекта, так как этот "{0}" содержит несколько таких файлов. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: фабрика проектов не нашла проект. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: разрешение спецификации команды из библиотек средств {1}. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: не удалось разрешить спецификацию команды из библиотеки. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: попытка разрешить спецификацию команды из средства {1} + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: корень пакетов nuget: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: найден файл блокировки средства в: {1}. + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: не найдена библиотека в файле блокировки. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: попытка создать спецификацию команды + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec имеет значение NULL. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: ожидается deps.json в: {1}. + Generating deps.json at: {0} - Generating deps.json at: {0} - + Выполняется создание deps.json в: {0}. + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + не удается создать deps.json, возможно, он уже создан: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + не удается удалить временный файл deps.json: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + Не удалось разрешить версию для пакета "{0}". + File not found `{0}`. - File not found `{0}`. - + Файл не найден: "{0}". + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Возможно, проект не был восстановлен или его восстановление завершилось со сбоем, запустите команду "dotnet restore". + No executable found matching command "{0}" - No executable found matching command "{0}" - + Не найден исполняемый файл, соответствующий команде "{0}". + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Ожидание подключения отладчика. Для продолжения нажмите клавишу ВВОД. + Process ID: {0} - Process ID: {0} - + Идентификатор процесса: {0} + Could not access assets file. - Could not access assets file. - + Не удалось получить доступ к файлу активов. + .NET Command Line Tools - .NET Command Line Tools - + Программы командной строки .NET + WriteLine forwarder set previously - WriteLine forwarder set previously - + Сервер пересылки WriteLine, заданный ранее + Already capturing stream! - Already capturing stream! - + Захват потока уже выполняется! + Running {0} {1} - Running {0} {1} - + Выполнение {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} выполнил выход с {1} через {2} мс. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Не удается вызвать {0} после запуска команды. + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf index d3306b13e..6aeadb930 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + Hatalı biçimlendirilmiş komut metni: '{0}' + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} yok + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: {2} içinde {1} komutu bulunmaya çalışılıyor + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: {1} için toolAssembly bulunamadı + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: {1} için commandPath bulunamadı + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + Dotnet çoğullayıcısı bulunamadı + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: `{1}` konumunda prefercliruntime dosyası aranıyor + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: {1} öğesi çözümlenmeye çalışılıyor + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: Eşleşen {1} projesi bulunamadı. + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: geçersiz commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} yok + Ambiguous command name: {0} - Ambiguous command name: {0} - + Belirsiz komut adı: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: araç kitaplığı bulundu {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: MSBuild proje yolu = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + Bu '{0}' birden çok proje dosyası içerdiğinden, hangi proje dosyasının kullanılacağını belirtmeniz gerekir. + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory, Projeyi bulamadı. + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: {1} Araç Kitaplıklarından commandspec çözümleniyor. + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: kitaplıktan commandspec çözümlenemedi. + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: {1} aracından commandspec çözümlenmeye çalışılıyor + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: NuGet paketleri kökü: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: araç kilit dosyası şurada bulundu : {1} + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: kitaplık, kilit dosyasında bulunamadı. + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: commandspec oluşturulmaya çalışılıyor + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec null. + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: şu konumda deps.json bekleniyor: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + Şu konumda deps.json oluşturuluyor: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + deps.json oluşturulamadı, zaten oluşturulmuş olabilir: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + geçici deps.json dosyası silinemedi: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + `{0}` paketi için sürüm çözümlenemedi. + File not found `{0}`. - File not found `{0}`. - + Dosya bulunamadı `{0}`. + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + Proje geri yüklenmemiş veya geri yükleme başarısız olmuş olabilir - `dotnet restore` çalıştırın + No executable found matching command "{0}" - No executable found matching command "{0}" - + "{0}" komutuyla eşleşen yürütülebilir bulunamadı + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + Hata ayıklayıcının eklenmesi bekleniyor. Devam etmek için ENTER tuşuna basın + Process ID: {0} - Process ID: {0} - + İşlem kimliği: {0} + Could not access assets file. - Could not access assets file. - + Varlık dosyasına erişilemiyor. + .NET Command Line Tools - .NET Command Line Tools - + .NET Komut Satırı Araçları + WriteLine forwarder set previously - WriteLine forwarder set previously - + WriteLine ileticisi önceden ayarlandı + Already capturing stream! - Already capturing stream! - + Akış zaten yakalanıyor! + Running {0} {1} - Running {0} {1} - + {0} {1} çalıştırılıyor + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} öğesinden {2} ms içinde {1} ile çıkıldı. + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + Komut çalıştırıldıktan sonra {0} çağrılamıyor + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf index c80491b31..a42fbba0f 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + 命令文本“{0}”格式错误 + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} 不存在 + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: 尝试在 {2} 中查找命令 {1} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: 未能找到 {1} 的 toolAssembly + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: 未能找到 commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + 找不到 dotnet 多路复用器 + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: 在“{1}”查找 prefercliruntime 文件 + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: 尝试解析 {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: 未能找到匹配的项目 {1}。 + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: 无效的 commandResolverArguments + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} 不存在 + Ambiguous command name: {0} - Ambiguous command name: {0} - + 模糊命令名: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: 找到的工具库 {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: MSBuild 项目路径 = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + 指定要使用的项目文件,因为此“{0}”包含多个项目文件。 + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory 未找到项目。 + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: 从 {1} 工具库解析 commandspec。 + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: 未能从库解析 commandspec。 + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: 尝试从工具 {1} 解析命令 spec + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: nuget 包根目录: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: 在 {1} 中找到工具 lockfile + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: 在锁定文件中未找到库。 + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: 尝试创建 commandspec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec 为 null。 + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: 需要deps.json: {1} + Generating deps.json at: {0} - Generating deps.json at: {0} - + 即将生成 deps.json: {0} + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + 无法生成 deps.json,该文件可能已生成: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + 无法删除临时 deps.json 文件: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + 无法解析包“{0}”的版本。 + File not found `{0}`. - File not found `{0}`. - + 未找到文件“{0}”。 + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + 可能未还原项目或还原失败 - 运行“dotnet restore” + No executable found matching command "{0}" - No executable found matching command "{0}" - + 未找到与命令“{0}”匹配的可执行文件 + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + 等待附加调试器。按 Enter 继续 + Process ID: {0} - Process ID: {0} - + 进程 ID: {0} + Could not access assets file. - Could not access assets file. - + 无法访问资产文件。 + .NET Command Line Tools - .NET Command Line Tools - + .NET 命令行工具 + WriteLine forwarder set previously - WriteLine forwarder set previously - + 以前设置的 WriteLine 转发器 + Already capturing stream! - Already capturing stream! - + 已在捕获流! + Running {0} {1} - Running {0} {1} - + 正在运行 {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0}通过了 {1} 在 {2} ms 内退出 + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + 运行命令后无法调用 {0} + diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf index bec9b8c7a..087b5084d 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,215 +5,215 @@ Malformed command text '{0}' - Malformed command text '{0}' - + 命令文字 '{0}' 格式錯誤 + outputpathresolver: {0} does not exist - outputpathresolver: {0} does not exist - + outputpathresolver: {0} 不存在 + {0}: attempting to find command {1} in {2} - {0}: attempting to find command {1} in {2} - + {0}: 正在嘗試於 {2} 中尋找命令 {1} + {0}: failed to find toolAssembly for {1} - {0}: failed to find toolAssembly for {1} - + {0}: 找不到 {1} 的 toolAssembly + {0}: failed to find commandPath {1} - {0}: failed to find commandPath {1} - + {0}: 找不到 commandPath {1} + Unable to locate dotnet multiplexer - Unable to locate dotnet multiplexer - + 找不到 dotnet multiplexer + {0}: Looking for prefercliruntime file at `{1}` - {0}: Looking for prefercliruntime file at `{1}` - + {0}: 正在於 `{1}` 尋找 prefercliruntime 檔 + {0}: attempting to resolve {1} - {0}: attempting to resolve {1} - + {0}: 正在嘗試解析 {1} + {0}: Did not find a matching project {1}. - {0}: Did not find a matching project {1}. - + {0}: 未找到相符的專案 {1}。 + {0}: invalid commandResolverArguments - {0}: invalid commandResolverArguments - + {0}: commandResolverArguments 無效 + {0}: {1} does not exist - {0}: {1} does not exist - + {0}: {1} 不存在 + Ambiguous command name: {0} - Ambiguous command name: {0} - + 不明確的命令名稱: {0} + {0}: tool library found {1} - {0}: tool library found {1} - + {0}: 找到工具程式庫 {1} + {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBUILD_EXE_PATH = {1} + {0}: MSBuild project path = {1} - {0}: MSBuild project path = {1} - + {0}: MSBuild 專案路徑 = {1} + Specify which project file to use because this '{0}' contains more than one project file. - Specify which project file to use because this '{0}' contains more than one project file. - + 指定要使用的專案檔,因為這個 '{0}' 包含多個專案檔。 + {0}: ProjectFactory did not find Project. - {0}: ProjectFactory did not find Project. - + {0}: ProjectFactory 未找到專案。 + {0}: resolving commandspec from {1} Tool Libraries. - {0}: resolving commandspec from {1} Tool Libraries. - + {0}: 正在從 {1} 工具程式庫解析 commandspec。 + {0}: failed to resolve commandspec from library. - {0}: failed to resolve commandspec from library. - + {0}: 無法從程式庫解析 commandspec。 + {0}: Attempting to resolve command spec from tool {1} - {0}: Attempting to resolve command spec from tool {1} - + {0}: 正在嘗試從工具 {1} 解析 command spec + {0}: nuget packages root: {1} - {0}: nuget packages root: + {0}: NuGet 套件根: {1} - + {0}: found tool lockfile at : {1} - {0}: found tool lockfile at : {1} - + {0}: 於 {1} 找到工具鎖定檔案 + {0}: library not found in lock file. - {0}: library not found in lock file. - + {0}: 鎖定檔案中找不到程式庫。 + {0}: attempting to create commandspec - {0}: attempting to create commandspec - + {0}: 正在嘗試建立 commandspec + {0}: commandSpec is null. - {0}: commandSpec is null. - + {0}: commandSpec 為 null。 + {0}: expect deps.json at: {1} - {0}: expect deps.json at: {1} - + {0}: 於 {1} 需要 deps.json + Generating deps.json at: {0} - Generating deps.json at: {0} - + 正在於 {0} 產生 deps.json + unable to generate deps.json, it may have been already generated: {0} - unable to generate deps.json, it may have been already generated: {0} - + 無法產生 deps.json,可能已產生過: {0} + unable to delete temporary deps.json file: {0} - unable to delete temporary deps.json file: {0} - + 無法刪除暫存 deps.json 檔: {0} + Version for package `{0}` could not be resolved. - Version for package `{0}` could not be resolved. - + 無法解析套件 `{0}` 的版本。 + File not found `{0}`. - File not found `{0}`. - + 找不到檔案 `{0}`。 + The project may not have been restored or restore failed - run `dotnet restore` - The project may not have been restored or restore failed - run `dotnet restore` - + 專案可能尚未還原或還原失敗 - 執行 `dotnet restore` + No executable found matching command "{0}" - No executable found matching command "{0}" - + 沒有與命令 "{0}" 相符的可執行檔 + Waiting for debugger to attach. Press ENTER to continue - Waiting for debugger to attach. Press ENTER to continue - + 正在等候附加偵錯工具。按 ENTER 繼續進行 + Process ID: {0} - Process ID: {0} - + 處理序識別碼: {0} + Could not access assets file. - Could not access assets file. - + 無法存取資產檔案。 + .NET Command Line Tools - .NET Command Line Tools - + .NET 命令列工具 + WriteLine forwarder set previously - WriteLine forwarder set previously - + 先前已設定 WriteLine 轉寄站 + Already capturing stream! - Already capturing stream! - + 已在擷取資料流! + Running {0} {1} - Running {0} {1} - + 正在執行 {0} {1} + < {0} exited with {1} in {2} ms. - < {0} exited with {1} in {2} ms. - + < {0} 已結束,{1} 於 {2} 毫秒後。 + Unable to invoke {0} after the command has been run - Unable to invoke {0} after the command has been run - + 執行命令後無法叫用 {0} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf index 127493a17..3a23b4234 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Vítejte v .NET Core! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Další informace o .NET Core najdete na adrese https://aka.ms/dotnet-docs. K zobrazení dostupných příkazů použijte příkaz dotnet --help nebo přejděte na https://aka.ms/dotnet-cli-docs. -Telemetry +Telemetrie -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Nástroje .NET Core shromažďují data o využití, která pomáhají zlepšit vaši práci. Tato data jsou anonymní a nezahrnují argumenty příkazového řádku. Data shromažďuje Microsoft a sdílí je s komunitou uživatelů. +Pokud chcete telemetrii vypnout, nastavte proměnnou prostředí DOTNET_CLI_TELEMETRY_OPTOUT na 1. Můžete k tomu použít své oblíbené prostředí. +Další informace o telemetrických nástrojích .NET Core najdete na adrese https://aka.ms/dotnet-cli-telemetry. -Configuring... +Konfigurace... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Je spuštěný příkaz, který na začátku naplní mezipaměť místního balíčku, zlepší rychlost obnovení a umožní offline přístup. Dokončení příkazu zabere necelou minutu a stačí ho spustit jen jednou. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Nepodařilo se vytvořit primární mezipaměť balíčku NuGet. {0} selhalo s: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf index 800e05d96..3f8c8d5d8 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Willkommen bei .NET Core! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Erfahren Sie mehr über .NET Core unter https://aka.ms/dotnet-docs. Mit „dotnet --help“ können Sie die verfügbaren Befehle anzeigen, oder rufen Sie https://aka.ms/dotnet-cli-docs auf. -Telemetry +Telemetrie -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Die .NET Core-Tools sammeln Nutzungsdaten, um die Benutzerfreundlichkeit zu verbessern. Die Daten sind anonym und enthalten keine Befehlszeilenargumente. Sie werden von Microsoft gesammelt und für die Community freigegeben. +Sie können die Telemetrie deaktivieren, indem Sie die Umgebungsvariable DOTNET_CLI_TELEMETRY_OPTOUT in einer Shell Ihrer Wahl auf 1 setzen. +Weitere Informationen über die Telemetrie der .NET Core-Tools finden Sie unter https://aka.ms/dotnet-cli-telemetry. -Configuring... +Konfiguration ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Um Ihren lokalen Paketcache anfänglich zu füllen, die Wiederherstellungsgeschwindigkeit zu verbessern und den Offlinezugriff zu aktivieren, wird ein Befehl ausgeführt. Die Ausführung dieses Befehls dauert maximal eine Minute und geschieht nur einmal. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Fehler beim Vorbereiten des NuGet-Cache. Fehler von {0} mit: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf index 1929ef41d..ec09e7268 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Bienvenido a .NET Core --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Obtenga más información sobre .NET Core en https://aka.ms/dotnet-docs. Use dotnet --help para ver los comandos disponibles o vaya a https://aka.ms/dotnet-cli-docs. -Telemetry +Telemetría -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Las herramientas de .NET Core recopilan datos de uso con el fin de mejorar su experiencia. Los datos son anónimos y no incluyen argumentos de la línea de comandos. Microsoft recopila los datos y los comparte con la comunidad. +Si desea optar por no participar en la telemetría, establezca una variable de entorno DOTNET_CLI_TELEMETRY_OPTOUT en 1 con el shell de su preferencia. +Puede leer más información sobre la telemetría de las herramientas de .NET Core en https://aka.ms/dotnet-cli-telemetry. -Configuring... +Configurando... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Un comando se ejecuta para rellenar inicialmente la caché de paquete local a fin de mejorar la velocidad de restauración y permitir el acceso sin conexión. Este comando demorará hasta un minuto para completarse y solo sucederá una vez. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + No se pudo crear la caché de NuGet. Error de {0} con: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf index f7171048c..a50a17de7 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Bienvenue dans .NET Core ! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +En savoir plus sur .NET Core @ https://aka.ms/dotnet-docs. Utilisez dotnet --help pour voir les commandes disponibles, ou accédez à https://aka.ms/dotnet-cli-docs. -Telemetry +Télémétrie -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Les outils .NET Core collectent des données d'utilisation pour améliorer votre expérience utilisateur. Ces données sont anonymes et n'incluent aucun argument de ligne de commande. Les données sont collectées par Microsoft et partagées par la communauté. +Vous pouvez refuser l'adhésion à la télémétrie en assignant la valeur 1 à la variable d'environnement DOTNET_CLI_TELEMETRY_OPTOUT via l'interpréteur de commandes de votre choix. +Pour plus d'informations sur la télémétrie des outils .NET Core, consultez https://aka.ms/dotnet-cli-telemetry. -Configuring... +Configuration en cours... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Une commande s'exécute pour remplir votre cache de package local, améliorer la vitesse de restauration et activer l'accès hors connexion. L'exécution de cette commande peut prendre jusqu'à une minute et n'a lieu qu'une seule fois. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Échec de la création du cache NuGet. Échec de {0} : {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.it.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.it.xlf index 97e92aed9..5434c2ac2 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.it.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.it.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Benvenuti a .NET Core --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Per altre informazioni su .NET Core, vedere https://aka.ms/dotnet-docs. Per visualizzare i comandi disponibili, usare dotnet --help oppure vedere https://aka.ms/dotnet-cli-docs. -Telemetry +Telemetria -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Gli strumenti di .NET Core consentono di raccogliere i dati di utilizzo allo scopo di migliorare l'esperienza. I dati sono anonimi e non includono gli argomenti della riga di comando. Vengono raccolti da Microsoft e condivisi con la community. +È possibile escludere la telemetria impostando la variabile di ambiente DOTNET_CLI_TELEMETRY_OPTOUT su 1 nella shell preferita. +Per altre informazioni sulla telemetria degli strumenti di .NET Core, vedere https://aka.ms/dotnet-cli-telemetry. -Configuring... +Configurazione... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +È in esecuzione un comando per popolare inizialmente la cache dei pacchetti locale, migliorare la velocità di ripristino e abilitare l'accesso offline. Il completamento di questo comando, che viene eseguito una sola volta, richiede circa un minuto. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Non è possibile creare per la prima volta la cache NuGet. {0} non riuscito. Errore: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf index a74c98af5..aecb3b809 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + .NET Core へようこそ! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +.NET Core の詳細については、https://aka.ms/dotnet-docs を参照してください。利用可能なコマンドを参照するには、dotnet --help を使用するか、https://aka.ms/dotnet-cli-docs にアクセスしてください。 -Telemetry +テレメトリ -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +.NET Core ツールは、お客様のエクスペリエンス向上のために利用状況データを収集します。データは匿名であり、コマンドライン引数は含まれません。データは Microsoft によって収集され、コミュニティと共有されます。 +お好きなシェルを使用して DOTNET_CLI_TELEMETRY_OPTOUT 環境変数を 1 に設定すると、テレメトリを解除できます。 +.NET Core ツールのテレメトリの詳細については、https://aka.ms/dotnet-cli-telemetry でお読みいただけます。 -Configuring... +構成... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +復元の高速化とオフライン アクセスの有効化のため、コマンドを実行してローカル パッケージ キャッシュを最初に設定しています。このコマンドは完了までに 1 分ほどかかりますが、設定が必要なのは最初の1回のみです。 + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + プライム NuGet キャッシュを作成できませんでした。{0} は {1} で失敗しました + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf index d49d144f5..8709037b1 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + .NET Core를 시작합니다! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +.NET Core에 대한 자세한 내용은 https://aka.ms/dotnet-docs를 참조하세요. 사용 가능한 명령을 보려면 dotnet --help를 사용하거나 https://aka.ms/dotnet-cli-docs를 방문하세요. -Telemetry +원격 분석 -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +.NET Core 도구는 사용자 환경 개선을 위해 사용량 데이터를 수집합니다. 데이터는 익명이며 명령줄 인수를 포함하지 않습니다. Microsoft에서 데이터를 수집하여 커뮤니티와 공유합니다. +자주 사용하는 셸에서 DOTNET_CLI_TELEMETRY_OPTOUT 환경 변수를 1로 설정하여 원격 분석을 옵트아웃할 수 있습니다. +.NET Core 도구 원격 분석에 대한 자세한 내용은 https://aka.ms/dotnet-cli-telemetry에서 확인할 수 있습니다. -Configuring... +구성 중... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +초기에 로컬 패키지 캐시를 채우고, 복원 속도를 개선하고, 오프라인 액세스를 사용하도록 설정하기 위한 명령을 실행 중입니다. 완료하는 데 1분 정도 소요되며 한 번만 실행됩니다. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + 프라임 NuGet 캐시를 만들지 못했습니다. {0} 실패: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pl.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pl.xlf index 7bc5627f7..e862e5163 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pl.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pl.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + .NET Core — Zapraszamy! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Więcej informacji o programie .NET Core znajdziesz na stronie https://aka.ms/dotnet-docs. Aby wyświetlić dostępne polecenia, użyj polecenia dotnet --help lub przejdź na stronę https://aka.ms/dotnet-cli-docs. -Telemetry +Telemetria -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Narzędzia programu .NET Core zbierają dane dotyczące użycia w celu ulepszenia Twojego środowiska pracy. Dane te są anonimowe i nie obejmują argumentów wiersza polecenia. Zbiera je firma Microsoft i udostępnia społeczności. +Z telemetrii można zrezygnować, ustawiając zmienną środowiskową DOTNET_CLI_TELEMETRY_OPTOUT na wartość 1 przy użyciu ulubionej powłoki. +Więcej informacji na temat telemetrii narzędzi programu .NET Core możesz znaleźć na stronie https://aka.ms/dotnet-cli-telemetry. -Configuring... +Trwa konfigurowanie… ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Wykonywane jest polecenie w celu wstępnego wypełnienia lokalnej pamięci podręcznej pakietów, poprawy szybkości przywracania i włączenia dostępu offline. Wykonanie tego polecenia jest jednorazowe i zajmie maksymalnie minutę. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Nie udało się utworzyć głównej pamięci podręcznej NuGet. Operacja {0} zakończyła się niepowodzeniem: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf index 697327d64..259c21248 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Bem-vindo ao .NET Core! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Saiba mais sobre o .NET Core em https://aka.ms/dotnet-docs. Use dotnet --help para ver os comandos disponíveis ou acesse https://aka.ms/dotnet-cli-docs. -Telemetry +Telemetria -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +As ferramentas do .NET Core coletam dados de uso para melhorar sua experiência. Os dados são anônimos e não incluem argumentos de linha de comando. Os dados são coletados pela Microsoft e compartilhados com a comunidade. +É possível recusar a telemetria definindo uma variável de ambiente DOTNET_CLI_TELEMETRY_OPTOUT como 1 usando seu shell favorito. +Leia mais sobre a telemetria das ferramentas do .NET Core em https://aka.ms/dotnet-cli-telemetry. -Configuring... +Configurando... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Um comando está sendo executado para popular inicialmente o cache do pacote local, a fim de melhorar a velocidade de restauração e habilitar o acesso offline. Esse comando levará até um minuto para ser concluído e só ocorrerá uma vez. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Falha ao criar principal do cache do NuGet. {0} falhou com: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf index 5eba68ef0..6652487d0 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + Добро пожаловать в .NET Core! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +Дополнительные сведения о .NET Core можно получить по адресу https://aka.ms/dotnet-docs. Для просмотра доступных команд используйте dotnet --help или перейдите на страницу https://aka.ms/dotnet-cli-docs. -Telemetry +Телеметрия -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +Средства .NET Core собирают данные об использовании для улучшения взаимодействия с пользователем. Эти данные анонимны и не включают в себя аргументы командной строки. Сбор данных осуществляется корпорацией Майкрософт, которая предоставляет их сообществу. +Вы можете явно отказаться от телеметрии, присвоив переменной среды DOTNET_CLI_TELEMETRY_OPTOUT значение 1 с помощью предпочитаемой оболочки. +Дополнительные сведения о телеметрии в средствах .NET Core см. по адресу https://aka.ms/dotnet-cli-telemetry. -Configuring... +Настройка... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Выполняется команда для изначального заполнения локального кэша пакетов, повышения скорости восстановления и обеспечения автономного доступа. Ее выполнение может занять до одной минуты и имеет единоразовый характер. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Не удалось изначально создать кэш NuGet. {0} завершился с ошибкой: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.tr.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.tr.xlf index beea5a407..bfd115a25 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.tr.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.tr.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + .NET Core’a Hoş Geldiniz! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +.NET Core hakkında daha fazla bilgiyi https://aka.ms/dotnet-docs adresinde bulabilirsiniz. Kullanılabilir komutları görmek için dotnet --help kullanın veya https://aka.ms/dotnet-cli-docs adresine gidin. -Telemetry +Telemetri -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +.NET Core araçları, deneyiminizi iyileştirmek için kullanım verileri toplar. Veriler anonimdir ve komut satırı bağımsız değişkenlerini içermez. Veriler Microsoft tarafından toplanır ve topluluk ile paylaşılır. +Sık kullandığınız kabuk aracılığıyla DOTNET_CLI_TELEMETRY_OPTOUT ortam değişkenini 1 değerine ayarlayarak telemetriyi geri çevirebilirsiniz. +.NET Core araç telemetrisi hakkında daha faza bilgiyi https://aka.ms/dotnet-cli-telemetry adresinde bulabilirsiniz. -Configuring... +Yapılandırılıyor... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +Yerel paket önbelleğinizi başlangıçta doldurmak, geri yükleme hızını artırmak ve çevrimdışı erişimi etkinleştirmek için bir komut çalıştırılıyor. Bu komutun tamamlanması yaklaşık bir dakika sürer ve bu işlem yalnızca bir kez gerçekleştirilir. + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + Birincil NuGet önbelleği oluşturulamadı. {0} şu hata ile başarısız oldu: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf index 7c5f8d599..be00d4a98 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + 欢迎使用 .NET Core! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +访问 https://aka.ms/dotnet-docs,可了解有关 .NET Core 的详细信息。使用 dotnet --help 查看可用命令,或转到 https://aka.ms/dotnet-cli-docs。 -Telemetry +遥测 -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +.NET Core 工具收集使用数据以改善用户体验。数据是匿名的,不包括命令行参数。数据由 Microsoft 收集并与社区共享。 +可使用你青睐的 shell 将 DOTNET_CLI_TELEMETRY_OPTOUT 环境变量设置为 1,选择停止遥测。 +可访问 https://aka.ms/dotnet-cli-telemetry,阅读有关 .NET Core 工具遥测的详细信息。 -Configuring... +正在配置... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +正在运行命令以初始填充本地软件包缓存、提高还原速度并启用脱机访问。此命令将需要一分钟时间完成,只会运行一次。 + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + 未能创建主要 NuGet 缓存。{0} 失败,错误为: {1} + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf index 07c758b88..e3e7cf0b6 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf @@ -17,25 +17,25 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Welcome to .NET Core! + 歡迎使用 .NET Core! --------------------- -Learn more about .NET Core @ https://aka.ms/dotnet-docs. Use dotnet --help to see available commands or go to https://aka.ms/dotnet-cli-docs. +深入了解 .NET Core @ https://aka.ms/dotnet-docs。使用 dotnet --help 查看可用的命令,或前往 https://aka.ms/dotnet-cli-docs。 -Telemetry +遙測 -------------- -The .NET Core tools collect usage data in order to improve your experience. The data is anonymous and does not include command-line arguments. The data is collected by Microsoft and shared with the community. -You can opt out of telemetry by setting a DOTNET_CLI_TELEMETRY_OPTOUT environment variable to 1 using your favorite shell. -You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-telemetry. +.NET Core 工具會收集使用方式資料以改善您的體驗。資料為匿名且不含命令列引數。資料由 Microsoft 收集並與社群共用。 +您可選擇退出遙測,方法是使用您慣用的殼層將 DOTNET_CLI_TELEMETRY_OPTOUT 環境變數設為 1。 +您可深入閱讀 .NET Core 工具遙測 @ https://aka.ms/dotnet-cli-telemetry。 -Configuring... +正在設定... ------------------- -A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - +正在執行命令以初始將您的本機套件快取填入,進而改善還原速度並啟用離線存取。此命令最多需要一分鐘完成,且只會進行一次。 + Failed to create prime the NuGet cache. {0} failed with: {1} - Failed to create prime the NuGet cache. {0} failed with: {1} - + 無法建立主要 NuGet 快取。{0} 失敗: {1} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf index 33c8d441b..780ea0fd5 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Byla zjištěna dvojí migrace projektu: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Metadata se stejným názvem ale různými hodnotami nejdou sloučit. + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: Soubor xproj není zadaný. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + V {0} bylo zjištěno několik souborů xproj. Prosím zadejte, jaký se má použít. + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + V nastavení MigrationSettings se v šabloně MSBuildProjectTemplate očekává jiná hodnota než null. + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + K migraci projektu {0} se nedá použít kompilátor {1}. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Očekávaný prvek by měl mít typ {0}, ale má {1}. + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} už existuje. Spustili jste už migraci? + expected destinationElement to not be null - expected destinationElement to not be null - + Očekávaný prvek destinationElement nesmí být null. + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (řádek: {1}, soubor: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Položky různého typu se nedají sloučit. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Bez společného zahrnutí se položky nedají sloučit. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Očekávaný prvek by měl mít typ {0}, ale má {1}. + Unexpected type {0} - Unexpected type {0} - + Nečekaný typ {0} + Deprecated Project - Deprecated Project - + Zastaralý projekt + Project not Restored - Project not Restored - + Projekt není obnovený + No Project - No Project - + Žádný projekt + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + Soubor project.json nemá v {0} specifikované cílové platformy. + Unresolved Dependency - Unresolved Dependency - + Nevyřešená závislost + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Nevyřešená závislost projektu ({0}) + File Overwrite - File Overwrite - + Přepsání souboru + Unsupported Script Variable - Unsupported Script Variable - + Nepodporovaná proměnná skriptu + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} je v současnosti nepodporovaná proměnná skriptu pro migraci projektu + Multiple Xproj Files - Multiple Xproj Files - + Více souborů Xproj + Dependency Project not found - Dependency Project not found - + Nenalezen závislý projekt. + Dependency project not found ({0}) - Dependency project not found ({0}) - + Nenalezen závislý projekt ({0}). + Unsupported Script Event Hook - Unsupported Script Event Hook - + Nepodporovaný hook události skriptu + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} je nepodporovaný hook události skriptu pro migraci projektu. + Multi-TFM - Multi-TFM - + Více TFM + Configuration Exclude - Configuration Exclude - + Vyloučit konfiguraci + Non-Csharp App - Non-Csharp App - + Aplikace není v C# + Files specified under PackOptions - Files specified under PackOptions - + Soubory zadané v části PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} zahrne nevyhovující. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} vyloučí nevyhovující. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} odebere nevyhovující. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} metadata neexistují {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} metadata mají jinou hodnotu {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Přidání metadat do položky {1}: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: Přeskočit migraci {1}, protože už migrace proběhla. + Executing rule: {0} - Executing rule: {0} - + Provádění pravidla: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: V projektu se nenašly možnosti konfigurace nebo sestavení platformy. + Migrating {0} target frameworks - Migrating {0} target frameworks - + Migrace cílových platforem {0} + Migrating framework {0} - Migrating framework {0} - + Migrace platformy {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: importy transformují hodnotu null pro {1} + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: Migrace {1} odkazů xproj na csproj + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: Spuštění pravidla migrace {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Položka {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Condition: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: Plně sloučená položka + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: Sloučení položky se {1} stávajícími položkami s jiným řetězcem podmínky. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: zahrnutých obsahuje {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Odebrání položky {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Ignorování položky {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Sloučení položky s {1} stávajícími položkami se stejným řetězcem podmínky. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Přidání sloučené položky {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + Merging property, output merged property - Merging property, output merged property - + Vlastnost sloučení, vlastnost sloučeného výstupu + Ignoring fully merged property - Ignoring fully merged property - + Úplně se ignoruje sloučená vlastnost + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Name={2}, Value={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf index ec01866db..49a299535 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Doppelte Projektmigration erkannt: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Zusammenführen der Metadaten mit dem gleichen Namen und anderen Werten nicht möglich. + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: Keine xproj-Datei angegeben. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + Mehrere xproj-Dateien in {0} gefunden; bitte geben Sie an, welche verwendet werden soll. + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MSBuildProjectTemplate ungleich NULL in MigrationSettings erwartet. + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + Migration von Projekt {0} mit Compiler {1} nicht möglich. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Element des Typs {0} wurde erwartet, aber {1} wurde empfangen. + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} ist bereits vorhanden. Wurde die Migration bereits ausgeführt? + expected destinationElement to not be null - expected destinationElement to not be null - + destinationElement ungleich NULL erwartet. + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (Zeile: {1}, Datei: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Zusammenführen von Elementen verschiedenen Typs nicht möglich. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Zusammenführen von Elementen ohne gemeinsames „Include“ nicht möglich. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Element des Typs {0} wurde erwartet, aber {1} wurde empfangen. + Unexpected type {0} - Unexpected type {0} - + Unerwarteter Typ: {0} + Deprecated Project - Deprecated Project - + Veraltetes Projekt + Project not Restored - Project not Restored - + Projekt nicht wiederhergestellt + No Project - No Project - + Kein Projekt + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + Die „project.json“ gibt keine Zielframeworks in {0} an. + Unresolved Dependency - Unresolved Dependency - + Nicht aufgelöste Abhängigkeit + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Nicht aufgelöste Projektabhängigkeit: ({0}) + File Overwrite - File Overwrite - + Dateiüberschreibung + Unsupported Script Variable - Unsupported Script Variable - + Nicht unterstützte Skriptvariable + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} ist eine derzeit nicht unterstützte Skriptvariable für die Projektmigration. + Multiple Xproj Files - Multiple Xproj Files - + Mehrere Xproj-Dateien + Dependency Project not found - Dependency Project not found - + Abhängigkeitsprojekt nicht gefunden + Dependency project not found ({0}) - Dependency project not found ({0}) - + Abhängigkeitsprojekt nicht gefunden ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Nicht unterstützter Skriptereignis-Hook + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} ist ein nicht unterstützter Skriptereignis-Hook für die Projektmigration. + Multi-TFM - Multi-TFM - + Multi-TFM + Configuration Exclude - Configuration Exclude - + Konfiguration: Ausschließen + Non-Csharp App - Non-Csharp App - + Nicht-CSharp-App + Files specified under PackOptions - Files specified under PackOptions - + Unter PackOptions angegebene Dateien + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} schließt nicht äquivalente Elemente ein. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} schließt nicht äquivalente Elemente aus. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} entfernt nicht äquivalente Elemente. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1}-Metadaten sind nicht vorhanden. {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1}-Metadaten haben einen anderen Wert. {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Metadaten werden {1}-Element hinzugefügt: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: Migration von {1} überspringen, da bereits migriert. + Executing rule: {0} - Executing rule: {0} - + Regel wird ausgeführt: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: Keine Konfigurations- oder Frameworkerstellungsoptionen im Projekt gefunden. + Migrating {0} target frameworks - Migrating {0} target frameworks - + {0} Zielframeworks werden migriert. + Migrating framework {0} - Migrating framework {0} - + Framework {0} wird migriert. + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: Importiert „Transform NULL“ für {1}. + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: {1}-xproj-zu-csproj-Verweise werden migriert. + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: Migrationsregel {1} wird ausgeführt. + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Element {{ ItemType: {1}, Bedingung: {2}, Einschließen: {3}, Ausschließen: {4}, Aktualisieren: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Bedingung: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: Element vollständig zusammengeführt + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, Bedingung: {2}, Einschließen: {3}, Ausschließen: {4}, Aktualisieren: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: Element wird mit {1} vorhandenen Elementen mit einer anderen Bedingungskette zusammengeführt. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: {1} ist im Umfang enthalten. + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Element wird entfernt {{ ItemType: {1}, Bedingung: {2}, Einschließen: {3}, Ausschließen: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Element wird ignoriert {{ ItemType: {1}, Bedingung: {2}, Einschließen: {3}, Ausschließen: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Element wird mit {1} vorhandenen Elementen mit der gleichen Bedingungskette zusammengeführt. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Zusammengeführtes Element wird hinzugefügt {{ ItemType: {1}, Bedingung: {2}, Einschließen: {3}, Ausschließen: {4} }} + Merging property, output merged property - Merging property, output merged property - + Eigenschaft wird zusammengeführt; zusammengeführte Eigenschaft wird ausgegeben. + Ignoring fully merged property - Ignoring fully merged property - + Vollständig zusammengeführte Eigenschaft wird ignoriert. + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Name={2}, Wert={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf index f0b7401d2..e06c7f8aa 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Se detectó una migración de proyecto doble: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + No se pueden combinar metadatos con el mismo nombre y valores distintos + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: no se proporcionó archivo xproj. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + Se encontraron varios archivos xproj en {0}; especifique cuáles se usarán + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + Se esperaba un valor MSBuildProjectTemplate no nulo en MigrationSettings + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + No se puede migrar el proyecto {0} con el compilador {1} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Se esperaba un elemento de tipo {0}, pero se recibió {1} + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} ya existe. ¿Ya se ejecutó la migración? + expected destinationElement to not be null - expected destinationElement to not be null - + Se esperaba que el valor destinationElement no fuese nulo + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (línea: {1}, archivo: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + No se pueden combinar elementos de tipos distintos. + Cannot merge items without a common include. - Cannot merge items without a common include. - + No se pueden combinar elementos sin una inclusión común. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Se esperaba un elemento de tipo {0}, pero se recibió {1} + Unexpected type {0} - Unexpected type {0} - + Tipo {0} inesperado + Deprecated Project - Deprecated Project - + Proyecto en desuso + Project not Restored - Project not Restored - + Proyecto no restaurado + No Project - No Project - + No hay proyecto + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + El archivo project.json no especifica plataformas de destino en {0} + Unresolved Dependency - Unresolved Dependency - + Dependencia no resuelta + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Dependencia de proyecto no resuelta ({0}) + File Overwrite - File Overwrite - + Sobrescritura de archivo + Unsupported Script Variable - Unsupported Script Variable - + Variable de script no compatible + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} actualmente es una variable de script no compatible con la migración de proyecto + Multiple Xproj Files - Multiple Xproj Files - + Varios archivos Xproj + Dependency Project not found - Dependency Project not found - + No se encontró proyecto de dependencia + Dependency project not found ({0}) - Dependency project not found ({0}) - + No se encontró proyecto de dependencia ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Enlace de evento de script no compatible + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} es un enlace de evento de script no compatible con la migración de proyecto + Multi-TFM - Multi-TFM - + Varios TFM + Configuration Exclude - Configuration Exclude - + Exclusión de configuración + Non-Csharp App - Non-Csharp App - + Aplicación no de Csharp + Files specified under PackOptions - Files specified under PackOptions - + Archivos especificados en PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} incluye valores no equivalentes. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} excluye valores no equivalentes. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} quita valores no equivalentes. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.\Los metadatos {1\} no existen {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.\Los metadatos {1\} tienen otro valor {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Agregando metadatos al elemento {1}: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: Omitir la migración de {1}; ya se migró. + Executing rule: {0} - Executing rule: {0} - + Ejecutando regla: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: No se encontraron opciones de compilación de plataforma ni configuración en el proyecto + Migrating {0} target frameworks - Migrating {0} target frameworks - + Migrando {0} plataformas de destino + Migrating framework {0} - Migrating framework {0} - + Migrando plataforma {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: importa el valor nulo de transformación para {1} + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: Migrando {1} referencias de xproj a csproj + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: Ejecutando regla de migración {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Condition: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: El elemento se combinó completamente + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: Combinando elemento con {1} elementos existentes con una cadena de condiciones distinta. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: inclusiones incluidas {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Quitando elemento {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Omitiendo elemento {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Combinando elemento con {1} elementos existentes con la misma cadena de condiciones. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Agregando elemento combinado {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + Merging property, output merged property - Merging property, output merged property - + Propiedad de combinación, propiedad combinada de salida + Ignoring fully merged property - Ignoring fully merged property - + Omitiendo propiedad completamente combinada + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Name={2}, Value={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf index f623d8a3e..9738ff2ed 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Détection d'une migration de projet en double : {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Impossible de fusionner des métadonnées avec un nom identique et des valeurs distinctes + {0}: No xproj file given. - {0}: No xproj file given. - + {0} : aucun fichier xproj fourni. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + Plusieurs fichiers xproj trouvés dans {0}. Spécifiez celui qui doit être utilisé + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MSBuildProjectTemplate non null attendu dans MigrationSettings + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + Impossible d'effectuer la migration du projet {0} à l'aide du compilateur {1} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + L'élément est censé être de type {0}, au lieu de {1} + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} existe déjà. La migration a-t-elle déjà été effectuée ? + expected destinationElement to not be null - expected destinationElement to not be null - + destinationElement est censé être non null + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (ligne : {1}, fichier : {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Impossible de fusionner des éléments dont les types sont différents. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Impossible de fusionner des éléments sans fichier Include commun. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + L'élément est censé être de type {0}, au lieu de {1} + Unexpected type {0} - Unexpected type {0} - + Type inattendu {0} + Deprecated Project - Deprecated Project - + Projet déconseillé + Project not Restored - Project not Restored - + Projet non restauré + No Project - No Project - + Aucun projet + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + Le fichier project.json ne spécifie aucun framework cible dans {0} + Unresolved Dependency - Unresolved Dependency - + Dépendance non résolue + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Dépendance de projet non résolue ({0}) + File Overwrite - File Overwrite - + Remplacement de fichier + Unsupported Script Variable - Unsupported Script Variable - + Variable de script non prise en charge + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} est une variable de script non prise en charge pour la migration de projet + Multiple Xproj Files - Multiple Xproj Files - + Plusieurs fichiers Xproj + Dependency Project not found - Dependency Project not found - + Projet de dépendance introuvable + Dependency project not found ({0}) - Dependency project not found ({0}) - + Projet de dépendance introuvable ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Crochet d'événement de script non pris en charge + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} est un crochet d'événement de script non pris en charge pour la migration de projet + Multi-TFM - Multi-TFM - + TFM multiple + Configuration Exclude - Configuration Exclude - + Exclusion de configuration + Non-Csharp App - Non-Csharp App - + Application non Csharp + Files specified under PackOptions - Files specified under PackOptions - + Fichiers spécifiés sous PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} : inclusions non équivalentes. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} : exclusions non équivalentes. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} : suppressions non équivalentes. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} : métadonnées inexistantes {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} : métadonnées avec une autre valeur {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0} : ajout de métadonnées à l'élément {1} : {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0} : migration de {1} ignorée, car elle a déjà été effectuée. + Executing rule: {0} - Executing rule: {0} - + Règle d'exécution : {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0} : options de build de configuration ou de framework introuvables dans le projet + Migrating {0} target frameworks - Migrating {0} target frameworks - + Migration de {0} frameworks cibles + Migrating framework {0} - Migrating framework {0} - + Migration du framework {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0} : importe une valeur null de transformation pour {1} + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0} : migration de {1} dépendances xproj vers csproj + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0} : exécution de la règle de migration {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0} : élément {{ ItemType : {1}, condition : {2}, inclusion : {3}, exclusion : {4}, mise à jour : {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0} : ItemGroup {{ condition : {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0} : élément entièrement fusionné + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0} : AddItemToItemGroup {{ ItemType : {1}, condition : {2}, inclusion : {3}, exclusion : {4}, mise à jour : {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0} : fusion de l'élément avec {1} éléments existants, avec une chaîne de condition différente. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0} : inclusions englobées {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0} : suppression de l'élément {{ ItemType : {1}, condition : {2}, inclusion : {3}, exclusion : {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0} : élément ignoré {{ ItemType : {1}, condition : {2}, inclusion : {3}, exclusion : {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0} : fusion de l'élément avec {1} éléments existants, avec la même chaîne de condition. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0} : ajout de l'élément fusionné {{ ItemType : {1}, condition : {2}, inclusion : {3}, exclusion : {4} }} + Merging property, output merged property - Merging property, output merged property - + Propriété de fusion, propriété fusionnée de sortie + Ignoring fully merged property - Ignoring fully merged property - + Propriété entièrement fusionnée ignorée + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0} : {1}, {{ Nom={2}, valeur={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.it.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.it.xlf index f7ec94003..9a87a4f91 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.it.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.it.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + È stata rilevata una doppia migrazione del progetto: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Non è possibile unire i metadati con lo stesso nome e valori diversi + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: il file xproj non è stato specificato. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + In {0} sono stati trovati più file xproj. Specificare quello da usare + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + In MigrationSettings è previsto un elemento MSBuildProjectTemplate non Null + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + Non è possibile eseguire la migrazione del progetto {0} con il compilatore {1} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + L'elemento doveva essere di tipo {0}, ma è stato ottenuto {1} + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} esiste già. La migrazione è già stata eseguita? + expected destinationElement to not be null - expected destinationElement to not be null - + l'elemento destinationElement non deve essere Null + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (riga: {1}, file: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Non è possibile unire elementi di tipi diversi. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Non è possibile unire elementi senza un elemento include comune. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + L'elemento doveva essere di tipo {0}, ma è stato ottenuto {1} + Unexpected type {0} - Unexpected type {0} - + Tipo imprevisto: {0} + Deprecated Project - Deprecated Project - + Progetto deprecato + Project not Restored - Project not Restored - + Progetto non ripristinato + No Project - No Project - + Nessun progetto + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + Il file project.json non specifica alcun framework di destinazione in {0} + Unresolved Dependency - Unresolved Dependency - + Dipendenza non risolta + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Dipendenza del progetto non risolta ({0}) + File Overwrite - File Overwrite - + Sovrascrittura file + Unsupported Script Variable - Unsupported Script Variable - + Variabile script non supportata + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} è attualmente una variabile script non supportata per la migrazione del progetto + Multiple Xproj Files - Multiple Xproj Files - + Più file xproj + Dependency Project not found - Dependency Project not found - + Progetto della dipendenza non trovato + Dependency project not found ({0}) - Dependency project not found ({0}) - + Progetto della dipendenza non trovato ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Hook di evento script non supportato + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} è un hook di evento script non supportato per la migrazione del progetto + Multi-TFM - Multi-TFM - + TFM multiplo + Configuration Exclude - Configuration Exclude - + Esclusione configurazione + Non-Csharp App - Non-Csharp App - + App non Csharp + Files specified under PackOptions - Files specified under PackOptions - + File specificati in PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} include elementi non equivalenti. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} esclude elementi non equivalenti. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} rimuove elementi non equivalenti. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + I metadati di {0}.{1} non esistono {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + Il valore dei metadati di {0}.{1} è diverso {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: aggiunta di metadati all'elemento {1}: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: la migrazione di {1} verrà ignorata perché è già stata eseguita. + Executing rule: {0} - Executing rule: {0} - + Esecuzione della regola: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: nel progetto non sono state trovate opzioni di configurazione o creazione del framework + Migrating {0} target frameworks - Migrating {0} target frameworks - + Migrazione di {0} framework di destinazione + Migrating framework {0} - Migrating framework {0} - + Migrazione del framework {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: importa il valore Null della trasformazione per {1} + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: migrazione di {1} riferimenti da xproj a csproj + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: esecuzione della regola di migrazione {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: elemento {{ Tipo di elemento: {1}. Condizione: {2}. Includi: {3}. Escludi: {4}. Aggiorna: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Condizione: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: elemento completamente unito + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ Tipo di elemento: {1}. Condizione: {2}. Includi: {3}. Escludi: {4}. Aggiorna: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: unione dell'elemento con {1} elementi esistenti e una catena di condizioni diversa. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: incluso include {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: rimozione dell'elemento {{ Tipo di elemento: {1}. Condizione: {2}. Includi: {3}. Escludi: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: elemento ignorato {{ Tipo di elemento: {1}. Condizione: {2}. Includi: {3}. Escludi: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: unione dell'elemento con {1} elementi esistenti e la stessa catena di condizioni. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: aggiunta dell'elemento unito {{ Tipo di elemento: {1}. Condizione: {2}. Includi: {3}. Escludi: {4} }} + Merging property, output merged property - Merging property, output merged property - + Unione della proprietà. Proprietà unita di output + Ignoring fully merged property - Ignoring fully merged property - + La proprietà completamente unita verrà ignorata + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Nome={2}. Valore={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf index 291212f54..ef10a2596 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + ダブル プロジェクト移行が検出されました: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + 名前が同じで値が異なるメタデータをマージすることはできません + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: xproj ファイルが指定されていません。 + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + 複数の xproj ファイルが {0} に見つかりました。使用するファイルを指定してください + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MigrationSettings に null 以外の MSBuildProjectTemplate が必要です + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + コンパイラ {1} を使用してプロジェクト {0} を移行できません + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + 型 {0} の要素が必要でしたが、{1} を取得しました + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} は既に存在します。既に移行を実行しましたか? + expected destinationElement to not be null - expected destinationElement to not be null - + destinationElement は null でないことが必要です + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (行: {1}、ファイル: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + 異なる種類のアイテムをマージすることはできません。 + Cannot merge items without a common include. - Cannot merge items without a common include. - + 共通インクルードなしでアイテムをマージすることはできません。 + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + 型 {0} の要素が必要でしたが、{1} を取得しました + Unexpected type {0} - Unexpected type {0} - + 予期しない型 {0} + Deprecated Project - Deprecated Project - + 使用されていないプロジェクト + Project not Restored - Project not Restored - + 復元されなかったプロジェクト + No Project - No Project - + プロジェクトなし + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + project.json が、{0} でターゲット フレームワークを指定していません + Unresolved Dependency - Unresolved Dependency - + 未解決の依存関係 + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + 未解決のプロジェクト依存関係 ({0}) + File Overwrite - File Overwrite - + ファイルの上書き + Unsupported Script Variable - Unsupported Script Variable - + サポートされていないスクリプト変数 + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} は現在、プロジェクト移行ではサポートされていないスクリプト変数です + Multiple Xproj Files - Multiple Xproj Files - + 複数の Xproj ファイル + Dependency Project not found - Dependency Project not found - + 依存関係プロジェクトが見つかりません + Dependency project not found ({0}) - Dependency project not found ({0}) - + 依存関係プロジェクトが見つかりません ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + サポートされていないスクリプト イベント フック + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} は、プロジェクト移行ではサポートされていないスクリプト イベント フックです + Multi-TFM - Multi-TFM - + マルチ TFM + Configuration Exclude - Configuration Exclude - + 構成の除外 + Non-Csharp App - Non-Csharp App - + Csharp 以外のアプリ + Files specified under PackOptions - Files specified under PackOptions - + PackOptions で指定されたファイル + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} は、等しくない値を含みます。 + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} は、等しくない値を除外します。 + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} は、等しくない値を削除します。 + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} メタデータは存在しません: {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} メタデータに別の値が含まれています: {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: メタデータを {1} アイテムに追加しています: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: {1} の移行をスキップします。既に移行されています。 + Executing rule: {0} - Executing rule: {0} - + ルールを実行しています: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: プロジェクトに構成またはフレームワーク ビルド オプションが見つかりません + Migrating {0} target frameworks - Migrating {0} target frameworks - + {0} ターゲット フレームワークを移行しています + Migrating framework {0} - Migrating framework {0} - + フレームワーク {0} を移行しています + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: {1} の null 変換をインポートします + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: {1} xproj を csproj 参照に移行しています + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: 移行ルール {1} を実行しています + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: アイテム {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4}、更新: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ 条件: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: アイテムが完全にマージされました + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4}、更新: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: 別の条件チェーンで、アイテムを \ {1 \} 個の既存のアイテムとマージしています。 + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: 包含には {1} が含まれます + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: アイテムを削除しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: アイテムを無視しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: 同じ条件チェーンで、アイテムを \ {1 \} 個の既存のアイテムとマージしています。 + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: マージしたアイテムを追加しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} + Merging property, output merged property - Merging property, output merged property - + プロパティ、出力マージ プロパティをマージしています + Ignoring fully merged property - Ignoring fully merged property - + 完全にマージしたプロパティを無視しています + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}、{{ Name={2}, Value={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ko.xlf index 445e33f6c..8b724fdda 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ko.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + 이중 프로젝트 마이그레이션이 검색됨: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + 동일한 이름의 값이 서로 다른 메타데이터를 병합할 수 없습니다. + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: 지정된 xproj 파일이 없습니다. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + {0}에 여러 xproj 파일이 있습니다. 사용할 파일을 지정하세요. + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MigrationSettings에 Null이 아닌 MSBuildProjectTemplate 필요 + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + {1} 컴파일러를 사용하여 {0} 프로젝트를 마이그레이션할 수 없습니다. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + {0} 형식의 요소가 필요하지만 {1}을(를) 받았습니다. + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0}은(는) 이미 있습니다. 마이그레이션이 이미 실행되었나요? + expected destinationElement to not be null - expected destinationElement to not be null - + destinationElement는 null이 아니어야 함 + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0}(줄: {1}, 파일: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + 서로 다른 유형의 항목을 병합할 수 없습니다. + Cannot merge items without a common include. - Cannot merge items without a common include. - + 공통된 포함 요소가 없는 항목을 병합할 수 없습니다. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + {0} 형식의 요소가 필요하지만 {1}을(를) 받았습니다. + Unexpected type {0} - Unexpected type {0} - + 예기치 않은 유형 {0} + Deprecated Project - Deprecated Project - + 사용되지 않는 프로젝트 + Project not Restored - Project not Restored - + 프로젝트가 복원되지 않음 + No Project - No Project - + 프로젝트 없음 + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + project.json이 {0}에서 대상 프레임워크를 지정하지 않습니다. + Unresolved Dependency - Unresolved Dependency - + 확인되지 않은 종속성 + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + 확인되지 않은 프로젝트 종속성({0}) + File Overwrite - File Overwrite - + 파일 덮어쓰기 + Unsupported Script Variable - Unsupported Script Variable - + 지원되지 않는 스크립트 변수 + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0}은(는) 현재 프로젝트 마이그레이션에서 지원되지 않는 스크립트 변수입니다. + Multiple Xproj Files - Multiple Xproj Files - + 여러 Xproj 파일 + Dependency Project not found - Dependency Project not found - + 종속성 프로젝트를 찾을 수 없음 + Dependency project not found ({0}) - Dependency project not found ({0}) - + 종속성 프로젝트를 찾을 수 없음({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + 지원되지 않는 스크립트 이벤트 후크 + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0}은(는) 현재 프로젝트 마이그레이션에서 지원되지 않는 스크립트 이벤트 후크입니다. + Multi-TFM - Multi-TFM - + 다중 TFM + Configuration Exclude - Configuration Exclude - + 구성 제외 + Non-Csharp App - Non-Csharp App - + 비 Csharp 앱 + Files specified under PackOptions - Files specified under PackOptions - + PackOptions에서 지정된 파일 + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1}은(는) 비동일 항목을 포함합니다. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1}은(는) 비동일 항목을 제외합니다. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1}은(는) 같지 않은 항목을 제거합니다. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} 메타데이터가 없습니다. {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} 메타데이터가 또 다른 값을 가지고 있습니다. {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: 메타데이터를 {1} 항목에 추가: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: {1}의 마이그레이션을 건너뜁니다. 이미 마이그레이션되었습니다. + Executing rule: {0} - Executing rule: {0} - + 규칙 실행 중: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: 프로젝트에 구성 또는 프레임워크 빌드 옵션이 없음 + Migrating {0} target frameworks - Migrating {0} target frameworks - + {0} 대상 프레임워크 마이그레이션 중 + Migrating framework {0} - Migrating framework {0} - + {0} 프레임워크 마이그레이션 중 + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: {1}용 변환 null 가져오기 + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: {1} xproj를 csproj 참조로 마이그레이션 중 + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: {1} 마이그레이션 규칙 실행 중 + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: 항목 {{ 항목 형식: {1}, 조건: {2}, 포함: {3}, 제외: {4}, 업데이트: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ 조건: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: 항목이 완전히 병합됨 + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ 항목 형식: {1}, 조건: {2}, 포함: {3}, 제외: {4}, 업데이트: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: 항목을 조건 체인이 다른 {1}개의 기존 항목과 병합합니다. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: 포함된 항목에 {1} 포함 + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: 항목 제거 {{ 항목 형식: {1}, 조건: {2}, 포함: {3}, 제외: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: 항목 무시 {{ 항목 형식: {1}, 조건: {2}, 포함: {3}, 제외: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: {1}개 기존 항목이 있는 항목을 동일한 조건 체인과 병합합니다. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: 병합된 항목 추가 {{ 항목 형식: {1}, 조건: {2}, 포함: {3}, 제외: {4} }} + Merging property, output merged property - Merging property, output merged property - + 속성 병합 중, 병합된 속성 출력 + Ignoring fully merged property - Ignoring fully merged property - + 완전히 병합된 속성 무시 + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ 이름={2}, 값={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pl.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pl.xlf index ea3489947..f637bb20f 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pl.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pl.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Wykryto podwójną migrację projektu: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Nie można scalić metadanych o tej samej nazwie i różnych wartościach + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: Nie podano pliku xproj. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + Znaleziono wiele plików xproj w lokalizacji {0} — określ, który ma zostać użyty + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + W ustawieniach MigrationSettings oczekiwano szablonu MSBuildProjectTemplate o wartości innej niż null + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + Nie można zmigrować projektu {0} przy użyciu kompilatora {1} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Oczekiwano elementu typu {0}, ale otrzymano typ {1} + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + Element {0} już istnieje. Czy migracja została już uruchomiona? + expected destinationElement to not be null - expected destinationElement to not be null - + oczekiwano elementu destinationElement niemającego wartości null + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + Element {0} (wiersz: {1}, plik: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Nie można scalić elementów różnych typów. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Nie można scalić elementów niemających wspólnej wartości elementu Include. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Oczekiwano elementu typu {0}, ale otrzymano typ {1} + Unexpected type {0} - Unexpected type {0} - + Nieoczekiwany typ {0} + Deprecated Project - Deprecated Project - + Przestarzały projekt + Project not Restored - Project not Restored - + Projekt nie został przywrócony + No Project - No Project - + Brak projektu + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + W pliku project.json nie określono żadnych platform docelowych w lokalizacji {0} + Unresolved Dependency - Unresolved Dependency - + Nierozpoznana zależność + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Nierozpoznana zależność projektu ({0}) + File Overwrite - File Overwrite - + Zastąpienie pliku + Unsupported Script Variable - Unsupported Script Variable - + Nieobsługiwana zmienna skryptu + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} to zmienna skryptu, która nie jest obecnie obsługiwana na potrzeby migracji projektu + Multiple Xproj Files - Multiple Xproj Files - + Wiele plików xproj + Dependency Project not found - Dependency Project not found - + Nie odnaleziono projektu zależności + Dependency project not found ({0}) - Dependency project not found ({0}) - + Nie odnaleziono projektu zależności ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Nieobsługiwany punkt zaczepienia zdarzenia skryptu + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} to punkt zaczepienia zdarzenia skryptu, który nie jest obsługiwany na potrzeby migracji projektu + Multi-TFM - Multi-TFM - + Wiele krótkich nazw platformy docelowej + Configuration Exclude - Configuration Exclude - + Konfiguracja — wykluczanie + Non-Csharp App - Non-Csharp App - + Aplikacja w języku innym niż C# + Files specified under PackOptions - Files specified under PackOptions - + Pliki określone w opcjach PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + Element {0}.{1} dołącza elementy nierównoważne. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + Element {0}.{1} wyklucza elementy nierównoważne. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + Element {0}.{1} usuwa elementy nierównoważne. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + Metadane {0}.{1} nie istnieją {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + Metadane {0}.{1} mają inną wartość {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Dodawanie metadanych do elementu {1}: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: Pomiń migrowanie elementu {1} — jest już zmigrowany. + Executing rule: {0} - Executing rule: {0} - + Wykonywanie reguły: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: Nie znaleziono konfiguracji lub opcji kompilacji platformy w projekcie + Migrating {0} target frameworks - Migrating {0} target frameworks - + Migrowanie {0} platform docelowych + Migrating framework {0} - Migrating framework {0} - + Migrowanie platformy {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: Importy przekształcają wartość null na {1} + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: Migrowanie pliku xproj {1} do odwołań projektu csproj + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: Wykonywanie reguły migracji {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Element {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: Element ItemGroup {{ Condition: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: Element został w pełni scalony + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Element AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: Scalanie elementu z {1} istniejącymi elementami z zastosowaniem innego łańcucha warunków. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: Ujęty element zawiera element {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Usuwanie elementu {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Ignorowanie elementu {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Scalanie elementu z {1} istniejącymi elementami z zastosowaniem tego samego łańcucha warunków. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Dodawanie scalonego elementu {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + Merging property, output merged property - Merging property, output merged property - + Scalanie właściwości, wyprowadź scaloną właściwość + Ignoring fully merged property - Ignoring fully merged property - + Ignorowanie w pełni scalonej właściwości + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: Element {1}, {{ Name={2}, Value={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf index a9dc97cc6..086f929c4 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Detecção de migração dupla de projeto: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Não é possível mesclar metadados com o mesmo nome e valores diferentes + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: Nenhum arquivo xproj fornecido. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + Vários arquivos xproj encontrados em {0}. Especifique qual deles deve ser usado + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MSBuildProjectTemplate não nulo esperado em MigrationSettings + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + Não é possível migrar o projeto {0} usando o compilador {1} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Esperado elemento do tipo {0}, mas {1} foi obtido + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} já existe. A migração já foi executada? + expected destinationElement to not be null - expected destinationElement to not be null - + esperado destinationElement não nulo + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (linha: {1}, arquivo: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Não é possível mesclar itens de tipos diferentes. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Não é possível mesclar itens sem uma inclusão comum. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Esperado elemento do tipo {0}, mas {1} foi obtido + Unexpected type {0} - Unexpected type {0} - + Tipo inesperado {0} + Deprecated Project - Deprecated Project - + Projeto Preterido + Project not Restored - Project not Restored - + Projeto não Restaurado + No Project - No Project - + Nenhum projeto + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + O project.json não especifica nenhuma estrutura de destino em {0} + Unresolved Dependency - Unresolved Dependency - + Dependência Não Resolvida + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Dependência de projeto não resolvida ({0}) + File Overwrite - File Overwrite - + Substituição de Arquivo + Unsupported Script Variable - Unsupported Script Variable - + Variável de Script Sem Suporte + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + Atualmente, {0} é uma variável de script sem suporte para migração de projeto + Multiple Xproj Files - Multiple Xproj Files - + Vários Arquivos Xproj + Dependency Project not found - Dependency Project not found - + Projeto de Dependência não encontrado + Dependency project not found ({0}) - Dependency project not found ({0}) - + Projeto de dependência não encontrado ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Gancho de Evento de Script Sem Suporte + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} é um gancho de evento de script sem suporte para a migração de um projeto + Multi-TFM - Multi-TFM - + Múltiplo TFM + Configuration Exclude - Configuration Exclude - + Exclusão de Configuração + Non-Csharp App - Non-Csharp App - + Aplicativo não Csharp + Files specified under PackOptions - Files specified under PackOptions - + Arquivos especificados em PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} inclui não equivalente. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} exclui não equivalente. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} remove não equivalente. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} os metadados não existem {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} os metadados têm outro valor {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Adicionando os metadados ao item {1}: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: Ignorar a migração de {1}; ele já foi migrado. + Executing rule: {0} - Executing rule: {0} - + Executando regra: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: Nenhuma opção de build de estrutura ou configuração encontrada no projeto + Migrating {0} target frameworks - Migrating {0} target frameworks - + Migrando estruturas de destino {0} + Migrating framework {0} - Migrating framework {0} - + Migrando estrutura {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: transformação de importação nula para {1} + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: Migrando {1} xproj para referências de csproj + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: Executando regra de migração {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Item {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4}, Atualizar: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Condição: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: Item totalmente mesclado + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4}, Atualizar: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: Mesclando item com os itens existentes {1} e com uma cadeia de condição diferente. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: abrangido inclui {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Removendo Item {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Ignorando Item {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Mesclando item com os itens existentes {1} e com a mesma cadeia de condição. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Adicionando Item Mesclado {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4} }} + Merging property, output merged property - Merging property, output merged property - + Mesclando propriedade, propriedade mesclada de saída + Ignoring fully merged property - Ignoring fully merged property - + Ignorando propriedade totalmente mesclada + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Name={2}, Value={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf index e34b6167f..9527e4d4a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + Обнаружен двойной перенос проекта: {0}. + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Не удается объединить метаданные с одинаковым именем и разными значениями. + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: не указан файл XPROJ. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + В {0} найдено несколько файлов XPROJ, выберите один из них. + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + Ожидается отличное от NULL значение MSBuildProjectTemplate в MigrationSettings. + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + Не удается перенести проект {0} с помощью компилятора {1}. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Ожидался элемент типа {0}, но получен {1}. + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} уже существует. Миграция уже выполнялась? + expected destinationElement to not be null - expected destinationElement to not be null - + ожидается отличное от NULL значение destinationElement + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (строка: {1}, файл: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Не удается объединить элементы с разными типами. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Не удается объединить элементы без общего включения. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Ожидался элемент типа {0}, но получен {1}. + Unexpected type {0} - Unexpected type {0} - + Неожиданный тип {0} + Deprecated Project - Deprecated Project - + Нерекомендуемый проект + Project not Restored - Project not Restored - + Проект не восстановлен. + No Project - No Project - + Нет проекта. + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + Файл project.json не указывает целевые платформы в {0}. + Unresolved Dependency - Unresolved Dependency - + Неразрешенная зависимость + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Неразрешенная зависимость проекта ({0}) + File Overwrite - File Overwrite - + Перезапись файла + Unsupported Script Variable - Unsupported Script Variable - + Неподдерживаемая переменная скрипта + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} сейчас является неподдерживаемой переменной скрипта для переноса проекта. + Multiple Xproj Files - Multiple Xproj Files - + Несколько файлов XPROJ + Dependency Project not found - Dependency Project not found - + Проект зависимости не найден. + Dependency project not found ({0}) - Dependency project not found ({0}) - + Проект зависимости не найден ({0}). + Unsupported Script Event Hook - Unsupported Script Event Hook - + Неподдерживаемый перехватчик события скрипта + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} является неподдерживаемым перехватчиком события скрипта для переноса проекта. + Multi-TFM - Multi-TFM - + Multi-TFM + Configuration Exclude - Configuration Exclude - + Исключение конфигурации + Non-Csharp App - Non-Csharp App - + Приложение, отличное от Csharp + Files specified under PackOptions - Files specified under PackOptions - + Файлы, указанные в PackOptions + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} включает "не эквивалентно". + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} исключает "не эквивалентно". + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} удаляет "не эквивалентно". + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + Метаданные {0}.{1} не существуют {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + Метаданные {0}.{1} имеют другое значение {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: добавление метаданных в элемент {1}: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: пропуск миграции {1}, этот объект уже перенесен. + Executing rule: {0} - Executing rule: {0} - + Выполнение правила: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: в проекте не найдены параметры сборки для платформы или конфигурации. + Migrating {0} target frameworks - Migrating {0} target frameworks - + Перенос целевых платформ: {0} + Migrating framework {0} - Migrating framework {0} - + Перенос платформы: {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: импорты преобразуют значение NULL для {1}. + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: перенос XPROJ {1} в ссылки CSPROJ + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: выполнение правила переноса {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: элемент {{ ItemType: {1}, условие: {2}, включение: {3}, исключение: {4}, обновление: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ условие: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: элемент полностью объединен. + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, условие: {2}, включение: {3}, исключение: {4}, обновление: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: объединение элемента с существующими элементами {1} с другой цепочкой условий. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: охват включает {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: удаление элемента {{ ItemType: {1}, условие: {2}, включение: {3}, исключение: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: пропуск элемента {{ ItemType: {1}, условие: {2}, включение: {3}, исключение: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: объединение элемента с существующими элементами {1} с такой же цепочкой условий. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: добавление объединенного элемента {{ ItemType: {1}, условие: {2}, включение: {3}, исключение: {4} }} + Merging property, output merged property - Merging property, output merged property - + Объединение свойства, выходное объединенное свойство + Ignoring fully merged property - Ignoring fully merged property - + Пропуск полностью объединенного свойства + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ имя={2}, значение={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.tr.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.tr.xlf index bd066d5aa..ac4541833 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.tr.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.tr.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + İkili proje geçişi algılandı: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + Aynı ada ve farklı değerlere sahip meta veriler birleştirilemez + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: xproj dosyası belirtilmedi. + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + {0} içinde birden çok xproj dosyası bulundu, lütfen kullanılacak dosyayı belirtin + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MigrationSettings içinde null olmayan MSBuildProjectTemplate bekleniyordu + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + {0} projesi, {1} derleyicisi kullanılarak geçirilemiyor + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Öğenin {0} türünde olması bekleniyordu ancak {1} alındı + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} zaten var. Geçiş zaten çalıştırıldı mı? + expected destinationElement to not be null - expected destinationElement to not be null - + destinationElement öğesinin null olmaması bekleniyordu + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (satır: {1}, dosya: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + Farklı türlerdeki öğeler birleştirilemez. + Cannot merge items without a common include. - Cannot merge items without a common include. - + Ortak bir include olmadan öğeler birleştirilemez. + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + Öğenin {0} türünde olması bekleniyordu ancak {1} alındı + Unexpected type {0} - Unexpected type {0} - + Beklenmeyen tür {0} + Deprecated Project - Deprecated Project - + Proje Kullanım Dışı Bırakıldı + Project not Restored - Project not Restored - + Proje Geri Yüklenmedi + No Project - No Project - + Proje Yok + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + Project.json {0} içinde hedef çerçeve belirtmiyor + Unresolved Dependency - Unresolved Dependency - + Çözümlenmemiş Bağımlılık + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + Çözümlenmemiş proje bağımlılığı ({0}) + File Overwrite - File Overwrite - + Dosya Üzerine Yazma + Unsupported Script Variable - Unsupported Script Variable - + Desteklenmeyen Betik Değişkeni + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} şu anda proje geçişi için desteklenmeyen bir betik değişkeni + Multiple Xproj Files - Multiple Xproj Files - + Birden Çok Xproj Dosyası + Dependency Project not found - Dependency Project not found - + Bağımlılık Projesi bulunamadı + Dependency project not found ({0}) - Dependency project not found ({0}) - + Bağımlılık projesi bulunamadı ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + Desteklenmeyen Betik Olayı Kancası + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0}, proje geçişi için desteklenmeyen bir betik olay kancası + Multi-TFM - Multi-TFM - + Çoklu TFM + Configuration Exclude - Configuration Exclude - + Yapılandırmadan Dışlama + Non-Csharp App - Non-Csharp App - + Csharp Olmayan Uygulama + Files specified under PackOptions - Files specified under PackOptions - + PackOptions altında belirtilen dosyalar + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} eşit olmayanı içerir. + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} eşit olmayanı dışlar. + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} eşit olmayanı kaldırır. + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} meta verileri yok {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} meta verileri başka bir değere sahip {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Meta veriler {1} öğesine ekleniyor: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: {1} öğesini geçirmeyi atlayın, öğe zaten geçirildi. + Executing rule: {0} - Executing rule: {0} - + Kural çalıştırılıyor: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: Projede herhangi bir yapılandırma veya çerçeve derleme seçeneği yok + Migrating {0} target frameworks - Migrating {0} target frameworks - + {0} hedef çerçeve geçiriliyor + Migrating framework {0} - Migrating framework {0} - + {0} çerçevesi geçiriliyor + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: {1} için null dönüştürmeyi içeri aktarır + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: {1} xproj, csproj başvurularına geçiriliyor + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: Geçiş kuralı {1} yürütülüyor + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Öğe {{ Öğe Türü: {1}, Koşul: {2}, Dahil Et: {3}, Dışla: {4}, Güncelleştir: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: Öğe Grubu {{ Koşul: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: Öğe tamamen birleştirildi + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Öğe Grubuna Ekle {{ Öğe Türü: {1}, Koşul: {2}, Dahil Et: {3}, Dışla: {4}, Güncelleştir: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: Öğe, farklı bir koşul zincirine sahip {1} mevcut öğeyle birleştiriliyor. + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: kapsanan {1} öğesini içeriyor + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Öğe Kaldırılıyor {{ Öğe Türü: {1}, Koşul: {2}, Dahil Et: {3}, Dışla: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Öğe Yoksayılıyor {{ Öğe Türü: {1}, Koşul: {2}, Dahil Et: {3}, Dışla: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Öğe, aynı koşul zincirine sahip {1} mevcut öğeyle birleştiriliyor. + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Birleştirilen Öğe Ekleniyor {{ IÖğe Türü: {1}, Koşul: {2}, Dahil Et: {3}, Dışla: {4} }} + Merging property, output merged property - Merging property, output merged property - + Özellik birleştiriliyor, birleştirilmiş özellik çıkışı + Ignoring fully merged property - Ignoring fully merged property - + Tamamen birleştirilmiş özellik yoksayılıyor + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Ad={2}, Değer={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf index 4263cb901..bde8c67a3 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + 检测到双项目迁移: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + 无法合并具有相同名称和不同值的元数据 + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: 未提供 xproj 文件。 + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + 在 {0} 中找到多个 xproj 文件。请指定要使用哪一个 + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MigrationSettings 中预期使用 non-null MSBuildProjectTemplate + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + 无法使用编译器 {1} 迁移项目 {0} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + 预期元素为类型 {0},但得到 {1} + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} 已存在。是否已运行迁移? + expected destinationElement to not be null - expected destinationElement to not be null - + 预期 destinationElement 不为 null + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (行: {1},文件: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + 无法合并不同类型的项。 + Cannot merge items without a common include. - Cannot merge items without a common include. - + 无法合并没有公共包含的项目。 + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + 预期元素为类型 {0},但得到 {1} + Unexpected type {0} - Unexpected type {0} - + 意外类型 {0} + Deprecated Project - Deprecated Project - + 已弃用的项目 + Project not Restored - Project not Restored - + 未还原的项目 + No Project - No Project - + 无项目 + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + project.json 在 {0} 中未指定任何目标框架 + Unresolved Dependency - Unresolved Dependency - + 未解析的依赖项 + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + 未解析的项目依赖项 ({0}) + File Overwrite - File Overwrite - + 文件覆盖 + Unsupported Script Variable - Unsupported Script Variable - + 不支持的脚本变量 + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + 项目迁移目前不支持 {0} 脚本变量 + Multiple Xproj Files - Multiple Xproj Files - + 多个 Xproj 文件 + Dependency Project not found - Dependency Project not found - + 未找到依赖项项目 + Dependency project not found ({0}) - Dependency project not found ({0}) - + 未找到依赖项项目 ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + 不支持的脚本事件挂钩 + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + 项目迁移不支持 {0} 脚本事件挂钩 + Multi-TFM - Multi-TFM - + Multi-TFM + Configuration Exclude - Configuration Exclude - + 配置排除 + Non-Csharp App - Non-Csharp App - + Non-Csharp 应用 + Files specified under PackOptions - Files specified under PackOptions - + PackOptions 下指定的文件 + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} 包括不等同。 + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} 排除不等同。 + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} 删除不等同。 + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1}元数据不存在 {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} 元数据具有另外一个值 {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: 将元数据添加到 {1} 项: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: 跳过迁移 {1},已迁移该项。 + Executing rule: {0} - Executing rule: {0} - + 执行规则: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: 在项目中未找到任何配置或框架生成选项 + Migrating {0} target frameworks - Migrating {0} target frameworks - + 正在迁移 {0} 目标框架 + Migrating framework {0} - Migrating framework {0} - + 正在迁移框架 {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: 为 {1} 导入 transform null + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: 正在将 {1} xproj 迁移到 csproj 引用 + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: 执行迁移规则 {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Condition: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: 完全合并的项 + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: 使用不同的条件链将项与 {1} 现有项合并。 + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: 涵盖包括 {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: 使用相同条件链将项与 {1} 现有项合并。 + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + Merging property, output merged property - Merging property, output merged property - + 将合并属性,输出合并的属性 + Ignoring fully merged property - Ignoring fully merged property - + 将忽略完全合并的属性 + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Name={2}, Value={3} }} + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf index 74a4b99cb..94ae568bf 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,298 +5,298 @@ Detected double project migration: {0} - Detected double project migration: {0} - + 偵測到重複的專案移轉: {0} + Cannot merge metadata with the same name and different values - Cannot merge metadata with the same name and different values - + 無法使用相同名稱及不同值合併中繼資料 + {0}: No xproj file given. - {0}: No xproj file given. - + {0}: 沒有指定的 xproj 檔案。 + Multiple xproj files found in {0}, please specify which to use - Multiple xproj files found in {0}, please specify which to use - + {0} 中找到多個 xproj 檔案,請指定要使用的檔案 + Expected non-null MSBuildProjectTemplate in MigrationSettings - Expected non-null MSBuildProjectTemplate in MigrationSettings - + MigrationSettings 中需要非 null MSBuildProjectTemplate + Cannot migrate project {0} using compiler {1} - Cannot migrate project {0} using compiler {1} - + 無法使用編譯器 {1} 移轉專案 {0} + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + 需要類型 {0} 的元素,但卻是 {1} + {0} already exists. Has migration already been run? - {0} already exists. Has migration already been run? - + {0} 已存在。是否已執行移轉? + expected destinationElement to not be null - expected destinationElement to not be null - + destinationElement 不得為 null + {0} (line: {1}, file: {2}) - {0} (line: {1}, file: {2}) - + {0} (行: {1},檔案: {2}) + Cannot merge items of different types. - Cannot merge items of different types. - + 無法合併不同類型的項目。 + Cannot merge items without a common include. - Cannot merge items without a common include. - + 無法合併不具通用包含的項目。 + Expected element to be of type {0}, but got {1} - Expected element to be of type {0}, but got {1} - + 需要類型 {0} 的元素,但卻是 {1} + Unexpected type {0} - Unexpected type {0} - + 未預期的類型 {0} + Deprecated Project - Deprecated Project - + 已被取代的專案 + Project not Restored - Project not Restored - + 專案未還原 + No Project - No Project - + 沒有專案 + The project.json specifies no target frameworks in {0} - The project.json specifies no target frameworks in {0} - + project.json 在 {0} 中未指定目標 Framework + Unresolved Dependency - Unresolved Dependency - + 未解析的相依性 + Unresolved project dependency ({0}) - Unresolved project dependency ({0}) - + 未解析的專案相依性 ({0}) + File Overwrite - File Overwrite - + 檔案覆寫 + Unsupported Script Variable - Unsupported Script Variable - + 不受支援的指令碼變數 + {0} is currently an unsupported script variable for project migration - {0} is currently an unsupported script variable for project migration - + {0} 目前對專案移轉而言為不受支援的指令碼變數 + Multiple Xproj Files - Multiple Xproj Files - + 多個 Xproj 檔案 + Dependency Project not found - Dependency Project not found - + 找不到相依性專案 + Dependency project not found ({0}) - Dependency project not found ({0}) - + 找不到相依性專案 ({0}) + Unsupported Script Event Hook - Unsupported Script Event Hook - + 不受支援的指令碼事件掛勾 + {0} is an unsupported script event hook for project migration - {0} is an unsupported script event hook for project migration - + {0} 對專案移轉而言為不受支援的指令碼事件掛勾 + Multi-TFM - Multi-TFM - + Multi-TFM + Configuration Exclude - Configuration Exclude - + 組態排除 + Non-Csharp App - Non-Csharp App - + 非 Csharp 應用程式 + Files specified under PackOptions - Files specified under PackOptions - + PackOptions 下指定的檔案 + {0}.{1} includes not equivalent. - {0}.{1} includes not equivalent. - + {0}.{1} 包含不對等。 + {0}.{1} excludes not equivalent. - {0}.{1} excludes not equivalent. - + {0}.{1} 排除不對等。 + {0}.{1} removes not equivalent. - {0}.{1} removes not equivalent. - + {0}.{1} 移除不對等。 + {0}.{1} metadata doesn't exist {{ {2} {3} }} - {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} 中繼資料不存在 {{ {2} {3} }} + {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}.{1} 中繼資料有其他值 {{ {2} {3} {4} }} + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: 正在將中繼資料新增至 {1} 項目: {{ {2}, {3}, {4} }} + {0}: Skip migrating {1}, it is already migrated. - {0}: Skip migrating {1}, it is already migrated. - + {0}: 跳過移轉 {1},其已移轉過。 + Executing rule: {0} - Executing rule: {0} - + 正在執行規則: {0} + {0}: No configuration or framework build options found in project - {0}: No configuration or framework build options found in project - + {0}: 專案中找不到組態或架構建置選項 + Migrating {0} target frameworks - Migrating {0} target frameworks - + 正在移轉 {0} 目標 Framework + Migrating framework {0} - Migrating framework {0} - + 正在移轉架構 {0} + {0}: imports transform null for {1} - {0}: imports transform null for {1} - + {0}: {1} 的匯入轉換為 null + {0}: Migrating {1} xproj to csproj references - {0}: Migrating {1} xproj to csproj references - + {0}: 正在將 {1} xproj 移轉至 csproj 參考 + {0}: Executing migration rule {1} - {0}: Executing migration rule {1} - + {0}: 正在執行移轉規則 {1} + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: 項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} - + {0}: ItemGroup {{ Condition: {1} }} + {0}: Item completely merged - {0}: Item completely merged - + {0}: 項目已完整合併 + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: Merging Item with {1} existing items with a different condition chain. - {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: 正在合併具 {1} 個現有項目的項目與其他條件鏈結。 + {0}: encompassed includes {1} - {0}: encompassed includes {1} - + {0}: 包含內含 {1} + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: 正在移除項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: 正在略過項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: Merging Item with {1} existing items with the same condition chain. - {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: 正在合併具 {1} 個現有項目的項目與相同條件鏈結。 + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: 正在新增合併的項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + Merging property, output merged property - Merging property, output merged property - + 正在合併屬性,輸出合併的屬性 + Ignoring fully merged property - Ignoring fully merged property - + 正在略過完整合併的屬性 + {0}: {1}, {{ Name={2}, Value={3} }} - {0}: {1}, {{ Name={2}, Value={3} }} - + {0}: {1}, {{ Name={2}, Value={3} }} + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.cs.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.cs.xlf index 72277cecf..e2f313619 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.cs.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + Poslední argument {0} umožňuje zadat několik hodnot. Nemůžete přidat další argument. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Nečekaná hodnota {0} u možnosti {1} + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + Nerozpoznané {0} {1} + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Soubor odezvy {0} neexistuje. + Show help information - Show help information - + Zobrazit nápovědu + Show version information - Show version information - + Zobrazit verzi + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Pokud chcete zobrazit seznam dostupných možností a příkazů, zadejte --{0}. + Usage: - Usage: - + Použití: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [argumenty] + Arguments: - Arguments: - + Argumenty: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [možnosti] + Options: - Options: - + Možnosti: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [příkaz] + Commands: - Commands: - + Příkazy: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Další informace o příkazu získáte, když zadáte "{0} [příkaz] --help". + [args] - [args] - + [arg.] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <další argumenty>...]] + Additional Arguments: - Additional Arguments: - + Další argumenty: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Neplatný vzor šablony {0} + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Další možnosti, které je možné předat MSBuildu. Dostupné možnosti zobrazíte příkazem dotnet msbuild -h. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf index cb9daf15e..075a7a56c 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + Das letzte Argument „{0}“ akzeptiert mehrere Werte. Es kann kein weiteres Argument mehr hinzugefügt werden. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Unerwarteter Wert „{0}“ für Option „{1}“. + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + Nicht erkannt: {0} „{1}“ + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Antwortdatei „{0}“ ist nicht vorhanden. + Show help information - Show help information - + Hilfeinformationen anzeigen + Show version information - Show version information - + Versionsinformationen anzeigen + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Geben Sie „--{0}“ für eine Liste verfügbarer Optionen und Befehle an. + Usage: - Usage: - + Nutzung: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [Argumente] + Arguments: - Arguments: - + Argumente: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [Optionen] + Options: - Options: - + Optionen: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [Befehl] + Commands: - Commands: - + Befehle: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Verwenden Sie „{0} [Befehl] --help“, um weitere Informationen zu einem Befehl zu erhalten. + [args] - [args] - + [Argumente] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <zusätzliche Argumente>...]] + Additional Arguments: - Additional Arguments: - + Zusätzliche Argumente: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Ungültiges Vorlagenmuster „{0}“ + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Alle zusätzlichen Optionen, die MSBuild übergeben werden sollen. Verfügbare Optionen siehe „dotnet msbuild -h“. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf index 1517c4e93..365b47591 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + El último argumento "{0}" acepta varios valores. No se pueden agregar más argumentos. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Valor inesperado "{0}" para la opción "{1}" + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + No se reconoció {0} "{1}" + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + El archivo de respuesta "{0}" no existe. + Show help information - Show help information - + Mostrar información de ayuda + Show version information - Show version information - + Mostrar información de versión + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Especifique --{0} para obtener una lista de las opciones y los comandos disponibles. + Usage: - Usage: - + Uso: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [argumentos] + Arguments: - Arguments: - + Argumentos: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [opciones] + Options: - Options: - + Opciones: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [comando] + Commands: - Commands: - + Comandos: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Use "{0} [comando] --help" para más información sobre un comando. + [args] - [args] - + [args] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <argumentos adicionales>...]] + Additional Arguments: - Additional Arguments: - + Argumentos adicionales: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Patrón de plantilla no válido "{0}" + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Toda opción adicional que se debe pasar a MSBuild. Consulte "dotnet msbuild -h" para ver las opciones disponibles. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.fr.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.fr.xlf index adc073c94..b3ec93865 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.fr.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + Le dernier argument '{0}' accepte plusieurs valeurs. Impossible d'ajouter des arguments supplémentaires. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Valeur inattendue '{0}' pour l'option '{1}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + {0} non reconnu : '{1}' + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Le fichier réponse '{0}' n'existe pas. + Show help information - Show help information - + Afficher les informations d'aide + Show version information - Show version information - + Afficher les informations de version + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Spécifiez --{0} pour obtenir la liste des options et commandes disponibles. + Usage: - Usage: - + Utilisation : + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [arguments] + Arguments: - Arguments: - + Arguments : + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [options] + Options: - Options: - + Options : + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [commande] + Commands: - Commands: - + Commandes : + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Utilisez "{0} [commande] --help" pour plus d'informations sur une commande. + [args] - [args] - + [args] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <arguments supplémentaires>...]] + Additional Arguments: - Additional Arguments: - + Arguments supplémentaires : + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Modèle non valide '{0}' + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Options supplémentaires à passer à MSBuild. Consultez 'dotnet msbuild -h' pour connaître les options disponibles. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.it.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.it.xlf index 4649f6b24..30aff666c 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.it.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + L'ultimo argomento '{0}' accetta più valori. Non è possibile aggiungere altri argomenti. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Valore imprevisto '{0}' per l'opzione '{1}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + L'elemento {0} '{1}' non è stato riconosciuto + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Il file di risposta '{0}' non esiste. + Show help information - Show help information - + Visualizza la Guida + Show version information - Show version information - + Visualizza le informazioni sulla versione + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Per un elenco delle opzioni e dei comandi disponibili, specificare --{0}. + Usage: - Usage: - + Utilizzo: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [argomenti] + Arguments: - Arguments: - + Argomenti: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [opzioni] + Options: - Options: - + Opzioni: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [comando] + Commands: - Commands: - + Comandi: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Per altre informazioni su un comando, usare "{0} [comando] --help". + [args] - [args] - + [argomenti] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <argomenti aggiuntivi>...]] + Additional Arguments: - Additional Arguments: - + Argomenti aggiuntivi: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Criterio di modello '{0}' non valido + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Eventuali opzioni aggiuntive da passare a MSBuild. Per le opzioni disponibili, vedere 'dotnet msbuild -h'. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf index 4ea6c5060..64ae67107 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + 最後の引数 '{0}' は複数の値を受け入れます。さらに引数を追加することはできません。 + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + オプション '{1}' の予期しない値 '{0}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + 認識できない {0} '{1}' + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + 応答ファイル '{0}' は存在しません。 + Show help information - Show help information - + ヘルプ情報を表示する + Show version information - Show version information - + バージョン情報を表示する + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + 利用可能なオプションとコマンドの一覧に対して --{0} を指定します。 + Usage: - Usage: - + 使用法: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [arguments] + Arguments: - Arguments: - + 引数: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [options] + Options: - Options: - + オプション: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [command] + Commands: - Commands: - + コマンド: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + コマンドに関する詳細情報については、"{0} [command] --help" を使用します。 + [args] - [args] - + [args] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <additional arguments>...]] + Additional Arguments: - Additional Arguments: - + 追加引数: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + 無効なテンプレート パターン '{0}' + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + MSBuild に渡す必要があるすべての追加オプション。利用可能なオプションについては、'dotnet msbuild -h' を参照してください。 + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.ko.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.ko.xlf index 06d5ba6a8..b9ff4729d 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.ko.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + 마지막 인수 '{0}'은(는) 여러 값을 허용합니다. 더 이상 인수를 추가할 수 없습니다. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + '{1}' 옵션에 대한 예기치 않은 값 '{0}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + 인식할 수 없는 {0} '{1}' + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + '{0}' 응답 파일이 없습니다. + Show help information - Show help information - + 도움말 정보 표시 + Show version information - Show version information - + 버전 정보 표시 + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + 사용 가능한 옵션 및 명령의 목록을 보려면 --{0}을(를) 지정합니다. + Usage: - Usage: - + 사용법: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [arguments] + Arguments: - Arguments: - + 인수: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [options] + Options: - Options: - + 옵션: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [command] + Commands: - Commands: - + 명령: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + 명령에 대한 자세한 정보를 보려면 "{0} [command] --help"를 사용합니다. + [args] - [args] - + [args] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <추가 인수>...]] + Additional Arguments: - Additional Arguments: - + 추가 인수: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + 잘못된 템플릿 패턴 '{0}' + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + MSBuild에 전달해야 할 추가 옵션입니다. 사용 가능한 옵션은 'dotnet msbuild -h'를 참조하세요. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.pl.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.pl.xlf index e1e01958e..fb4e03389 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.pl.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + Ostatni argument „{0}” przyjmuje wiele wartości. Nie można dodać kolejnych argumentów. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Nieoczekiwana wartość „{0}” dla opcji „{1}” + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + Nierozpoznany element {0} „{1}” + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Plik odpowiedzi „{0}” nie istnieje. + Show help information - Show help information - + Wyświetl informacje pomocy + Show version information - Show version information - + Wyświetl informacje o wersji + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Podaj opcję --{0}, aby uzyskać listę dostępnych opcji i poleceń. + Usage: - Usage: - + Użycie: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [argumenty] + Arguments: - Arguments: - + Argumenty: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [opcje] + Options: - Options: - + Opcje: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [polecenie] + Commands: - Commands: - + Polecenia: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Użyj polecenia „{0} [polecenie] --help”, aby uzyskać więcej informacji o danym poleceniu. + [args] - [args] - + [argumenty] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <dodatkowe argumenty>...]] + Additional Arguments: - Additional Arguments: - + Dodatkowe argumenty: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Nieprawidłowy wzorzec szablonu „{0}” + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Dodatkowe opcje, które mają zostać przekazane programowi MSBuild. Uruchom polecenie „dotnet msbuild -h”, aby zapoznać się z dostępnymi opcjami. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf index 63da7ce2e..286e4f434 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + O último argumento '{0}' aceita vários valores. Nenhum outro argumento pode ser adicionado. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Valor '{0}' inesperado para a opção '{1}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + {0} não reconhecido '{1}' + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + O arquivo de resposta '{0}' não existe. + Show help information - Show help information - + Mostrar informações de ajuda + Show version information - Show version information - + Mostrar informações de versão + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Especifique --{0} para obter uma lista das opções e comandos disponíveis. + Usage: - Usage: - + Uso: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [arguments] + Arguments: - Arguments: - + Argumentos: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [options] + Options: - Options: - + Opções: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [command] + Commands: - Commands: - + Comandos: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Use "{0} [command] --help" para obter mais informações sobre um comando. + [args] - [args] - + [args] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <additional arguments>...]] + Additional Arguments: - Additional Arguments: - + Argumentos adicionais: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Padrão de modelo '{0}' inválido + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + As opções extras que devem ser passadas para o MSBuild. Consulte 'dotnet msbuild -h' para obter as opções disponíveis. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf index 838f3ea3b..fcc603109 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + Последний аргумент "{0}" принимает несколько значений. Добавить дополнительные аргументы нельзя. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + Непредвиденное значение "{0}" для параметра "{1}" + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + Нераспознанное значение {0} "{1}" + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Файл ответов "{0}" не существует. + Show help information - Show help information - + Показать справку + Show version information - Show version information - + Показать информацию о версии + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Укажите --{0} для вывода списка доступных параметров и команд. + Usage: - Usage: - + Использование: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [аргументы] + Arguments: - Arguments: - + Аргументы: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [параметры] + Options: - Options: - + Параметры: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [команда] + Commands: - Commands: - + Команды: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Используйте "{0} [команда] --help" для получения дополнительной информации о команде. + [args] - [args] - + [аргументы] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <дополнительные аргументы>...]] + Additional Arguments: - Additional Arguments: - + Дополнительные аргументы: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Недопустимая схема шаблона "{0}" + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + Все дополнительные параметры, которые следует передать в MSBuild. Для получения сведений о доступных параметрах см. "dotnet msbuild -h". + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf index 5f93914d8..1db9330f9 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + Son bağımsız değişken ('{0}') birden çok değer kabul ediyor. Daha fazla bağımsız değişken eklenemez. + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + '{1}' seçeneği için beklenmeyen değer: '{0}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + Tanınmayan {0} '{1}' + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + Yanıt dosyası '{0}' yok. + Show help information - Show help information - + Yardım bilgilerini göster + Show version information - Show version information - + Sürüm bilgilerini göster + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + Kullanılabilir seçenek ve komutların listesi için --{0} belirtin. + Usage: - Usage: - + Kullanım: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [bağımsız değişkenler] + Arguments: - Arguments: - + Bağımsız değişkenler: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [seçenekler] + Options: - Options: - + Seçenekler: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [komut] + Commands: - Commands: - + Komutlar: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + Bir komut hakkında daha fazla bilgi almak için "{0} [komut] --help" kullanın. + [args] - [args] - + [bağımsız değişkenler] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <ek bağımsız değişkenler>...]] + Additional Arguments: - Additional Arguments: - + Ek Bağımsız Değişkenler: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + Geçersiz şablon deseni: '{0}' + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + MSBuild’e geçirilmesi gereken ek seçenekler. Kullanılabilir seçenekler için bkz. 'dotnet msbuild -h'. + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf index 56a06995c..f13c070ad 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + 最后一个参数“{0}”接受多个值。不能再添加任何参数。 + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + 选项“{1}”的意外值“{0}” + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + 未识别的 {0}“{1}” + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + 响应文件“{0}”不存在。 + Show help information - Show help information - + 显示帮助信息 + Show version information - Show version information - + 显示版本信息 + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + 为可用选项和命令的列表指定 --{0}。 + Usage: - Usage: - + 使用情况: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [参数] + Arguments: - Arguments: - + 参数: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [选项] + Options: - Options: - + 选项: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [命令] + Commands: - Commands: - + 命令: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + 使用“{0} [命令] -- help”获取有关命令的详细信息。 + [args] - [args] - + [参数] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <附加参数>...]] + Additional Arguments: - Additional Arguments: - + 附加参数: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + 无效模板模式“{0}” + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + 应传递到 MSBuild 的任何额外选项。请参阅“dotnet msbuild -h”以了解可用选项。 + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf index c7c7e6653..281fc7280 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,143 +5,143 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - The last argument '{0}' accepts multiple values. No more argument can be added. - + 最後一個引數 '{0}' 接受多個值。無法再新增更多引數。 + Unexpected value '{0}' for option '{1}' - Unexpected value '{0}' for option '{1}' - + 選項 '{1}' 有未預期的值 '{0}' + Unrecognized {0} '{1}' - Unrecognized {0} '{1}' - + 無法辨識的 {0} '{1}' + Response file '{0}' doesn't exist. - Response file '{0}' doesn't exist. - + 回應檔 '{0}' 不存在。 + Show help information - Show help information - + 顯示說明資訊 + Show version information - Show version information - + 顯示版本資訊 + Specify --{0} for a list of available options and commands. - Specify --{0} for a list of available options and commands. - + 指定 --{0} 取得可用選項及命令的清單。 + Usage: - Usage: - + 使用方式: + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + [arguments] - [arguments] - + [引數] + Arguments: - Arguments: - + 引數: + {0}{1} - {0}{1} - + {0}{1} + [options] - [options] - + [選項] + Options: - Options: - + 選項: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + [command] - [command] - + [命令] + Commands: - Commands: - + 命令: + {{0, -{0}}}{{1}} - {{0, -{0}}}{{1}} - + {{0, -{0}}}{{1}} + Use "{0} [command] --help" for more information about a command. - Use "{0} [command] --help" for more information about a command. - + 使用 "{0} [命令] --help" 取得命令的詳細資訊。 + [args] - [args] - + [args] + [[--] <additional arguments>...]] - [[--] <additional arguments>...]] - + [[--] <其他引數>...]] + Additional Arguments: - Additional Arguments: - + 其他引數: + {0} - {0} - + {0} + {0} - {0} - + {0} + {0} {1} - {0} {1} - + {0} {1} + Invalid template pattern '{0}' - Invalid template pattern '{0}' - + 範本模式 '{0}' 無效 + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + 應傳遞至 MSBuild 的任何其他選項。如需可用的選項,請參閱 'dotnet msbuild -h'。 + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.cs.xlf index feebe2f49..6a0637d81 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.cs.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Příkaz rozhraní .NET pro přidání projektu do řešení + Command to add project to solution - Command to add project to solution - + Příkaz pro přidání projektu do řešení + Projects to add to solution - Projects to add to solution - + Projekty přidané do řešení + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.de.xlf index 27b0240de..49dcdfeeb 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.de.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + .NET-Befehl zum Hinzufügen eines Projekts zur Projektmappe + Command to add project to solution - Command to add project to solution - + Befehl zum Hinzufügen eines Projekts zur Projektmappe + Projects to add to solution - Projects to add to solution - + Zur Projektmappe hinzuzufügende Projekte + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.es.xlf index b9b58dfab..364fb3ab3 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.es.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Comando de .NET Agregar proyecto a solución + Command to add project to solution - Command to add project to solution - + Comando para agregar un proyecto a una solución + Projects to add to solution - Projects to add to solution - + Proyectos que se agregarán a la solución + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.fr.xlf index 0abdb2da2..6985bde87 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.fr.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Commande .NET d'ajout de projet à une solution + Command to add project to solution - Command to add project to solution - + Commande d'ajout de projet à une solution + Projects to add to solution - Projects to add to solution - + Projets à ajouter à la solution + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.it.xlf index b59b600ff..37e8e19f7 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.it.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Comando Aggiungi progetto a soluzione .NET + Command to add project to solution - Command to add project to solution - + Comando per aggiungere il progetto alla soluzione + Projects to add to solution - Projects to add to solution - + Progetti da aggiungere alla soluzione + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ja.xlf index 5820d4f80..450df2144 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ja.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + .NET Add Project to Solution コマンド + Command to add project to solution - Command to add project to solution - + ソリューションにプロジェクトを追加するコマンド + Projects to add to solution - Projects to add to solution - + ソリューションに追加するプロジェクト + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ko.xlf index 673951d0a..c9f222f39 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ko.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + .NET 솔루션에 프로젝트 추가 명령 + Command to add project to solution - Command to add project to solution - + 솔루션에 프로젝트를 추가하기 위한 명령입니다. + Projects to add to solution - Projects to add to solution - + 솔루션에 추가할 프로젝트 + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pl.xlf index c1daed128..78bb9b9e4 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pl.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Polecenie dodawania projektu do rozwiązania dla platformy .NET + Command to add project to solution - Command to add project to solution - + Polecenie umożliwiające dodanie projektu do rozwiązania + Projects to add to solution - Projects to add to solution - + Projekty, które mają zostać dodane do rozwiązania + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pt-BR.xlf index 4f8cab7d3..bbf7c437b 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.pt-BR.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Comando Adicionar Projeto à Solução do .NET + Command to add project to solution - Command to add project to solution - + Comando para adicionar o projeto à solução + Projects to add to solution - Projects to add to solution - + Projetos a serem adicionados à solução + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ru.xlf index cc856b0cc..1c8a17794 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.ru.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + Команда "Добавить проект в решение" .NET + Command to add project to solution - Command to add project to solution - + Команда для добавления проекта в решение + Projects to add to solution - Projects to add to solution - + Проекты, добавляемые в решение + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.tr.xlf index 0310d765e..d2eb75681 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.tr.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + .NET Çözüme Proje Ekleme Komutu + Command to add project to solution - Command to add project to solution - + Çözüme proje ekleme komutu + Projects to add to solution - Projects to add to solution - + Çözüme eklenecek projeler + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hans.xlf index e9774305c..40a34ef72 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + .NET 将项目添加到解决方案命令 + Command to add project to solution - Command to add project to solution - + 将项目添加到解决方案的命令 + Projects to add to solution - Projects to add to solution - + 要添加到解决方案的项目 + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hant.xlf index 2f6c29a49..1a0ab36e7 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,18 +5,18 @@ .NET Add Project to Solution Command - .NET Add Project to Solution Command - + .NET 將專案新增至解決方案命令 + Command to add project to solution - Command to add project to solution - + 命令,將專案新增至解決方案 + Projects to add to solution - Projects to add to solution - + 要新增至解決方案的專案 + diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.cs.xlf index 383b36537..33a9a4980 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.cs.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení - + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Umožňuje kompilovat určitou platformu. - + Cílová platforma, pro kterou sestavujete projekt. Cílová platforma musí být v souboru projektu zadaná. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Když nastavíte tento příznak, ignorují se odkazy mezi projekty a sestaví se jenom kořenový projekt. - + Když nastavíte tento příznak, ignorují se odkazy mezi projekty a sestaví se jenom kořenový projekt. + Disables incremental build. - Když nastavíte tento příznak, vypnete přírůstkové sestavení. - + Přírůstkové sestavení se vypne. + Output directory in which to place built artifacts. - Adresář pro ukládání výstupů - + Výstupní adresář, do kterého se ukládají sestavené artefakty. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf index 60c58a722..f32d21053 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für den Buildvorgang - + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Bestimmtes Framework kompilieren - + Zielframework der Erstellung. Das Zielframework muss in der Projektdatei angegeben werden. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Legen Sie dieses Flag fest, um Projekt-zu-Projekt-Verweise zu ignorieren und nur das Stammprojekt zu erstellen. - + Legen Sie dieses Flag fest, um Projekt-zu-Projekt-Verweise zu ignorieren und nur das Stammprojekt zu erstellen. + Disables incremental build. - Legen Sie dieses Flag fest, um die inkrementelle Erstellung zu deaktivieren. - + Deaktiviert die inkrementelle Erstellung. + Output directory in which to place built artifacts. - Verzeichnis für Ausgaben - + Ausgabeverzeichnis, in dem erstellte Artefakte abgelegt werden. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf index 95ea2f2c5..fa5e9c508 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración para la compilación - + Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Compilar una plataforma específica - + Plataforma de destino para la que se compila. La plataforma de destino se debe especificar en el archivo de proyecto. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Establezca esta marca para omitir las referencias de proyecto a proyecto y compilar solo el proyecto raíz - + Establezca esta marca para omitir las referencias de proyecto a proyecto y compilar solo el proyecto raíz + Disables incremental build. - Establezca esta marca para desactivar una compilación incremental - + Deshabilita la compilación incremental. + Output directory in which to place built artifacts. - Directorio donde se ponen los archivos de salida - + Directorio de salida en el que se ubicarán los artefactos compilados. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.fr.xlf index de69632fe..55a1575c0 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.fr.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration sous laquelle générer la build - + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Compiler un framework spécifique - + Framework cible de la build. Le framework cible doit être spécifié dans le fichier projet. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Définir cet indicateur pour ignorer les références projet à projet et générer uniquement le projet racine - + Définir cet indicateur pour ignorer les références de projet à projet et générer uniquement le projet racine + Disables incremental build. - Définir cet indicateur pour désactiver la génération incrémentielle - + Désactive la build incrémentielle. + Output directory in which to place built artifacts. - Répertoire dans lequel placer les sorties - + Répertoire de sortie dans lequel placer les artefacts de build. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.it.xlf index 2d0472929..f521c6351 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.it.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione con cui eseguire la compilazione - + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Esegue la compilazione di un framework specifico - + Framework di destinazione per cui eseguire la compilazione. Il framework di destinazione deve essere specificato nel file di progetto. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Impostare questo flag per ignorare i riferimenti P2P (da progetto a progetto) e compilare solo il progetto radice - + Impostare questo flag per ignorare i riferimenti P2P (da progetto a progetto) e compilare solo il progetto radice + Disables incremental build. - Impostare questo flag per disattivare la compilazione incrementale - + Disabilita la compilazione incrementale. + Output directory in which to place built artifacts. - Directory in cui inserire gli output - + Directory di output in cui inserire gli artefatti compilati. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf index b67f8e59f..50b27ccda 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 構築する構成 - + プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - 特定のフレームワークをコンパイルする - + 構築用のターゲット フレームワーク。ターゲット フレームワークはプロジェクト ファイルで指定する必要があります。 + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - project to project 参照を無視して、ルート プロジェクトのみを構築するには、このフラグを設定します - + プロジェクト間参照を無視して、ルート プロジェクトのみを構築するには、このフラグを設定します + Disables incremental build. - インクリメンタル ビルドを無効にするには、このフラグを設定します - + インクリメンタル ビルドを無効にします。 + Output directory in which to place built artifacts. - 出力を配置するディレクトリ - + ビルド成果物を配置する出力ディレクトリ。 + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ko.xlf index 12522b4e5..9500478f2 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ko.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 빌드할 구성입니다. - + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - 특정 프레임워크를 컴파일합니다. - + 빌드할 대상 프레임워크입니다. 대상 프레임워크는 프로젝트 파일에서 지정해야 합니다. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - 프로젝트 간 참조를 무시하고 루트 프로젝트만 빌드하려면 이 플래그를 설정합니다. - + p2p(프로젝트 간) 참조를 무시하고 루트 프로젝트만 빌드하려면 이 플래그를 설정합니다. + Disables incremental build. - 증분 빌드를 해제하려면 이 플래그를 설정합니다. - + 증분 빌드를 사용하지 않습니다. + Output directory in which to place built artifacts. - 출력을 배치할 디렉터리입니다. - + 빌드된 아티팩트를 배치할 출력 디렉터리입니다. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pl.xlf index 18e6e558a..51e5ee2a4 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pl.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja, przy użyciu której ma zostać przeprowadzona kompilacja - + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Skompiluj określoną platformę - + Docelowa platforma kompilacji. Platforma docelowa musi być określona w pliku projektu. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Ustaw tę flagę, aby ignorować odwołania między projektami i skompilować tylko projekt główny - + Ustaw tę flagę, aby ignorować odwołania między projektami i skompilować tylko projekt główny + Disables incremental build. - Ustaw tę flagę, aby wyłączyć kompilację przyrostową - + Wyłącza kompilację przyrostową. + Output directory in which to place built artifacts. - Katalog, w którym mają zostać umieszczone dane wyjściowe - + Katalog wyjściowy, w którym mają zostać umieszczone skompilowane artefakty. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf index fb18fcda4..0e130dfd8 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração sob a qual compilar - + Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Compilar uma estrutura específica - + Estrutura de destino na qual compilar. A estrutura de destino deve ser especificada no arquivo de projeto. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Definir esse sinalizador para ignorar referências de projeto para projeto e compilar apenas o projeto raiz - + Defina esse sinalizador para ignorar as referências projeto a projeto e compilar apenas o projeto raiz + Disables incremental build. - Definir esse sinalizador para desligar o build incremental - + Desabilita o build incremental. + Output directory in which to place built artifacts. - Diretório no qual colocar as saídas - + Diretório de saída no qual os artefatos compilados serão colocados. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf index 2554853ff..c453f798a 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, в которой выполняется сборка - + Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Компиляция определенной платформы - + Целевая платформа сборки. Целевая платформа должна быть указана в файле проекта. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Задайте этот флаг, чтобы пропускать ссылки проектов на проекты и выполнять сборку только корневого проекта. - + Задайте этот флаг, чтобы пропускать ссылки проектов на проекты и выполнять сборку только корневого проекта. + Disables incremental build. - Задайте этот флаг, чтобы отключить добавочные сборки. - + Отключение инкрементной сборки. + Output directory in which to place built artifacts. - Каталог для размещения выходных данных - + Выходной каталог для размещения созданных артефактов. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf index a7d58817c..9d6810f97 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Derlemenin gerçekleştirileceği yapılandırma - + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - Belirli bir çerçeveyi derler - + Derlemenin yapılacağı hedef çerçeve. Hedef çerçevenin proje dosyasında belirtilmesi gerekir. + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - Projeden projeye başvuruları yoksaymak ve yalnızca kök projeyi derlemek için bu bayrağı ayarlayın - + Projeden projeye başvuruları yoksaymak ve yalnızca kök projeyi derlemek için bu bayrağı ayarlayın + Disables incremental build. - Artımlı derlemeyi kapatmak için bu bayrağı ayarlayın - + Artımlı derlemeyi devre dışı bırakır. + Output directory in which to place built artifacts. - Çıkışların yerleştirileceği dizin - + Derlenen yapıtların yerleştirileceği çıkış dizini. + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf index dfdee4ce1..4238addaf 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 在何处生成配置 - + 用于生成项目的配置。大多数项目的默认值为“Debug”。 + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - 编译特定的框架 - + 生成的目标框架。必须在项目文件中指定目标框架。 + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - 设置此标志以忽略项目到项目引用,并仅生成根项目。 - + 设置此标志以忽略项目到项目引用,仅生成根项目 + Disables incremental build. - 设置此标志以关闭增量生成 - + 禁用增量生成。 + Output directory in which to place built artifacts. - 用于放置输出的目录 - + 用于放置生成项目的输出目录。 + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf index 34cca464e..c3417a1cb 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 作為建置依據的組態 - + 建置專案用的組態。多數專案預設為 "Debug"。 + CONFIGURATION @@ -25,8 +25,8 @@ Target framework to build for. The target framework has to be specified in the project file. - 編譯特定架構 - + 要為其建置的目標 Framework。其必須在專案檔中指定。 + FRAMEWORK @@ -35,18 +35,18 @@ Set this flag to ignore project-to-project references and only build the root project - 將此旗標設定為略過專案對專案參考並僅建置根專案 - + 將此旗標設定為略過專案對專案參考並僅建置根專案 + Disables incremental build. - 將此旗標設定為關閉累加建置 - + 停用累加建置。 + Output directory in which to place built artifacts. - 要放置輸出的目錄 - + 要放置建置成品的輸出目錄。 + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.cs.xlf index 851e8a1d3..196f72cd4 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.cs.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Adresář, do kterého byly umístěny výstupy buildu. - + Adresář, do kterého byly umístěny výstupy buildu. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Umožňuje vyčistit určitou platformu. - + Umožňuje vyčistit určitou platformu. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Umožňuje vyčistit určitou konfiguraci. - + Umožňuje vyčistit určitou konfiguraci. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.de.xlf index f2d24cad5..06eb43ae3 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.de.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Verzeichnis, in dem sich die Buildausgaben befinden - + Verzeichnis, in dem sich die Buildausgaben befinden. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Bestimmtes Framework bereinigen - + Bestimmtes Framework bereinigen. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Bestimmte Konfiguration bereinigen - + Bestimmte Konfiguration bereinigen. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.es.xlf index 49e94182c..56836b0c4 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.es.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Directorio donde se han puesto los archivos de salida de la compilación - + Directorio donde se han puesto los archivos de salida de la compilación + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Limpia una plataforma específica - + Limpia una plataforma específica. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Limpia una configuración específica - + Limpia una configuración específica. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.fr.xlf index d4b01051b..ff5cfe1fe 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.fr.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Répertoire dans lequel les sorties de build ont été placées - + Répertoire dans lequel les sorties de build ont été placées + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Nettoyer un framework spécifique - + Nettoyez un framework spécifique. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Nettoyer une configuration spécifique - + Nettoyez une configuration spécifique. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.it.xlf index 273997c44..a3004e9bd 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.it.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Directory in cui sono stati inseriti gli output di compilazione - + Directory in cui sono stati inseriti gli output di compilazione. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Pulisce un framework specifico - + Pulisce un framework specifico. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Pulisce una configurazione specifica - + Pulisce una configurazione specifica. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ja.xlf index 2d747f387..2b2111899 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ja.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - ビルド出力が配置されているディレクトリ - + ビルド出力が配置されているディレクトリ。 + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - 特定のフレームワークを消去する - + 特定のフレームワークを消去します。 + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - 特定の構成を消去する - + 特定の構成を消去します。 + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ko.xlf index e429dca49..be9870ecc 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ko.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - 빌드 출력이 배치된 디렉터리입니다. - + 빌드 출력이 배치된 디렉터리입니다. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - 특정 프레임워크를 정리합니다. - + 특정 프레임워크를 정리합니다. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - 특정 구성을 정리합니다. - + 특정 구성을 정리합니다. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pl.xlf index ac7f3994b..cc7678775 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pl.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Katalog, w którym zostały umieszczone dane wyjściowe kompilacji - + Katalog, w którym zostały umieszczone dane wyjściowe kompilacji. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Wyczyść określoną platformę - + Wyczyść określoną platformę. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Wyczyść określoną konfigurację - + Wyczyść określoną konfigurację. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pt-BR.xlf index 9a98be48c..a722371f9 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.pt-BR.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - O diretório no qual as saídas de build foram colocadas - + O diretório no qual as saídas do build foram colocadas. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Limpar uma estrutura específica - + Limpa uma estrutura específica. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Limpar uma configuração específica - + Limpa uma configuração específica. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ru.xlf index 4abf03945..1841d3572 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.ru.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Каталог, в котором размещаются выходные данные сборки. - + Каталог, в котором размещаются выходные данные сборки. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Очистка определенной платформы - + Очистка определенной платформы. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Очистка определенной конфигурации - + Очистка определенной конфигурации. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.tr.xlf index 255399a55..ed3fa207d 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.tr.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - Derleme çıktılarının yerleştirildiği dizin - + Derleme çıkışlarının yerleştirildiği dizin. + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - Belirli bir çerçeveyi temizler - + Belirli bir çerçeveyi temizler. + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - Belirli bir yapılandırmayı temizler - + Belirli bir yapılandırmayı temizler. + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hans.xlf index 79b9c465c..615e6f68b 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hans.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - 放置生成输出的目录 - + 放置了生成输出的目录。 + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - 清理特定的框架 - + 清理特定的框架。 + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - 清理特定的配置 - + 清理特定的配置。 + diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hant.xlf index 1d11e031a..fe23cac63 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.zh-Hant.xlf @@ -30,8 +30,8 @@ Directory in which the build outputs have been placed. - 已放置建置輸出的目錄 - + 已放置建置輸出的目錄。 + FRAMEWORK @@ -40,8 +40,8 @@ Clean a specific framework. - 清除特定架構 - + 清除特定架構。 + CONFIGURATION @@ -50,8 +50,8 @@ Clean a specific configuration. - 清除特定組態 - + 清除特定組態。 + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf index dd6e3acd1..29fff3a33 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Inicializovat základní projekt .NET - + Inicializuje projekty .NET. + Restore dependencies specified in the .NET project. - Obnovit závislosti zadané v projektu .NET - + Obnoví závislosti zadané v projektu .NET. + Builds a .NET project. - Sestaví projekt .NET - + Sestaví projekt .NET. + Publishes a .NET project for deployment (including the runtime). - Publikuje projekt .NET pro nasazení (včetně modulu runtime) - + Publikuje projekt .NET pro nasazení (včetně modulu runtime). + Compiles and immediately executes a .NET project. - Kompiluje a hned spustí projekt .NET - + Zkompiluje a hned spustí projekt .NET. + Runs unit tests using the test runner specified in the project. - Spustí testy jednotek v nástroji Test Runner zadaném v projektu - + Spustí testy jednotek v nástroji Test Runner zadaném v projektu. + Creates a NuGet package. - Vytvoří balíček NuGet - + Vytvoří balíček NuGet. + Migrates a project.json based project to a msbuild based project. - Na základě projektu migruje soubor project.json na projekt založený na nástroji MSBuild - + Na základě projektu migruje soubor project.json na projekt založený na nástroji MSBuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Přidá položky do projektu - + Přidá položky do projektu. + Remove items from the project. - Odebere položky z projektu - + Odebere položky z projektu. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Nabízí další příkazy NuGet - + Nabízí další příkazy NuGet. + Runs Microsoft Build Engine (MSBuild). - Vytvoří projekt nástrojem MSBuild i všechny jeho závislosti - + Spustí Microsoft Build Engine (MSBuild). + Runs Microsoft Test Execution Command Line Tool. - Spustí testy ze zadaných souborů - + Spustí nástroj příkazového řádku od Microsoftu, který testuje spuštění. + Enable diagnostic output - Enable diagnostic output - + Povolit diagnostický výstup + Clean build output(s). - Clean build output(s). - + Smaže výstupy sestavení. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf index 411efb2d7..65c70da9c 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Einfaches .NET-Projekt initialisieren - + .NET-Projekte initialisieren. + Restore dependencies specified in the .NET project. - Im .NET-Projekt angegebene Abhängigkeiten wiederherstellen - + Im .NET-Projekt angegebene Abhängigkeiten wiederherstellen. + Builds a .NET project. - Erstellt ein .NET-Projekt. - + Erstellt ein .NET-Projekt. + Publishes a .NET project for deployment (including the runtime). - Veröffentlicht ein .NET-Projekt für die Bereitstellung (einschließlich Laufzeit). - + Veröffentlicht ein .NET-Projekt für die Bereitstellung (einschließlich Laufzeit). + Compiles and immediately executes a .NET project. - Kompiliert ein .NET-Projekt und führt es umgehend aus. - + Kompiliert ein .NET-Projekt und führt es umgehend aus. + Runs unit tests using the test runner specified in the project. - Führt mithilfe des im Projekt angegebenen Test Runners Komponententests aus. - + Führt mithilfe des im Projekt angegebenen Test Runners Komponententests aus. + Creates a NuGet package. - Erstellt ein NuGet-Paket. - + Erstellt ein NuGet-Paket. + Migrates a project.json based project to a msbuild based project. - Migriert ein auf "project.json" basierendes Projekt zu einem MSBuild-basierten Projekt. - + Migriert ein auf „project.json“ basierendes Projekt zu einem MSBuild-basierten Projekt. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Elemente zum Projekt hinzufügen - + Elemente zum Projekt hinzufügen. + Remove items from the project. - Elemente aus dem Projekt entfernen - + Elemente aus dem Projekt entfernen. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Stellt zusätzliche NuGet-Befehle bereit. - + Stellt zusätzliche NuGet-Befehle bereit. + Runs Microsoft Build Engine (MSBuild). - Erstellt ein Projekt und alle dazugehörigen Abhängigkeiten mithilfe von MSBuild. - + Führt Microsoft-Buildmodul (MSBuild) aus. + Runs Microsoft Test Execution Command Line Tool. - Führt Tests auf der Grundlage der angegebenen Dateien aus. - + Führt Microsoft Testausführungs-Befehlszeilentool aus. + Enable diagnostic output - Enable diagnostic output - + Diagnoseausgabe aktivieren. + Clean build output(s). - Clean build output(s). - + Buildausgabe(n) bereinigen. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf index 39022de57..567712084 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Inicializa un proyecto de .NET básico - + Inicializa proyectos de .NET. + Restore dependencies specified in the .NET project. - Restaura dependencias especificadas en el proyecto de .NET - + Restaura dependencias especificadas en el proyecto de .NET. + Builds a .NET project. - Compila un proyecto de .NET - + Compila un proyecto de .NET. + Publishes a .NET project for deployment (including the runtime). - Publica un proyecto de .NET para implementarlo (incluido el entorno de tiempo de ejecución) - + Publica un proyecto de .NET para implementarlo (incluido el entorno de tiempo de ejecución). + Compiles and immediately executes a .NET project. - Compila y ejecuta de inmediato un proyecto de .NET - + Compila y ejecuta de inmediato un proyecto de .NET. + Runs unit tests using the test runner specified in the project. - Ejecuta pruebas unitarias usando el ejecutor de pruebas especificado en el proyecto - + Ejecuta pruebas unitarias usando el ejecutor de pruebas especificado en el proyecto. + Creates a NuGet package. - Crea un paquete NuGet - + Crea un paquete NuGet. + Migrates a project.json based project to a msbuild based project. - Migra un proyecto basado en project.json a un proyecto basado en MSBuild - + Migra un proyecto basado en project.json a un proyecto basado en MSBuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Agrega elementos al proyecto - + Agrega elementos al proyecto. + Remove items from the project. - Quita elementos del proyecto - + Quita elementos del proyecto. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Proporciona comandos NuGet adicionales - + Proporciona comandos NuGet adicionales. + Runs Microsoft Build Engine (MSBuild). - Compila un proyecto y todas sus dependencias con MSBuild - + Ejecuta Microsoft Build Engine (MSBuild). + Runs Microsoft Test Execution Command Line Tool. - Ejecuta pruebas de los archivos especificados - + Ejecuta Herramienta de línea de comandos de ejecución de pruebas de Microsoft. + Enable diagnostic output - Enable diagnostic output - + Habilitar salida de diagnóstico + Clean build output(s). - Clean build output(s). - + Borre las salidas de compilación. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf index 1fcda92d1..202bb5f07 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Initialiser un projet .NET de base - + Initialisez les projets .NET. + Restore dependencies specified in the .NET project. - Restaurer les dépendances spécifiées dans le projet .NET - + Restaurez les dépendances spécifiées dans le projet .NET. + Builds a .NET project. - Génère un projet .NET - + Génère un projet .NET. + Publishes a .NET project for deployment (including the runtime). - Publie un projet .NET à des fins de déploiement (runtime inclus) - + Publie un projet .NET à des fins de déploiement (runtime inclus). + Compiles and immediately executes a .NET project. - Compile et exécute immédiatement un projet a.NET - + Compile et exécute immédiatement un projet .NET. + Runs unit tests using the test runner specified in the project. - Exécute des tests unitaires à l'aide du Test Runner spécifié dans le projet - + Exécute des tests unitaires à l'aide du programme Test Runner spécifié dans le projet. + Creates a NuGet package. - Crée un package NuGet - + Crée un package NuGet. + Migrates a project.json based project to a msbuild based project. - Migre un projet basé sur project.json vers un projet basé sur msbuild - + Effectue la migration d'un projet basé sur project.json vers un projet basé sur msbuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Ajouter des éléments au projet - + Ajoutez des éléments au projet. + Remove items from the project. - Supprimer des éléments du projet - + Supprimez des éléments du projet. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Fournit des commandes NuGet supplémentaires - + Fournit des commandes NuGet supplémentaires. + Runs Microsoft Build Engine (MSBuild). - msbuilds un projet et toutes ses dépendances - + Exécute Microsoft Build Engine (MSBuild). + Runs Microsoft Test Execution Command Line Tool. - Exécute les tests à partir des fichiers spécifiés - + Exécute l'outil en ligne de commande d'exécution de tests Microsoft. + Enable diagnostic output - Enable diagnostic output - + Activer la sortie des diagnostics + Clean build output(s). - Clean build output(s). - + Nettoyez les sorties de build. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf index 29fe77075..1275b9f63 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Inizializza un progetto .NET di base - + Inizializza i progetti .NET. + Restore dependencies specified in the .NET project. - Ripristina le dipendenze specificate nel progetto .NET - + Ripristina le dipendenze specificate nel progetto .NET. + Builds a .NET project. - Compila un progetto .NET - + Compila un progetto .NET. + Publishes a .NET project for deployment (including the runtime). - Pubblica un progetto .NET per la distribuzione (includendo il runtime) - + Pubblica un progetto .NET per la distribuzione (includendo il runtime). + Compiles and immediately executes a .NET project. - Compila ed esegue immediatamente un progetto .NET - + Compila ed esegue immediatamente un progetto .NET. + Runs unit tests using the test runner specified in the project. - Esegue gli unit test con l'istanza di Test Runner specificata nel progetto - + Esegue gli unit test con l'istanza di Test Runner specificata nel progetto. + Creates a NuGet package. - Crea un pacchetto NuGet - + Crea un pacchetto NuGet. + Migrates a project.json based project to a msbuild based project. - Esegue la migrazione di un progetto basato su project.json in uno basato su MSBuild - + Esegue la migrazione di un progetto basato su project.json in uno basato su MSBuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Consente di aggiungere elementi al progetto - + Consente di aggiungere elementi al progetto. + Remove items from the project. - Consente di rimuovere elementi dal progetto - + Consente di rimuovere elementi dal progetto. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Fornisce comandi NuGet aggiuntivi - + Fornisce comandi NuGet aggiuntivi. + Runs Microsoft Build Engine (MSBuild). - Esegue MSBuild su un progetto e su tutte le relative dipendenze - + Esegue Microsoft Build Engine (MSBuild). + Runs Microsoft Test Execution Command Line Tool. - Esegue i test dai file specificati - + Esegue lo strumento da riga di comando per l'esecuzione di test Microsoft. + Enable diagnostic output - Enable diagnostic output - + Abilita l'output di diagnostica + Clean build output(s). - Clean build output(s). - + Pulisce gli output di compilazione. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf index a69c0daa2..6c42afa33 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - 基本的な .NET プロジェクトを初期化する - + .NET プロジェクトを初期化します。 + Restore dependencies specified in the .NET project. - .NET プロジェクトに指定されている依存関係を復元する - + .NET プロジェクトに指定されている依存関係を復元します。 + Builds a .NET project. - .NET プロジェクトを構築する - + .NET プロジェクトを構築します。 + Publishes a .NET project for deployment (including the runtime). - 展開用の .NET プロジェクトを発行する (ランタイムを含む) - + 展開用の .NET プロジェクトを発行します (ランタイムを含む)。 + Compiles and immediately executes a .NET project. - .NET プロジェクトをコンパイルして、直ちに実行する - + .NET プロジェクトをコンパイルして、直ちに実行します。 + Runs unit tests using the test runner specified in the project. - プロジェクトに指定されているテスト ランナーを使用して、単体テストを実行する - + プロジェクトに指定されているテスト ランナーを使用して、単体テストを実行します。 + Creates a NuGet package. - NuGet パッケージを作成する - + NuGet パッケージを作成します。 + Migrates a project.json based project to a msbuild based project. - project.json ベースのプロジェクトを msbuild ベースのプロジェクトに移行する - + project.json ベースのプロジェクトを msbuild ベースのプロジェクトに移行します。 + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - 項目をプロジェクトに追加する - + 項目をプロジェクトに追加します。 + Remove items from the project. - 項目をプロジェクトから削除する - + 項目をプロジェクトから削除します。 + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - 追加の NuGet コマンドを提供する - + 追加の NuGet コマンドを提供します。 + Runs Microsoft Build Engine (MSBuild). - プロジェクトとそのすべての依存関係を msbuild で構築する - + Microsoft Build Engine (MSBuild) を実行します。 + Runs Microsoft Test Execution Command Line Tool. - 指定されたファイルからテストを実行する - + Microsoft Test Execution Command Line Tool を実行します。 + Enable diagnostic output - Enable diagnostic output - + 診断出力を有効にする + Clean build output(s). - Clean build output(s). - + ビルド出力を消去します。 + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf index e09ff4e0f..8c6927d57 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - 기본 .NET 프로젝트를 초기화합니다. - + .NET 프로젝트를 초기화합니다. + Restore dependencies specified in the .NET project. - .NET 프로젝트에 지정된 종속성을 복원합니다. - + .NET 프로젝트에 지정된 종속성을 복원합니다. + Builds a .NET project. - .NET 프로젝트를 빌드합니다. - + .NET 프로젝트를 빌드합니다. + Publishes a .NET project for deployment (including the runtime). - 배포하기 위해 .NET 프로젝트를 게시합니다(런타임 포함). - + 배포할 .NET 프로젝트를 게시합니다(런타임 포함). + Compiles and immediately executes a .NET project. - .NET 프로젝트를 컴파일하고 즉시 실행합니다. - + .NET 프로젝트를 컴파일하고 즉시 실행합니다. + Runs unit tests using the test runner specified in the project. - 프로젝트에 지정된 Test Runner를 사용하여 유닛 테스트를 실행합니다. - + 프로젝트에 지정된 Test Runner를 사용하여 유닛 테스트를 실행합니다. + Creates a NuGet package. - NuGet 패키지를 만듭니다. - + NuGet 패키지를 만듭니다. + Migrates a project.json based project to a msbuild based project. - project.json 기반 프로젝트를 msbuild 빌드 기반 프로젝트로 마이그레이션합니다. - + project.json 기반 프로젝트를 msbuild 기반 프로젝트로 마이그레이션합니다. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - 프로젝트에 항목을 추가합니다. - + 프로젝트에 항목을 추가합니다. + Remove items from the project. - 프로젝트에서 항목을 제거합니다. - + 프로젝트에서 항목을 제거합니다. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - 추가 NuGet 명령을 제공합니다. - + 추가 NuGet 명령을 제공합니다. + Runs Microsoft Build Engine (MSBuild). - 프로젝트 및 프로젝트의 모든 종속성을 msbuild합니다. - + Microsoft Build Engine(MSBuild)을 실행합니다. + Runs Microsoft Test Execution Command Line Tool. - 지정한 파일에서 테스트를 실행합니다. - + Microsoft Test Execution 명령줄 도구를 실행합니다. + Enable diagnostic output - Enable diagnostic output - + 진단 출력을 사용합니다. + Clean build output(s). - Clean build output(s). - + 빌드 출력을 정리합니다. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf index 078c47adb..7a50ab23c 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Zainicjuj podstawowy projekt platformy .NET - + Zainicjuj projekty platformy .NET. + Restore dependencies specified in the .NET project. - Przywróć zależności określone w projekcie platformy .NET - + Przywróć zależności określone w projekcie platformy .NET. + Builds a .NET project. - Kompiluje projekt platformy .NET - + Kompiluje projekt platformy .NET. + Publishes a .NET project for deployment (including the runtime). - Publikuje projekt platformy .NET do wdrożenia (w tym środowisko uruchomieniowe) - + Publikuje projekt platformy .NET do wdrożenia (w tym środowisko uruchomieniowe). + Compiles and immediately executes a .NET project. - Kompiluje i natychmiast wykonuje projekt platformy .NET - + Kompiluje i natychmiast wykonuje projekt platformy .NET. + Runs unit tests using the test runner specified in the project. - Uruchamia testy jednostkowe przy użyciu określonego w projekcie modułu uruchamiającego testy - + Uruchamia testy jednostkowe przy użyciu określonego w projekcie modułu uruchamiającego testy. + Creates a NuGet package. - Tworzy pakiet NuGet - + Tworzy pakiet NuGet. + Migrates a project.json based project to a msbuild based project. - Migruje projekt oparty na pliku project.json do projektu opartego na programie MSBuild - + Migruje projekt oparty na pliku project.json do projektu opartego na programie MSBuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Dodaj elementy do projektu - + Dodaj elementy do projektu. + Remove items from the project. - Usuń elementy z projektu - + Usuń elementy z projektu. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Udostępnia dodatkowe polecenia NuGet - + Udostępnia dodatkowe polecenia NuGet. + Runs Microsoft Build Engine (MSBuild). - Kompiluje projekt i wszystkie jego zależności przy użyciu programu MSBuild - + Uruchamia aparat Microsoft Build Engine (MSBuild). + Runs Microsoft Test Execution Command Line Tool. - Uruchamia testy z określonych plików - + Uruchamia narzędzie Microsoft Test Execution Command Line Tool. + Enable diagnostic output - Enable diagnostic output - + Włącz diagnostyczne dane wyjściowe + Clean build output(s). - Clean build output(s). - + Wyczyść dane wyjściowe kompilacji. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf index 409c2c601..00711ab99 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Inicializar um projeto .NET básico - + Inicializa projetos .NET. + Restore dependencies specified in the .NET project. - Restaurar dependências especificadas no projeto .NET - + Restaura as dependências especificadas no projeto .NET. + Builds a .NET project. - Compila um projeto .NET - + Compila um projeto .NET. + Publishes a .NET project for deployment (including the runtime). - Publica um projeto .NET para implantação (incluindo o tempo de execução) - + Publica um projeto .NET para implantação (incluindo o tempo de execução). + Compiles and immediately executes a .NET project. - Compila e executa imediatamente um projeto .NET - + Compila e executa imediatamente um projeto .NET. + Runs unit tests using the test runner specified in the project. - Executa testes de unidade usando o executor de teste especificado no projeto - + Executa testes de unidade usando o executor de teste especificado no projeto. + Creates a NuGet package. - Cria um pacote NuGet - + Cria um pacote NuGet. + Migrates a project.json based project to a msbuild based project. - Migra um projeto baseado em project.json para um projeto baseado em msbuild - + Migra um projeto baseado em project.json para um projeto baseado em msbuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Adicionar itens ao projeto - + Adiciona itens ao projeto. + Remove items from the project. - Remover itens do projeto - + Remove itens do projeto. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Fornece comandos adicionais do NuGet - + Fornece comandos adicionais do NuGet. + Runs Microsoft Build Engine (MSBuild). - Executa o msbuild em um projeto e todas as suas dependências - + Executa o MSBuild (Microsoft Build Engine). + Runs Microsoft Test Execution Command Line Tool. - Executa testes dos arquivos especificados - + Executa a Ferramenta de Linha de Comando de Execução de Teste da Microsoft. + Enable diagnostic output - Enable diagnostic output - + Habilita a saída de diagnóstico + Clean build output(s). - Clean build output(s). - + Limpa as saídas do build. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf index e618a3b46..21df98535 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Инициализация основного проекта .NET - + Инициализация проектов .NET. + Restore dependencies specified in the .NET project. - Восстановить зависимости, указанные в проекте .NET - + Восстановление зависимостей, указанных в проектах .NET. + Builds a .NET project. - Сборка проекта .NET - + Сборка проекта .NET. + Publishes a .NET project for deployment (including the runtime). - Публикация проекта .NET для развертывания (включая среду выполнения) - + Публикация проекта .NET для развертывания (включая среду выполнения). + Compiles and immediately executes a .NET project. - Компиляция и немедленное выполнение проекта .NET - + Компиляция и немедленное выполнение проекта .NET. + Runs unit tests using the test runner specified in the project. - Выполнение тестов с помощью средства выполнения тестов, указанного в проекте - + Выполнение тестов с помощью средства выполнения тестов, указанного в проекте. + Creates a NuGet package. - Создание пакета NuGet - + Создание пакета NuGet. + Migrates a project.json based project to a msbuild based project. - Миграция проекта на основе project.json в проект на основе msbuild - + Миграция проекта на основе project.json в проект на основе msbuild. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Добавить элементы в проект - + Добавление элементов в проект. + Remove items from the project. - Удалить элементы из проекта - + Удаление элементов из проекта. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Предоставление дополнительных команд NuGet - + Предоставление дополнительных команд NuGet. + Runs Microsoft Build Engine (MSBuild). - Выполнение сборки msbuild проекта и всех его зависимостей - + Запуск Microsoft Build Engine (MSBuild). + Runs Microsoft Test Execution Command Line Tool. - Выполнение тестов из указанных файлов - + Запуск программы командной строки Майкрософт для выполнения тестов. + Enable diagnostic output - Enable diagnostic output - + Включить диагностические выходные данные. + Clean build output(s). - Clean build output(s). - + Очистка выходных данных сборки. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf index 8d2d0273b..d0ffb1574 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - Temel bir .NET projesi başlatır - + .NET projelerini başlatır. + Restore dependencies specified in the .NET project. - .NET projesinde belirtilen bağımlılıkları geri yükler - + .NET projesinde belirtilen bağımlılıkları geri yükler. + Builds a .NET project. - .NET projesi derler - + .NET projesi derler. + Publishes a .NET project for deployment (including the runtime). - Dağıtım için bir .NET projesi yayımlar (çalışma zamanı dahil) - + Dağıtım için bir .NET projesi yayımlar (çalışma zamanı dahil). + Compiles and immediately executes a .NET project. - Bir .NET projesini derler ve hemen yürütür - + Bir .NET projesini derler ve hemen çalıştırır. + Runs unit tests using the test runner specified in the project. - Projede belirtilen test çalıştırıcısını kullanarak birim testleri çalıştırır - + Projede belirtilen test çalıştırıcısını kullanarak birim testleri çalıştırır. + Creates a NuGet package. - NuGet paketi oluşturur - + NuGet paketi oluşturur. + Migrates a project.json based project to a msbuild based project. - project.json tabanlı bir projeyi msbuild tabanlı bir projeye geçirir - + project.json tabanlı bir projeyi msbuild tabanlı bir projeye geçirir. + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - Projeye öğe ekler - + Projeye öğe ekler. + Remove items from the project. - Projeden öğeleri kaldırır - + Projeden öğeleri kaldırır. + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - Ek NuGet komutları sağlar - + Ek NuGet komutları sağlar. + Runs Microsoft Build Engine (MSBuild). - Bir projeyi ve tüm bağımlılıklarını msbuild ile derler - + Microsoft Build Engine’i (MSBuild) çalıştırır. + Runs Microsoft Test Execution Command Line Tool. - Belirtilen dosyalardan testleri çalıştırır - + Microsoft Test Çalıştırması Komut Satırı Aracı’nı çalıştırır. + Enable diagnostic output - Enable diagnostic output - + Tanılama çıkışını etkinleştir + Clean build output(s). - Clean build output(s). - + Derleme çıkışlarını temizler. + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf index 05ae650da..e30b26de2 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - 初始化基础 .NET 项目 - + 初始化 .NET 项目。 + Restore dependencies specified in the .NET project. - 还原 .NET 项目中指定的依赖项 - + 还原 .NET 项目中指定的依赖项。 + Builds a .NET project. - 生成 .NET 项目 - + 生成 .NET 项目。 + Publishes a .NET project for deployment (including the runtime). - 发布 .NET 项目以进行部署(包括运行时) - + 发布 .NET 项目以进行部署(包括运行时)。 + Compiles and immediately executes a .NET project. - 编译并立即执行 .NET 项目 - + 编译并立即执行 .NET 项目。 + Runs unit tests using the test runner specified in the project. - 使用项目中指定的测试运行程序运行单元测试 - + 使用项目中指定的测试运行程序运行单元测试。 + Creates a NuGet package. - 创建 NuGet 包 - + 创建 NuGet 包。 + Migrates a project.json based project to a msbuild based project. - 将基于 project.json 的项目迁移到基于 MSBuild 的项目 - + 将基于 project.json 的项目迁移到基于 MSBuild 的项目。 + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - 将项添加到项目中 - + 将项添加到项目中。 + Remove items from the project. - 从项目中删除项 - + 从项目中删除项。 + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - 提供其他 NuGet命令 - + 提供其他 NuGet 命令。 + Runs Microsoft Build Engine (MSBuild). - 通过 MSBuild 生成一个项目以及该项目的所有依赖项 - + 运行 Microsoft 生成引擎 (MSBuild)。 + Runs Microsoft Test Execution Command Line Tool. - 从指定的文件运行测试 - + 运行 Microsoft 测试执行命令行工具。 + Enable diagnostic output - Enable diagnostic output - + 启用诊断输出 + Clean build output(s). - Clean build output(s). - + 清除生成输出。 + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf index 62fe84f87..53b124ed2 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf @@ -70,43 +70,43 @@ Initialize .NET projects. - 將基本 .NET 專案初始化 - + 將 .NET 專案初始化。 + Restore dependencies specified in the .NET project. - 還原 .NET 專案中指定的相依性 - + 還原 .NET 專案中指定的相依性。 + Builds a .NET project. - 建置 .NET 專案 - + 建置 .NET 專案。 + Publishes a .NET project for deployment (including the runtime). - 發行用於部署的 .NET 專案 (包括執行階段) - + 發行用於部署的 .NET 專案 (包括執行階段)。 + Compiles and immediately executes a .NET project. - 編譯並立即執行 .NET 專案 - + 編譯並立即執行 .NET 專案。 + Runs unit tests using the test runner specified in the project. - 使用專案中指定的測試執行器來執行單元測試 - + 使用專案中指定的測試執行器來執行單元測試。 + Creates a NuGet package. - 建立 NuGet 套件 - + 建立 NuGet 套件。 + Migrates a project.json based project to a msbuild based project. - 將 project.json 專案移轉到 MSBuild 專案 - + 將 project.json 專案移轉到 MSBuild 專案。 + Project modification commands @@ -115,13 +115,13 @@ Add items to the project. - 將項目新增至專案 - + 將項目新增至專案。 + Remove items from the project. - 從專案中移除項目 - + 從專案中移除項目。 + Advanced Commands @@ -130,28 +130,28 @@ Provides additional NuGet commands. - 提供其他 NuGet 命令 - + 提供其他 NuGet 命令。 + Runs Microsoft Build Engine (MSBuild). - 對專案及其所有相依性執行 MSBuild - + 執行 Microsoft Build Engine (MSBuild)。 + Runs Microsoft Test Execution Command Line Tool. - 從指定的檔案執行測試 - + 執行 Microsoft Test Execution Command Line Tool。 + Enable diagnostic output - Enable diagnostic output - + 啟用診斷輸出 + Clean build output(s). - Clean build output(s). - + 清除建置輸出。 + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf index a5417236d..891c62cfa 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Prohlížeč závislostí mezi projekty .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Příkaz pro zobrazení seznamu závislostí mezi projekty (p2p) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + Projekt {1} neobsahuje odkazy na {0}. +{0} je typ požadované položky (projekt, balíček, p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf index 7d4df2024..e87b18358 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Viewer für .NET Core-Interprojektabhängigkeit + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Befehl zum Auflisten von Interprojektverweisen (P2P) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + In Projekt „{1}“ liegen keine {0}-Verweise vor. +{0} ist der Typ des angeforderten Elements (Projekt, Paket, P2P) und „{1}“ das Objekt, an dem der Vorgang ausgeführt wird (eine Projekt- oder Projektmappendatei). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.es.xlf index 2de85e72b..a25330a17 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.es.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Visor de dependencias de proyecto a proyecto de .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Comando para mostrar las referencias de proyecto a proyecto (p2p) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + No hay referencias de {0} en el proyecto {1}. +{0} es el tipo de elemento solicitado (proyecto, paquete, p2p) y {1} es el objeto utilizado (un archivo de proyecto o de solución). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf index 736ebbc20..6149687a4 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Visionneuse de dépendances de projet à projet .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Commande permettant de lister les références de projet à projet (p2p) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + Il n'existe aucune référence {0} dans le projet {1}. +{0} est le type de l'élément demandé (projet, package, p2p) et {1} est l'objet utilisé (fichier projet ou fichier solution). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.it.xlf index a09bcaab3..5cbc8f1ad 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.it.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Visualizzatore dipendenze P2P (da progetto a progetto) di .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Comando per elencare i riferimenti P2P (da progetto a progetto) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + Non ci sono riferimenti a {0} nel progetto {1}. +{0} è il tipo dell'elemento richiesto (progetto, pacchetto o P2P) e {1} è l'oggetto su cui si interviene (file di progetto o di soluzione). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf index 1461fc71d..7cb883fdf 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + .NET Core プロジェクト間の依存関係ビューアー + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + プロジェクト間 (p2p) 参照を一覧表示するコマンド + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + プロジェクト {1} 内に {0} 参照がありません。 +{0} は要求中のアイテムの種類 (プロジェクト、パッケージ、p2p) であり、{1} は操作対象のオブジェクト (プロジェクト ファイルまたはソリューション ファイル) です。 + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf index d2ef34ae7..495ec3496 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + .NET Core p2p(프로젝트 간) 종속성 뷰어 + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + p2p(프로젝트 간) 참조를 나열하기 위한 명령입니다. + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + {1} 프로젝트에 {0} 참조가 없습니다. +{0}은(는) 요청한 항목의 형식(프로젝트, 패키지, p2p)이고 {1}은(는) 작업 중인 개체(프로젝트 파일 또는 솔루션 파일)입니다. + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pl.xlf index cbe10a6bd..246b27c61 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pl.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Podgląd zależności między projektami w programie .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Polecenie służące do wyświetlania listy odwołań między projektami (p2p) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + Brak odwołań do elementu typu {0} w projekcie {1}. +{0} to typ żądanego elementu (projekt, pakiet, odwołanie między projektami), a {1} to obiekt, na którym przeprowadzana jest operacja (plik projektu lub rozwiązania). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf index 552b186ea..7ef7b8687 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Visualizador de dependência Projeto a Projeto do .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Comando para listar as referências p2p (projeto a projeto) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + Não há referências {0} no projeto {1}. +{0} é o tipo do item solicitado (projeto, pacote, p2p) e {1} é o objeto no qual ocorre a operação (um arquivo de projeto ou de solução). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf index 9d0817901..97209b18d 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + Средство просмотра зависимостей между проектами .NET Core + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Команда для перечисления ссылок проекта на проект (p2p) + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + В проекте {1} нет ссылок {0}. +{0} — тип запрашиваемого элемента (проект, пакет, p2p), а {1} — обрабатываемый объект (файл проекта или решения). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf index eeeaf3d13..79661bbf3 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + .NET Core Projeden Projeye bağımlılık görüntüleyicisi + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + Projeden projeye (p2p) başvuruları listeleme komutu + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + {1} projesinde {0} başvurusu yok. +{0}, istenen öğenin türü (proje, paket, p2p) ve {1}, üzerinde işlem yapılan nesnedir (bir proje dosyası veya çözüm dosyası). + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf index 8350b219d..d54f343f8 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + .NET Core 项目到项目的依赖项查看器 + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + 用于列出项目到项目 (p2p) 引用的命令 + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + 项目 {1} 中没有 {0} 引用。 +{0} 是正在请求的项类型(项目、包、p2p),{1} 是项目文件或解决方案文件上操作的对象。 + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf index b8f69465b..f13ec239e 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,20 +5,20 @@ .NET Core Project-to-Project dependency viewer - .NET Core Project-to-Project dependency viewer - + .NET Core 專案對專案相依性檢視器 + Command to list project to project (p2p) references - Command to list project to project (p2p) references - + 命令,用以列出專案對專案 (p2p) 參考 + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - There are no {0} references in project {1}. -{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + 專案 {1} 中沒有任何 {0} 參考。 +{0} 是所要求項目的類型 (專案、套件、p2p),而 {1} 是操作的物件 (專案檔或方案檔)。 + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.cs.xlf index 6e27de72f..e2fddc0a1 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.cs.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Projekty .NET v prohlížeči řešení + Command to list projects in a solution - Command to list projects in a solution - + Příkaz pro zobrazení seznamu projektů v řešení + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.de.xlf index 126141153..9d1a12cf0 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.de.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + .NET-Projekte in Projektmappenviewer + Command to list projects in a solution - Command to list projects in a solution - + Befehl zum Auflisten von Projekten in einer Projektmappe + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.es.xlf index 642a839f7..4b11a7aed 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.es.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Visor de proyectos de NET en la solución + Command to list projects in a solution - Command to list projects in a solution - + Comando para mostrar los proyectos de una solución + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.fr.xlf index f00710374..8e34cfedf 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.fr.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Projets .NET dans la visionneuse de solutions + Command to list projects in a solution - Command to list projects in a solution - + Commande permettant de lister les projets d'une solution + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.it.xlf index 514f33f06..007cda2f5 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.it.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Progetti .NET nel visualizzatore soluzioni + Command to list projects in a solution - Command to list projects in a solution - + Comando per elencare i progetti presenti in una soluzione + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ja.xlf index 6ad057608..968ad77c3 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ja.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + ソリューション ビューアー内の .NET プロジェクト + Command to list projects in a solution - Command to list projects in a solution - + ソリューションのプロジェクトを一覧表示するコマンド + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ko.xlf index 519c80562..051678c96 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ko.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + .NET 솔루션 뷰어의 프로젝트 + Command to list projects in a solution - Command to list projects in a solution - + 솔루션의 프로젝트를 나열하기 위한 명령입니다. + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pl.xlf index cdf77475e..04c5326a7 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pl.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Podgląd projektów w rozwiązaniu dla platformy .NET + Command to list projects in a solution - Command to list projects in a solution - + Polecenie umożliwiające wyświetlenie listy projektów w rozwiązaniu + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pt-BR.xlf index a814d2435..6630504bc 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.pt-BR.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Projetos .NET no visualizador da Solução + Command to list projects in a solution - Command to list projects in a solution - + Comando para listar os projetos em uma solução + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ru.xlf index f38b04fa5..88b9efe77 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.ru.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Проекты .NET в средстве просмотра решений + Command to list projects in a solution - Command to list projects in a solution - + Команда для перечисления проектов в решении + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.tr.xlf index 67301928e..2e364b301 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.tr.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + Çözüm görüntüleyicisinde .NET Projeleri + Command to list projects in a solution - Command to list projects in a solution - + Bir çözümdeki projeleri listeleme komutu + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hans.xlf index 458472efa..bc7d77e08 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + 解决方案查看器中的 .NET 项目 + Command to list projects in a solution - Command to list projects in a solution - + 用于列出解决方案中项目的命令 + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hant.xlf index 64a1fce44..4378b00d9 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,13 +5,13 @@ .NET Projects in Solution viewer - .NET Projects in Solution viewer - + 解決方案檢視器中的 .NET 專案 + Command to list projects in a solution - Command to list projects in a solution - + 命令,用以列出解決方案中的專案 + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.cs.xlf index efc087270..637ab429f 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.cs.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Příkaz .NET pro zobrazení seznamu + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.de.xlf index 4a0ac8706..f11e465c5 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.de.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + .NET-Auflistbefehl + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.es.xlf index d85b4f934..fa2a91ad9 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.es.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Comando de lista de .NET + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.fr.xlf index 1321a6da9..6ad4dfd78 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.fr.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Commande de liste .NET + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.it.xlf index 8765640dd..4348c9ce5 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.it.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Comando Elenca .NET + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ja.xlf index 760eaa2f7..02ebd7f81 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ja.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + .NET List コマンド + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ko.xlf index d79f8b4d7..1847af6dd 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ko.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + .NET 명령 나열 + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pl.xlf index b7eafba1d..20640b3b2 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pl.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Polecenie list platformy .NET + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pt-BR.xlf index d79c45873..a4a3e7e82 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.pt-BR.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Comando List do .NET + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ru.xlf index 6c51920e9..58674fc3b 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.ru.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + Команда "Список" .NET + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.tr.xlf index fbd9c5aa0..d806ccde1 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.tr.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + .NET Listeleme Komutu + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hans.xlf index 3ad85aac2..9e5ba07a8 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + .NET 列表命令 + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hant.xlf index 00007d5ae..2082f61ab 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,8 +5,8 @@ .NET List Command - .NET List Command - + .NET 清單命令 + diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf index e211bd28c..103673fe2 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Cesta k - - migrovanému souboru project.json. -nebo - - souboru global.json – migrovat se budou složky zadané v souboru global.json. -nebo - - migrovaný adresář – rekurzivně vyhledá migrované soubory project.json. -Výchozí hodnota je aktuální adresář (pokud není zadaný jiný adresář). - + Cesta k: + - Migrovanému souboru project.json + - Souboru global.json (Migrovat se budou složky zadané v souboru global.json.) + - Souboru solution.sln (Migrovat se budou projekty, na které odkazuje řešení.) + - Migrovanému adresáři (Rekurzivně vyhledá migrované soubory project.json.) +Výchozí hodnotou je aktuální adresář (pokud není zadaný jiný adresář). + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf index 62087ef78..66b1065fd 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Der Pfad zu - - einer zu migrierenden Datei vom Typ "project.json". -oder - - einer Datei vom Typ "global.json". (Hierbei werden die in "global.json" angegebenen Ordner migriert.) -oder - - einem zu migrierenden Verzeichnis. (Hierbei wird rekursiv nach zu migrierenden Dateien vom Typ "project.json" gesucht.) + Der Pfad zu einem der folgenden Elemente: + - einer zu migrierenden Datei vom Typ „project.json“. + - einer Datei vom Typ „global.json“. (Hierbei werden die in „global.json“ angegebenen Ordner migriert.) + - einer Datei vom Typ „solution.sln“. (Hierbei werden die Projekte migriert, auf die die Projektmappe verweist.) + - einem zu migrierenden Verzeichnis. (Hierbei wird rekursiv nach zu migrierenden Dateien vom Typ „project.json“ gesucht.) Ohne Angabe wird standardmäßig das aktuelle Verzeichnis verwendet. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf index 64a487daa..389fe83cf 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROYECTO_JSON/JSON_GLOBAL/DIRECTORIO_DEL_PROYECTO - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Ruta de acceso a - - un archivo project.json para migrarlo; -o bien: - - un archivo global.json; migra las carpetas especificadas en global.json; -o bien: + La ruta de acceso a cada uno de los siguientes elementos: + - un archivo project.json para migrarlo, + - un archivo global.json; migra las carpetas especificadas en global.json, + - un archivo solution.sln; migra los proyectos a los que se hace referencia en la solución, - un directorio para migrar; busca archivos project.json de forma recursiva para migrarlos. Si no se especifica ninguno, usa el directorio actual de forma predeterminada. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf index b472bc311..9e6503bef 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - JSON_PROJET/JSON_GLOBAL/RÉP_PROJET - + PROJECT_JSON/GLOBAL_JSON/FICHIER_SOLUTION/RÉP_PROJET + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Chemin à - - un fichier project.json à migrer. -ou - - un fichier global.json (migre les dossiers spécifiés dans global.json). -ou - - un répertoire à migrer (recherche de manière récursive les fichiers project.json à migrer). -Sélectionne par défaut le répertoire actif si rien n'est spécifié. - + Chemin de l'un des éléments suivants : + - fichier project.json à faire migrer ; + - fichier global.json qui effectue la migration des dossiers spécifiés dans global.json ; + - fichier solution.sln qui effectue la migration des projets référencés dans la solution ; + - répertoire à faire migrer, où est effectuée une recherche récursive des fichiers project.json à faire migrer. +La valeur par défaut correspond au répertoire actif, si rien n'est spécifié. + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf index aeafccbe5..5f1817f33 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/DIR_PROGETTO - + PROJECT_JSON/GLOBAL_JSON/FILE_SOLUZIONE/DIR_PROGETTO + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Percorso di - - un file project.json di cui eseguire la migrazione. -oppure - - un file global.json. Verrà eseguita la migrazione delle cartelle specificate in global.json. -oppure - - una directory di cui eseguire la migrazione. Verrà eseguita la ricerca ricorsiva dei file project.json di cui eseguire la migrazione. + Percorso di uno degli elementi seguenti: + - file project.json di cui eseguire la migrazione. + - file global.json; verrà eseguita la migrazione delle cartelle specificate in global.json. + - file solution.sln; verrà eseguita la migrazione dei progetti cui viene fatto riferimento nella soluzione. + - directory di cui eseguire la migrazione; verrà eseguita la ricerca ricorsiva dei file project.json di cui eseguire la migrazione. Se non si specifica un valore, per impostazione predefinita, verrà usata la directory corrente. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf index 5bcd9f3c3..ece30fecb 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 次へのパス + 次のいずれかへのパス: - 移行する project.json ファイル。 -または - global.json ファイル。global.json に指定されているフォルダーを移行します。 -または - - 移行するディレクトリ。移行する project.json ファイルを再帰的に検索します。 + - solution.sln ファイル。ソリューションで参照されているプロジェクトを移行します。 + - 移行するディレクトリ。移行する project.json ファイルを再帰的に検索します。 何も指定しない場合、既定は現在のディレクトリです。 - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf index 908934e01..802228da1 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 다음 파일의 경로입니다. + 다음 중 하나의 경로입니다. - 마이그레이션할 project.json 파일 -또는 - global.json 파일. global.json에 지정된 폴더를 마이그레이션합니다. -또는 + - solution.sln 파일. 솔루션에서 참조된 프로젝트를 마이그레이션합니다. - 마이그레이션할 디렉터리. 마이그레이션할 project.json 파일을 재귀적으로 검색합니다. 지정하지 않는 경우 현재 디렉터리로 기본 설정됩니다. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf index e72da1dd8..f02ffe712 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/KATALOG_PROJEKTU - + PLIK_JSON_PROJEKTU/GLOBALNY_PLIK_JSON/PLIK_ROZWIĄZANIA/KATALOG_PROJEKTU + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Ścieżka do - — pliku project.json, który ma zostać zmigrowany; -lub - — pliku global.json — zostaną zmigrowane foldery podane w tym pliku; -lub - — katalogu, który ma zostać zmigrowany — zostaną rekursywnie wyszukane pliki project.json do zmigrowania. + Ścieżka do jednego z następujących elementów: + — Plik project.json, który ma zostać zmigrowany. + — Plik global.json — zostaną zmigrowane foldery podane w tym pliku. + — Plik solution.sln — zostaną zmigrowane projekty, do których istnieją odwołania w rozwiązaniu. + — katalog, który ma zostać zmigrowany — zostaną rekursywnie wyszukane pliki project.json do zmigrowania. W przypadku braku podanej wartości domyślnie jest to bieżący katalog. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf index 66a94e7c5..70bb01288 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - O caminho para + O caminho para um dos seguintes: – um arquivo project.json a ser migrado. -ou - – um arquivo global.json, ele migrará as pastas especificadas em global.json. -ou - – um diretório para migrar, ele pesquisará recursivamente os arquivos project.json para migrar. -Usará como padrão o diretório atual se nada for especificado. - + – um arquivo global.json; ele migrará as pastas especificadas em global.json. + – um arquivo solution.sln; ele migrará os projetos referenciados na solução. + – um diretório a ser migrado; ele pesquisará recursivamente os arquivos project.json a serem migrados. +Usará o diretório atual como padrão se nenhuma opção for especificada. + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf index ec2a459b6..daea03a03 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Путь к - — переносимому файлу project.json. -или - — файлу global.json; выполняется миграция папок, указанных в файле global.json. -или - — переносимому каталогу; выполняется рекурсивный поиск файлов project.json для миграции. + Путь к: + — переносимому файлу project.json; + — файлу global.json, выполняется миграция папок, указанных в файле global.json; + — файлу solution.sln, выполняется миграция проектов, на которые ссылается решение; + — переносимому каталогу, выполняется рекурсивный поиск файлов project.json для миграции. По умолчанию применяется текущий каталог, если не указана другая папка. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf index f3fc42b1f..4f7e1c84d 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Şunların yolu: + Aşağıdakilerden birinin yolu: - geçirilecek project.json dosyası. -veya - bir global.json dosyası; global.json içinde belirtilen klasörleri geçirir. -veya + -bir solution.sln dosyası; çözümde başvurulan projeleri geçirir. - geçirilecek dizin; geçirilecek project.json dosyalarını yinelemeli olarak arar. Bir seçenek belirtilmezse, geçerli dizin varsayılan olarak kullanılır. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf index 6d0d3fd1e..ccff4ac0e 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 指向 + 以下其中一项的路径: - 要迁移的 project.json 文件的路径。 -或 - - global.json 文件的路径,它将迁移 global.json 中指定的文件夹。 -或 - - 要迁移目录的路径,将递归搜索要迁移的 project.json 文件。 + - global.json 文件,它将迁移 global.json 中指定的文件夹。 + - solution.sln 文件,它将迁移解决方案中引用的项目。 + - 要迁移的目录,它将递归搜索要迁移的 project.json文件。 如果未指定,则默认使用当前目录。 - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf index 8eb992c2e..0d397b43d 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf @@ -15,8 +15,8 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR - + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR + The path to one of the following: @@ -25,14 +25,13 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 路徑連到 - - 要移轉的 project.json 檔案。 -或 - - global.json 檔案,將會移轉 global.json 中指定的資料夾。 -或 - - 要移轉的目錄,將會遞迴搜尋要移轉的 project.json 檔案。 + 下列其中一項的路徑: + - - 要移轉的 project.json 檔案。 + - - global.json 檔案,將會移轉 global.json 中指定的資料夾。 + - solution.sln 檔案,將會移轉解決方案中參考的專案。 + - - 要移轉的目錄,將會遞迴搜尋要移轉的 project.json 檔案。 如果未指定任何項目,預設為目前的目錄。 - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.cs.xlf index 9e845fbf5..4d4aa4c2d 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.cs.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Nastavte úroveň podrobností příkazu. Povolené hodnoty jsou q [tichý], m [minimální], n [normální], d [podrobný] a diag [diagnostický]. + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf index c6264e757..9459bf3c0 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Legen Sie den Ausführlichkeitsgrad des Befehls fest. Zulässige Werte sind „q[uiet]“ (still), „m[inimal]“, „n[ormal]“, „d[etailed]“ (ausführlich) und „diag[nostic]“ (Diagnose). + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.es.xlf index ef7b4deab..3c06c43f5 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.es.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Establece el nivel de detalle del comando. Los valores permitidos son q[uiet], m[inimal], n[ormal], d[etailed] y diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.fr.xlf index 526fc7291..9b99be2c9 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.fr.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Définissez le niveau de détail de la commande. Les valeurs autorisées sont q[uiet], m[inimal], n[ormal], d[etailed] et diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.it.xlf index ec1535ac8..85f250a16 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.it.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Imposta il livello di dettaglio del comando. I valori consentiti sono: q[uiet], m[inimal], n[ormal], d[etailed], e diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf index 37da74dc6..e86bb9f84 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + コマンドの詳細レベルを設定します。使用可能な値: q[uiet]、m[inimal]、n[ormal]、d[etailed]、および diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf index 816faa106..f34267e45 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + 명령의 세부 정보 수준을 설정합니다. 허용되는 값은 q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]입니다. + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pl.xlf index 6dd6b3ccd..c98cfa457 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pl.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Ustaw poziom szczegółowości polecenia. Dopuszczalne wartości to: q[uiet], m[inimal], n[ormal], d[etailed] i diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf index dc887ea37..3623de9d0 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Defina o nível de detalhes do comando. Os valores disponíveis são: q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic]. + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ru.xlf index 4442c3e6e..2c7302461 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ru.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Установка уровня детализации для команды. Допустимые значения: q[uiet], m[inimal], n[ormal], d[etailed] и diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf index 399b84ba9..42ac94307 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + Komutun ayrıntı düzeyini ayarlayın. İzin verilen değerler q[uiet], m[inimal], n[ormal], d[etailed] ve diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hans.xlf index b2597388a..8e27295a3 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + 设置命令的详细级别。允许值为 q[uiet]、m[inimal]、n[ormal]、d[etailed] 和 diag[nostic] + diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf index f4a107b7c..f69725561 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,8 +5,8 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + 設定命令的詳細資訊層級。允許的值為 q[uiet]、m[inimal]、n[ormal]、d[etailed] 及diag[nostic] + diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf index 6110724e2..dd0ed1cb5 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - zabalit - + Nástroj .NET Core pro balení balíčku NuGet + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Adresář pro ukládání výstupů - + Adresář, do kterého se umisťují sestavené balíčky. + Skip building the project prior to packing. By default, the project will be built. - Nesestavujte projekt, dokud ho nezabalíte. - + Přeskočte sestavení projektu, dokud ho nezabalíte. Projekt bude sestaven automaticky. + Include packages with symbols in addition to regular packages in output directory. - Zahrnout do výstupní složky soubory PDB a knihovny DLL - + Zahrne do výstupního adresáře kromě běžných balíčků i balíčky se symboly. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení - + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Definuje, čím nahradit „*“ v poli verze v souboru project.json. - + Definuje hodnotu vlastnosti $(VersionSuffix) v projektu. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Nastavit v balíčku příznak obsluhovatelnosti - + Nastaví v balíčku příznak obsluhovatelnosti. Další informace najdete na adrese https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf index bbe31552d..70d3d801e 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - Packen - + .NET Core NuGet Package Packer + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Verzeichnis für Ausgaben - + Verzeichnis, in dem erstellte Pakete abgelegt werden. + Skip building the project prior to packing. By default, the project will be built. - Projekt nicht vor dem Packen erstellen - + Projekt nicht vor dem Packen erstellen. Standardmäßig wird das Projekt erstellt. + Include packages with symbols in addition to regular packages in output directory. - PDBs zusammen mit DLLs im Ausgabeordner einschließen - + Pakete mit Symbolen zusätzlich zu regulären Paketen in Ausgabeverzeichnis einschließen. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für den Buildvorgang - + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Definiert, wodurch "*" im Versionsfeld in "project.json" ersetzt werden soll. - + Definiert den Wert für die Eigenschaft „$(VersionSuffix)“ im Projekt. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Verarbeitungsflag im Paket festlegen - + Verarbeitungsflag im Paket festlegen. Weitere Informationen finden Sie unter https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf index f871423f3..8b5fb037e 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - pack - + pack + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Directorio donde se ponen los archivos de salida - + Directorio donde se ubican los paquetes compilados. + Skip building the project prior to packing. By default, the project will be built. - No se compila el proyecto antes de crear el paquete - + Omita la compilación del proyecto antes de empaquetar. El proyecto se compilará de manera predeterminada. + Include packages with symbols in addition to regular packages in output directory. - Se incluyen los archivos PDB junto con las bibliotecas DLL en la carpeta de salida - + Se incluyen paquetes con símbolos además de los paquetes habituales en el directorio de salida. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración para la compilación - + Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Define con qué debe reemplazarse “*” en el campo de versión de project.json - + Define el valor para la propiedad $(VersionSuffix) del proyecto. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Establece la marca serviceable en el paquete - + Establece la marca serviceable en el paquete. Para más información, consulte https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf index 8b007b87e..496ef913a 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - compresser - + Compresseur de package NuGet .NET Core + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Répertoire dans lequel placer les sorties - + Répertoire dans lequel placer les packages générés + Skip building the project prior to packing. By default, the project will be built. - Ne pas générer le projet avant la compression - + Ignorez la génération du projet avant la compression. Par défaut, le projet est généré. + Include packages with symbols in addition to regular packages in output directory. - Inclure les PDB avec les DLL dans le dossier de sortie - + Incluez les packages avec des symboles en plus des packages classiques dans le répertoire de sortie. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration sous laquelle générer la build - + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Définit par quoi remplacer '*' dans le champ version dans project.json - + Définit la valeur de la propriété $(VersionSuffix) dans le projet. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Définir l'indicateur de maintenance dans le package - + Définissez l'indicateur de maintenance dans le package. Pour plus d'informations, consultez https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf index 6880aa07c..56ede7b87 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - pack - + Strumento di creazione pacchetti NuGet di .NET Core + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Directory in cui inserire gli output - + Directory in cui inserire i pacchetti compilati. + Skip building the project prior to packing. By default, the project will be built. - Non compila il progetto prima della creazione del pacchetto - + Consente di ignorare la compilazione del progetto prima di creare il pacchetto. Per impostazione predefinita, il progetto verrà compilato. + Include packages with symbols in addition to regular packages in output directory. - Include i PDB unitamente alle DLL nella cartella di output - + Include i pacchetti con simboli in aggiunta a quelli normali nella directory di output. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione con cui eseguire la compilazione - + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Consente di definire con che cosa sostituire `*` nel campo della versione in project.json - + Consente di definire il valore per la proprietà $(VersionSuffix) nel progetto. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Imposta il flag serviceable nel pacchetto - + Imposta il flag serviceable nel pacchetto. Per altre informazioni,vedere https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf index 9bfaa8a4d..26287742a 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - パック - + .NET Core NuGet パッケージ パッカー + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - 出力を配置するディレクトリ - + ビルド パッケージを配置するディレクトリ + Skip building the project prior to packing. By default, the project will be built. - パックする前にプロジェクトを構築しないでください - + パックする前にプロジェクトの構築をスキップします。プロジェクトは既定で構築されます。 + Include packages with symbols in addition to regular packages in output directory. - 出力フォルダーに DLL と共に PDB を含める - + 通常のパッケージに加えてシンボルを含むパッケージを出力ディレクトリに含めます。 + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 構築する構成 - + プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - project.json のバージョン フィールド内で `*` を置き換えるものを定義する - + プロジェクトの $(VersionSuffix) プロパティの値を定義します。 + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - パッケージに処理可能なフラグを設定する - + パッケージに処理可能なフラグを設定します。詳細については、https://aka.ms/nupkgservicing を参照してください。 + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf index c63fd444d..24be7781a 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - - + .NET Core NuGet 패키지 패커 + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - 출력을 배치할 디렉터리입니다. - + 빌드된 패키지를 배치할 디렉터리입니다. + Skip building the project prior to packing. By default, the project will be built. - 압축하기 전에 프로젝트를 빌드하지 않습니다. - + 압축하기 전에 프로젝트를 빌드하지 않습니다. 기본적으로 프로젝트가 빌드됩니다. + Include packages with symbols in addition to regular packages in output directory. - 출력 폴더에 DLL과 함께 PDB를 포함합니다. - + 일반 패키지 외에 기호가 포함된 패키지를 출력 디렉터리에 포함합니다. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 빌드할 구성입니다. - + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - project.json의 버전 필드에서 `*`를 대체할 항목을 정의합니다. - + 프로젝트에서 $(VersionSuffix) 속성의 값을 정의합니다. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - 패키지에서 서비스 가능 플래그를 설정합니다. - + 패키지에서 서비스 가능 플래그를 설정합니다. 자세한 내용은 https://aka.ms/nupkgservicing을 참조하세요. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf index 00ca80abd..5edbf1243 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - pakowanie - + Tworzenie pakietów NuGet w programie .NET Core + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Katalog, w którym mają zostać umieszczone dane wyjściowe - + Katalog, w którym mają zostać umieszczone skompilowane pakiety. + Skip building the project prior to packing. By default, the project will be built. - Nie kompiluj projektu przed pakowaniem - + Pomiń kompilację projektu przed pakowaniem. Domyślnie projekt zostanie skompilowany. + Include packages with symbols in addition to regular packages in output directory. - Dołącz pliki PDB wraz z bibliotekami DLL w folderze wyjściowym - + Dołącz pakiety z symbolami oprócz regularnych pakietów w folderze wyjściowym. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja, przy użyciu której ma zostać przeprowadzona kompilacja - + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Określa, czym ma zostać zastąpiona gwiazdka (*) w polu wersji w pliku project.json - + Określa wartość właściwości $(VersionSuffix) w projekcie. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Ustaw w pakiecie flagę oznaczającą możliwość obsługi - + Ustaw w pakiecie flagę oznaczającą możliwość obsługi. Aby uzyskać więcej informacji, zobacz https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf index bd7fbcb21..6032cfedd 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - empacotar - + Empacotador de Pacotes NuGet do .NET Core + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Diretório no qual colocar as saídas - + Diretório no qual os pacotes compilados serão colocados. + Skip building the project prior to packing. By default, the project will be built. - Não compile o projeto antes de empacotar - + Ignorar a compilação do projeto antes do empacotamento. Por padrão, o projeto será compilado. + Include packages with symbols in addition to regular packages in output directory. - Incluir os PDBs juntamente com os DLLs na pasta de saída - + Inclua os pacotes com símbolos no diretório de saída, além dos pacotes regulares. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração sob a qual compilar - + Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Define pelo que ‘*’ deve ser substituído no campo de versão no project.json - + Define o valor da propriedade $(VersionSuffix) no projeto. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Definir o sinalizador operacional no pacote - + Defina o sinalizador operacional no pacote. Para obter mais informações, consulte https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf index dc460a834..21f8a812d 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - упаковать - + Упаковщик пакетов NuGet .NET Core + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Каталог для размещения выходных данных - + Каталог для размещения созданных пакетов. + Skip building the project prior to packing. By default, the project will be built. - Не выполнять сборку проектов перед упаковкой - + Пропуск сборки проекта перед упаковкой. По умолчанию выполняется сборка проекта. + Include packages with symbols in addition to regular packages in output directory. - Включать PDB-файлы вместе с библиотеками DLL в выходную папку - + Включение пакетов с символами в дополнение к обычным пакетам в выходном каталоге. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, в которой выполняется сборка - + Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Определяет элемент, заменяющий "*" в поле версии файла project.json - + Определяет значение для свойства $(VersionSuffix) в проекте. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Задать флаг "подлежит обслуживанию" в пакете - + Установка флага "подлежит обслуживанию" в пакете. Дополнительные сведения см. на странице https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf index 785e59200..22040c49f 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - pack - + .NET Core NuGet Paketi Paketleyicisi + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - Çıkışların yerleştirileceği dizin - + Derlenen paketlerin yerleştirileceği dizin. + Skip building the project prior to packing. By default, the project will be built. - Projeyi derlemeden önce paketleyin - + Projeyi paketlemeden önce derlemeyi atlayın. Varsayılan olarak, proje derlenir. + Include packages with symbols in addition to regular packages in output directory. - Çıkış klasörüne DLL’ler ile birlikte PDB’leri ekleyin - + Çıkış dizinine, normal paketlere ek olarak sembol içeren paketler ekleyin. + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Derlemenin gerçekleştirileceği yapılandırma - + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - Project.json dosyasındaki sürüm alanında `*` simgesinin neyle değiştirileceğini tanımlar - + Projedeki $(VersionSuffix) özelliğinin değerini tanımlar. + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Pakette serviceable bayrağını ayarlayın - + Pakette serviceable bayrağını ayarlayın. Daha fazla bilgi için bkz. https://aka.ms/nupkgservicing. + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf index 15f17bc86..b97758f51 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - - + .NET Core NuGet 包打包程序 + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - 用于放置输出的目录 - + 用于放置生成包的目录。 + Skip building the project prior to packing. By default, the project will be built. - 打包之前不要生成项目 - + 在打包之前跳过生成项目。默认情况下,将生成项目。 + Include packages with symbols in addition to regular packages in output directory. - 输出文件夹中包括 PDB 和 DLL。 - + 除了输出目录中的常规包之外,还包括带符号的包。 + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 在何处生成配置 - + 用于生成项目的配置。大多数项目的默认值为“Debug”。 + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - 定义 project.json 的版本字段应该替换哪个 “*”。 - + 定义项目中 $(VersionSuffix) 属性的值。 + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - 在包中设置可用标志 - + 在包中设置可用标志。有关详细信息,请参阅 https://aka.ms/nupkgservicing。 + PROJECT diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf index 34ce31b65..b16083418 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,8 +5,8 @@ .NET Core NuGet Package Packer - 套件 - + .NET Core NuGet 套件封裝器 + pack for msbuild @@ -20,18 +20,18 @@ Directory in which to place built packages. - 要放置輸出的目錄 - + 要放置建置套件的目錄。 + Skip building the project prior to packing. By default, the project will be built. - 請勿在封裝前建置專案 - + 在封裝前跳過建置專案。預設會建置專案。 + Include packages with symbols in addition to regular packages in output directory. - 將 PDB 和 DLL 包含在輸出資料夾中 - + 將具符號的套件及一般套件包含在輸出目錄中。 + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -45,8 +45,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 作為建置依據的組態 - + 建置專案用的組態。多數專案預設為 "Debug"。 + VERSION_SUFFIX @@ -55,13 +55,13 @@ Defines the value for the $(VersionSuffix) property in the project. - 在 project.json 的版本欄位中定義 `*` 的取代項目 - + 在專案中定義 $(VersionSuffix) 屬性的值。 + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - 設定套件中提供服務的旗標 - + 設定套件中提供服務的旗標。如需詳細資訊,請參閱 https://aka.ms/nupkgservicing。 + PROJECT diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf index 86b9ba942..2ae18769d 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Cílová platforma pro publikování - + Cílová platforma pro publikování. Cílová platforma musí být v souboru projektu zadaná. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Cílový modul runtime pro publikování. Výchozí možnost je publikovat přenosnou aplikaci. - + Publikuje projekt pro daný runtime. Používá se k vytvoření samostatného nasazení. Výchozí možnost je publikovat aplikaci závislou na platformě. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Cesta pro publikování aplikace - + Výstupní adresář do kterého se umisťují publikované artefakty. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení - + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Definuje hodnotu vlastnosti $(VersionSuffix) v projektu. - + Definuje hodnotu vlastnosti $(VersionSuffix) v projektu. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf index 120fd9c95..92c6069d5 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Zielframework für die Veröffentlichung - + Zielframework der Veröffentlichung. Das Zielframework muss in der Projektdatei angegeben werden. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Ziellaufzeit für die Veröffentlichung. Standardmäßig wird eine portable Anwendung veröffentlicht. - + Veröffentlichung des Projekts für eine bestimmte Laufzeit. Wird zum Erstellen einer eigenständigen Bereitstellung verwendet. Standardmäßig wird eine Framework-abhängige App veröffentlicht. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Pfad, an dem die App veröffentlicht werden soll - + Ausgabeverzeichnis, in dem veröffentlichte Artefakte abgelegt werden. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für den Buildvorgang - + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Definiert den Wert für die Eigenschaft "$(VersionSuffix)" im Projekt. - + Definiert den Wert für die Eigenschaft „$(VersionSuffix)“ im Projekt. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf index 1bf86de63..c36729b0b 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Plataforma de destino para la que se publica - + Plataforma de destino para la que se publica. La plataforma de destino se debe especificar en el archivo de proyecto. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Entorno en tiempo de ejecución para el que se publica. El valor predeterminado es publicar una aplicación móvil. - + Publica el proyecto para un entorno en tiempo de ejecución determinado. Se usa cuando se crea una implementación autocontenida. El valor predeterminado es publicar una aplicación dependiente de la plataforma. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Ruta de acceso donde se publica la aplicación - + Directorio de salida en el que se ubicarán los artefactos publicados. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración para la compilación - + Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Define el valor para la propiedad $(VersionSuffix) del proyecto - + Define el valor para la propiedad $(VersionSuffix) del proyecto. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf index d6c9e8441..752f20f66 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Framework cible de la publication - + Framework cible de la publication. Le framework cible doit être spécifié dans le fichier projet. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Runtime cible de la publication. Par défaut, une application portable est publiée. - + Publiez le projet pour un runtime donné. S'utilise pour la création d'un déploiement autonome. L'action par défaut consiste à publier une application dépendant d'un framework. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Chemin vers lequel publier l'application - + Répertoire de sortie dans lequel placer les artefacts publiés. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration sous laquelle générer la build - + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Définit la valeur de la propriété $(VersionSuffix) dans le projet - + Définit la valeur de la propriété $(VersionSuffix) dans le projet. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf index 34c78cd57..2eee36802 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Framework di destinazione per cui eseguire la pubblicazione - + Framework di destinazione per cui eseguire la pubblicazione. Il framework di destinazione deve essere specificato nel file di progetto. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Runtime di destinazione per cui eseguire la pubblicazione. Per impostazione predefinita, viene pubblicata un'applicazione portatile. - + Consente di pubblicare il progetto per un runtime specificato. Viene usata durante la creazione della distribuzione indipendente. Per impostazione predefinita, viene pubblicata un'app dipendente dal framework. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Percorso in cui pubblicare l'app - + Directory di output in cui inserire gli artefatti pubblicati. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione con cui eseguire la compilazione - + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Consente di definire il valore per la proprietà $(VersionSuffix) nel progetto - + Consente di definire il valore per la proprietà $(VersionSuffix) nel progetto. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf index 30ea60b99..2b65243da 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - 発行用のターゲット フレームワーク - + 発行用のターゲット フレームワーク。ターゲット フレームワークはプロジェクト ファイルで指定する必要があります。 + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 発行用のターゲット ランタイム既定では、ポータブル アプリケーションを発行します。 - + 指定したランタイムのプロジェクトを発行します。これは、自己完結型の開発を作成する際に使用します。既定では、フレームワーク依存アプリを発行します。 + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - アプリを発行するパス - + 発行された成果物を配置する出力ディレクトリ。 + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 構築する構成 - + プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - プロジェクトの $(VersionSuffix) プロパティの値を定義します。 - + プロジェクトの $(VersionSuffix) プロパティの値を定義します。 + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf index 29ba79abc..eaf8d49c1 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - 게시할 대상 프레임워크입니다. - + 게시할 대상 프레임워크입니다. 대상 프레임워크는 프로젝트 파일에서 지정해야 합니다. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 게시할 대상 런타임입니다. 기본값은 이식 가능한 응용 프로그램을 게시하는 것입니다. - + 지정된 런타임 동안 프로젝트를 게시합니다. 자체 포함 배포를 만들 때 사용됩니다. 기본값은 프레임워크 종속 앱을 게시하는 것입니다. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - 앱을 게시할 경로입니다. - + 게시할 아티팩트를 배치할 출력 디렉터리입니다. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 빌드할 구성입니다. - + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - 프로젝트에서 $(VersionSuffix) 속성의 값을 정의합니다. - + 프로젝트에서 $(VersionSuffix) 속성의 값을 정의합니다. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf index d5dd3c22b..4f4ad65e0 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Docelowa platforma publikacji - + Docelowa platforma publikacji. Platforma docelowa musi być określona w pliku projektu. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Docelowe środowisko uruchomieniowe na potrzeby publikacji. Opcją domyślną jest publikacja aplikacji przenośnej. - + Opublikuj projekt dla danego środowiska uruchomieniowego. Ustawienie stosowane w przypadku tworzenia wdrożenia autonomicznego. Opcją domyślną jest opublikowanie aplikacji zależnej od platformy. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Ścieżka, w której ma zostać opublikowana aplikacja - + Katalog wyjściowy, w którym mają zostać umieszczone opublikowane artefakty. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja, przy użyciu której ma zostać przeprowadzona kompilacja - + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Określa wartość właściwości $(VersionSuffix) w projekcie - + Określa wartość właściwości $(VersionSuffix) w projekcie. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf index 00c390553..0d62b6d36 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Estrutura de destino para a qual publicar - + Estrutura de destino na qual publicar. A estrutura de destino deve ser especificada no arquivo de projeto. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Tempo de execução de destino para o qual publicar. O padrão é publicar um aplicativo portátil. - + Publica o projeto em um tempo de execução específico. Usado durante a criação da implantação independente. O padrão é publicar um aplicativo dependente de estrutura. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Caminho no qual publicar o aplicativo - + Diretório de saída no qual os artefatos publicados serão colocados. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração sob a qual compilar - + Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Define o valor da propriedade $(VersionSuffix) no projeto - + Define o valor da propriedade $(VersionSuffix) no projeto. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf index f4b7969b5..454db7a6f 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Целевая платформа публикации - + Целевая платформа публикации. Целевая платформа должна быть указана в файле проекта. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Целевая среда выполнения публикации По умолчанию выполняется публикация переносимого приложения. - + Публикация проекта для заданной среды выполнения. Используется при создании автономного развертывания. По умолчанию публикуется платформозависимое приложение. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Путь для публикации приложения - + Выходной каталог для размещения опубликованных артефактов. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, в которой выполняется сборка - + Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Определяет значение для свойства $(VersionSuffix) в проекте - + Определяет значение для свойства $(VersionSuffix) в проекте. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf index 2a98b6453..5b9b0b25c 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - Yayımlamanın yapılacağı hedef çerçeve - + Yayımlamanın yapılacağı hedef çerçeve. Hedef çerçevenin proje dosyasında belirtilmesi gerekir. + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Yayımlamanın yapılacağı hedef çalışma zamanı. Varsayılan değer, taşınabilir bir uygulama yayımlanmasıdır. - + Projeyi belirli bir çalışma zamanı için yayımlayın. Bu, kendi içinde dağıtımlar oluşturulurken kullanılır. Varsayılan seçenek, çerçeveye bağımlı bir proje yayımlamaktır. + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - Uygulamanın yayımlanacağı yol - + Yayımlanan yapıtların yerleştirileceği çıkış dizini. + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Derlemenin gerçekleştirileceği yapılandırma - + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - Projedeki $(VersionSuffix) özelliğinin değerini tanımlar - + Projedeki $(VersionSuffix) özelliğinin değerini tanımlar. + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf index 8ba3705af..6b4658c45 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - 要发布的目标框架 - + 发布的目标框架。必须在项目文件中指定目标框架。 + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 要发布的目标运行时默认为发布可移植的应用程序。 - + 针对给定运行时发布项目。创建自包含部署时使用此项。默认操作是发布依赖框架的应用。 + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - 在其中发布应用的路径 - + 用于放置已发布项的输出目录。 + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 在何处生成配置 - + 用于生成项目的配置。大多数项目的默认值为“Debug”。 + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - 定义项目中 $(VersionSuffix)属性的值 - + 定义项目中 $(VersionSuffix) 属性的值。 + diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf index d0793cc3e..7ae90e877 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf @@ -30,8 +30,8 @@ Target framework to publish for. The target framework has to be specified in the project file. - 要對其發行的目標 Framework - + 要為其發行的目標 Framework。其必須在專案檔中指定。 + RUNTIME_IDENTIFIER @@ -40,8 +40,8 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 要對其發行的目標執行階段。預設為發行可攜式應用程式。 - + 為給定的執行階段發行專案。建立獨立的部署時會加以使用。預設發行架構相依型應用程式。 + OUTPUT_DIR @@ -50,8 +50,8 @@ Output directory in which to place the published artifacts. - 要發行應用程式的路徑 - + 要放置發行之成品的輸出目錄。 + CONFIGURATION @@ -60,8 +60,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 作為建置依據的組態 - + 建置專案用的組態。多數專案預設為 "Debug"。 + VERSION_SUFFIX @@ -70,8 +70,8 @@ Defines the value for the $(VersionSuffix) property in the project. - 定義專案中 $(VersionSuffix) 屬性的值 - + 在專案中定義 $(VersionSuffix) 屬性的值。 + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.cs.xlf index 67200dcb7..31d40cfd2 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.cs.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Odebírané odkazy mezi projekty + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.de.xlf index 38689248f..aeef964fa 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.de.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Zu entfernende Interprojektverweise + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.es.xlf index d119c9f8c..ba62ad851 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.es.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Referencias de proyecto a proyecto que se van a quitar + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.fr.xlf index 0e3583234..2c222aa7e 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.fr.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Références de projet à projet à supprimer + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.it.xlf index 47037c8a8..3627cdfbf 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.it.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Riferimenti P2P (da progetto a progetto) da rimuovere + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ja.xlf index 83c8ce5a5..0b4114f6b 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ja.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + 削除するプロジェクト間参照 + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ko.xlf index 15a2e35af..7121657d7 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ko.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + 제거할 p2p(프로젝트 간) 참조입니다. + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pl.xlf index 59d69baca..281785424 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pl.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Odwołania między projektami, które mają zostać usunięte + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pt-BR.xlf index cffe3781f..b04ee0a32 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.pt-BR.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Referências projeto a projeto a serem removidas + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ru.xlf index d285738ad..c3cd5e544 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.ru.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Удаляемые ссылки проекта на проект + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.tr.xlf index 057ebd219..3586e886f 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.tr.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + Kaldırılacak olan, projeden projeye başvurular + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hans.xlf index 8ea4b6aab..4a07e6bcc 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hans.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + 要删除的项目到项目引用 + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hant.xlf index 716c7b1fb..018453c4f 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.zh-Hant.xlf @@ -20,8 +20,8 @@ Project to project references to remove - Project to project references to remove - + 要移除的專案對專案參考 + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.cs.xlf index 8c5203f0f..4ac353aad 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.cs.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Příkaz rozhraní .NET pro odebrání projektu z řešení + Command to remove projects from a solution - Command to remove projects from a solution - + Příkaz pro odebrání projektů z řešení + Projects to remove from a solution - Projects to remove from a solution - + Projekty odebírané z řešení + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.de.xlf index 7a69dc4d5..9587a976e 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.de.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + .NET-Befehl zum Entfernen des Projekts aus der Projektmappe + Command to remove projects from a solution - Command to remove projects from a solution - + Befehl zum Entfernen von Projekten aus einer Projektmappe + Projects to remove from a solution - Projects to remove from a solution - + Aus einer Projektmappe zu entfernende Projekte + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.es.xlf index 0fed13c64..28fff83be 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.es.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Comando de .NET Quitar proyecto de la solución + Command to remove projects from a solution - Command to remove projects from a solution - + Comando para quitar proyectos de una solución + Projects to remove from a solution - Projects to remove from a solution - + Proyectos que se quitarán de una solución + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.fr.xlf index 1bb9ac526..b8ffc56e1 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.fr.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Commande .NET de suppression de projet d'une solution + Command to remove projects from a solution - Command to remove projects from a solution - + Commande permettant de supprimer des projets d'une solution + Projects to remove from a solution - Projects to remove from a solution - + Projets à supprimer d'une solution + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.it.xlf index 4aac6f974..e54b33042 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.it.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Comando Rimuovi progetto da soluzione .NET + Command to remove projects from a solution - Command to remove projects from a solution - + Comando per rimuovere il progetto da una soluzione + Projects to remove from a solution - Projects to remove from a solution - + Progetti da rimuovere da una soluzione + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ja.xlf index 5683b2880..9d22bc7b4 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ja.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + .NET Remove Project from Solution コマンド + Command to remove projects from a solution - Command to remove projects from a solution - + ソリューションからプロジェクトを削除するコマンド + Projects to remove from a solution - Projects to remove from a solution - + ソリューションから削除するプロジェクト + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ko.xlf index ff3c33740..0195934f3 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ko.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + .NET 솔루션에서 프로젝트 제거 명령 + Command to remove projects from a solution - Command to remove projects from a solution - + 솔루션에서 프로젝트를 제거하기 위한 명령입니다. + Projects to remove from a solution - Projects to remove from a solution - + 솔루션에서 제거할 프로젝트 + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pl.xlf index 656942c15..f780c33b6 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pl.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Polecenie usuwania projektu z rozwiązania dla platformy .NET + Command to remove projects from a solution - Command to remove projects from a solution - + Polecenie służące do usuwania projektów z rozwiązania + Projects to remove from a solution - Projects to remove from a solution - + Projekty do usunięcia z rozwiązania + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pt-BR.xlf index 998a6f33c..2746bcf45 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.pt-BR.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Comando para Remover Projetos de uma Solução do .NET + Command to remove projects from a solution - Command to remove projects from a solution - + Comando para remover projetos de uma solução + Projects to remove from a solution - Projects to remove from a solution - + Projetos a serem removidos de uma solução + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ru.xlf index 65e155fa0..02dcaac3b 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.ru.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + Команда "Удалить проект из решения" .NET + Command to remove projects from a solution - Command to remove projects from a solution - + Команда для удаления проектов из решения + Projects to remove from a solution - Projects to remove from a solution - + Проекты, удаляемые из решения + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.tr.xlf index 771d534d4..94088677d 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.tr.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + .NET Projeyi Çözümden Kaldırma Komutu + Command to remove projects from a solution - Command to remove projects from a solution - + Projeleri çözümden kaldırma komutu + Projects to remove from a solution - Projects to remove from a solution - + Bir projeden kaldırılacak çözümler + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hans.xlf index 7ab4b5db3..9853ac91b 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + .NET 从解决方案中删除项目命令 + Command to remove projects from a solution - Command to remove projects from a solution - + 从解决方案中删除项目的命令 + Projects to remove from a solution - Projects to remove from a solution - + 要从解决方案中删除的项目 + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hant.xlf index 031f15248..3ac847bad 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,18 +5,18 @@ .NET Remove Project from Solution Command - .NET Remove Project from Solution Command - + .NET 從解決方案移除專案命令 + Command to remove projects from a solution - Command to remove projects from a solution - + 命令,從解決方案移除專案命令 + Projects to remove from a solution - Projects to remove from a solution - + 要從解決方案移除的專案 + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf index dd558ba86..0c86508ab 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - obnovit - + Nástroj .NET pro obnovení závislostí + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - kořen - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - zdroj - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - soubor - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf index 92e10363b..f964897e9 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restore - + Funktion.zum Wiederherstellen der NET-Abhänigkeit + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - root - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - source - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - file - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf index 06cf221ad..9758e2f2f 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restore - + Restaurador de dependencia de .NET + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - raíz - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - origen - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - DirectorioDePaquetes - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - archivo - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf index ca954160c..425cbe6e1 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restaurer - + Programme de restauration de dépendances .NET + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - racine - + PROJET + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - source - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + RÉPERTOIRE_PACKAGES + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - fichier - + FICHIER + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf index 115abae30..4ba2eefc0 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restore - + Utilità di ripristino dipendenze .NET + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - radice - + PROGETTO + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - origine - + ORIGINE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + DIRECTORY_PACCHETTI + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - file - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf index 099555fce..0442260f3 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - 復元 - + .NET 依存関係リストアラー + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - ルート - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - ソース - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - ファイル - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf index 855e539ec..45b8dfaa3 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restore - + .NET 의존성 복원 도구 + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - root - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - source - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - file - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf index 1bfa0cb39..1004927cb 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - przywracanie - + Przywracanie zależności dla platformy .NET + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - główny - + PROJEKT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - źródło - + ŹRÓDŁO + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - katalogPakietów - + KATALOG_PAKIETÓW + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - plik - + PLIK + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf index 6c6191989..f54055347 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restauração - + Restaurador de dependência do .NET + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - raiz - + PROJETO + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - origem - + ORIGEM + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + DIRETÓRIO_PACOTES + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - arquivo - + ARQUIVO + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf index 0ef8f9f18..84b8f1da7 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restore - + Восстановитель зависимостей .NET + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - root - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - source - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - file - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf index 982f19ced..4e0e85374 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - restore - + .NET bağımlılık geri yükleyicisi + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - root - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - source - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - file - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf index 11c9541b1..f775560f5 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - 还原 - + .NET 依赖项恢复程序 + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - 文件 - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf index 5888ef293..5f4f4acf9 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,8 +5,8 @@ .NET dependency restorer - 還原 - + .NET 相依性還原器 + restore for msbuild @@ -15,8 +15,8 @@ PROJECT - root - + PROJECT + Optional path to a project file or MSBuild arguments. @@ -25,8 +25,8 @@ SOURCE - source - + SOURCE + Specifies a NuGet package source to use during the restore. @@ -35,8 +35,8 @@ PACKAGES_DIRECTORY - packagesDirectory - + PACKAGES_DIRECTORY + Directory to install packages in. @@ -50,8 +50,8 @@ FILE - file - + FILE + The NuGet configuration file to use. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf index 1ba131b39..eff158e53 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení - + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Umožňuje kompilovat určitou platformu. - + K sestavení a spuštění aplikace se použije určená platforma, která musí být zadaná v souboru projektu. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Argumenty předané spouštěné aplikaci. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf index dfe9ae8a7..5f10b7f20 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für den Buildvorgang - + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Bestimmtes Framework kompilieren - + Erstellen und Ausführen der App mit dem angegebenen Framework. Das Framework muss in der Projektdatei angegeben werden. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Argumente, die der ausgeführten Anwendung übergeben werden. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf index 8b15f8fc4..591822857 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración para la compilación - + Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Compilar una plataforma específica - + Compila y ejecuta la aplicación con la plataforma especificada. La plataforma se debe especificar en el archivo de proyecto. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Argumentos que se pasan a la aplicación en ejecución. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.fr.xlf index 9da32b8a1..7976204ff 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.fr.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration sous laquelle générer la build - + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Compiler un framework spécifique - + Générez et exécutez l'application à l'aide du framework spécifié. Le framework doit être spécifié dans le fichier projet. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Arguments passés à l'application exécutée. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf index 8eb09a6ae..dfad66cce 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione con cui eseguire la compilazione - + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Esegue la compilazione di un framework specifico - + Consente di compilare ed eseguire l'app con il framework specificato. Il framework di destinazione deve essere specificato nel file di progetto. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Argomenti passati all'applicazione in esecuzione. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf index d79e42640..46be5e63e 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 構築する構成 - + プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 特定のフレームワークをコンパイルする - + 指定したフレームワークを使用してアプリを構築して、実行します。フレームワークはプロジェクト ファイルで指定する必要があります。 + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + 実行中のアプリケーションに渡される引数。 + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf index 052477234..2cff4579e 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 빌드할 구성입니다. - + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 특정 프레임워크를 컴파일합니다. - + 지정된 프레임워크를 사용하여 앱을 빌드 및 실행합니다. 프로젝트 파일에서 프레임워크를 지정해야 합니다. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + 실행 중인 응용 프로그램에 전달되는 인수입니다. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pl.xlf index a455551f9..dd042760f 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pl.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja, przy użyciu której ma zostać przeprowadzona kompilacja - + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Skompiluj określoną platformę - + Skompiluj i uruchom aplikację przy użyciu określonej platformy. Platforma musi być określona w pliku projektu. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Argumenty przekazywane do uruchamianej aplikacji. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf index 8662e6e9b..df81e572a 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração sob a qual compilar - + Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Compilar uma estrutura específica - + Compila e executa um aplicativo usando a estrutura especificada. A estrutura deve ser especificada no arquivo de projeto. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Os argumentos passados para o aplicativo em execução. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf index 7bdf74581..fa940a12c 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, в которой выполняется сборка - + Конфигурация, используемая для сборки проекта. По умолчанию для большинства сборок используется "Отладка". + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Компиляция определенной платформы - + Сборка и выполнение приложения с использованием определенной платформы. Платформа должна быть указана в файле проекта. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Аргументы переданы в выполняемое приложение. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf index 6a11bb634..a4bd28264 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - Derlemenin gerçekleştirileceği yapılandırma - + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Belirli bir çerçeveyi derler - + Uygulamayı belirtilen çerçeveyi kullanarak derleyin ve çalıştırın. Çerçevenin proje dosyasında belirtilmesi gerekir. + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + Çalıştırılan uygulamaya geçirilen bağımsız değişkenler. + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf index bb6ae4ad6..ec15b96a2 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 在何处生成配置 - + 用于生成项目的配置。大多数项目的默认值为“Debug”。 + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 编译特定的框架 - + 使用指定的框架生成和运行应用。需要在项目文件中指定框架。 + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + 传递到运行中应用程序的参数。 + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf index 867638e09..5f6084851 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf @@ -15,8 +15,8 @@ Configuration to use for building the project. Default for most projects is "Debug". - 作為建置依據的組態 - + 建置專案用的組態。多數專案預設為 "Debug"。 + FRAMEWORK @@ -25,8 +25,8 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 編譯特定架構 - + 使用指定的架構建置及執行應用程式。架構必須在專案檔中指定。 + The path to the project file to run (defaults to the current directory if there is only one project). @@ -110,8 +110,8 @@ Arguments passed to the application that is being run. - Arguments passed to the application that is being run. - + 傳遞至正在執行之應用程式的引數。 + diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf index 1f610c05f..9a9cf5b5a 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Výraz - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Spustí testy, které odpovídají danému výrazu. + Spustí testy, které odpovídají danému výrazu. Příklady: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Spustí testy s prioritou nastavenou na 1: --filter "Priority = 1" + Spustí test se zadaným plným názvem: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Spustí testy, které obsahují zadaný název: --filter "FullyQualifiedName~Namespace.Class" + Další informace o podpoře filtrování: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Při spuštění testu použijte vlastní adaptéry z dané cesty. - Příklad: --testAdapterPath:<pathToCustomAdapters> - + Při spuštění testu použít vlastní adaptéry z dané cesty. + Příklad: --test-adapter-path <PATH_TO_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - konfigurace - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení, např. Debug nebo Release - + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf index a3affb13e..746d41d4c 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Ausdruck - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Führen Sie Tests aus, die dem angegebenen Ausdruck entsprechen. + Führen Sie Tests aus, die dem angegebenen Ausdruck entsprechen. Beispiele: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Führen Sie Tests aus, bei denen die Priorität auf 1 festgelegt ist: --filter "Priority = 1" + Führen Sie einen Test mit dem angegebenen vollständigen Namen aus: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Führen Sie Tests aus, die den angegebenen Namen enthalten: --filter "FullyQualifiedName~Namespace.Class" + Weitere Infos zur Unterstützung der Filterung finden Sie unter: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Verwenden Sie im Testlauf benutzerdefinierte Adapter aus dem angegebenen Pfad. - Beispiel: --testAdapterPath:<Pfad zu benutzerdefinierten Adaptern> - + Verwenden Sie im Testlauf benutzerdefinierte Adapter aus dem angegebenen Pfad. + Beispiel: --test-adapter-path <PFAD_ZUM_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuration - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für den Buildvorgang (Debug/Release) - + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf index 0afd09c9c..54f93a692 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - ArchivoDeConfiguración - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Expresión - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Ejecuta las pruebas que coinciden con una expresión dada. + Ejecuta las pruebas que coinciden con una expresión dada. Ejemplos: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Ejecuta las pruebas con una prioridad establecida en 1: --filter "Prioridad = 1" + Ejecuta una prueba con el nombre completo especificado: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Ejecuta las pruebas que contienen el nombre especificado: --filter "FullyQualifiedName~Namespace.Class" + Más información sobre la compatibilidad con el filtrado: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Indica que se usen adaptadores personalizados de la ruta de acceso dada en la serie de pruebas. - Ejemplo: --testAdapterPath:<rutaDeAdaptadoresPersonalizados> - + Indica que se usen adaptadores personalizados de la ruta de acceso dada en la serie de pruebas. + Ejemplo: --test-adapter-path <RUTA_ACCESO_ADAPTADOR> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuración - + CONFIGURACIÓN + Configuration to use for building the project. Default for most projects is "Debug". - Configuración para la compilación, es decir, Debug o Release - + Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + FRAMEWORK - FrameworkVersion - + PLATAFORMA + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - DirectorioDeSalida - + DIRECTORIO_DE_SALIDA + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - RutaAlArchivoDeRegistro - + RUTA_ACCESO_ARCHIVO + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf index b4d987996..03405cce6 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + FICHIER_PARAMÈTRES + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Expression - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Exécutez les tests qui correspondent à l'expression donnée. + Permet d'exécuter les tests qui correspondent à l'expression indiquée. Exemples : - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Exécuter les tests de priorité 1 : --filter "Priority = 1" + Exécuter un test avec le nom complet spécifié : --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Exécuter les tests qui contiennent le nom spécifié : --filter "FullyQualifiedName~Namespace.Class" + En savoir plus sur la prise en charge du filtrage : https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Utilisez des adaptateurs personnalisés à partir du chemin donné dans la série de tests. - Exemple : --testAdapterPath:<cheminAdaptateursPersonnalisés> - + Utilisez des adaptateurs personnalisés provenant du chemin indiqué dans la série de tests. + Exemple : --test-adapter-path <CHEMIN_ADAPTATEUR> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuration - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - Configuration sous laquelle générer la build (Debug/Release) - + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + RÉP_SORTIE + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + CHEMIN_FICHIER + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf index 0ecd1136b..6754ebb6e 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + FILE_IMPOSTAZIONI + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Espressione - + ESPRESSIONE + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Esegue i test corrispondenti all'espressione specificata. + Esegue i test corrispondenti all'espressione specificata. Esempi: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Consente di eseguire test con priorità impostata su 1: --filter "Priority = 1" + Consente di eseguire un test con il nome completo specificato: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Consente di eseguire test che contengono il nome specificato: --filter "FullyQualifiedName~Namespace.Class" + Altre informazioni sul supporto dei filtri: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Usa gli adattatori personalizzati del percorso specificato nell'esecuzione dei test. - Esempio: --testAdapterPath:<percorsoAdattatoriPersonalizzati> - + Usa gli adattatori personalizzati del percorso specificato nell'esecuzione dei test. + Esempio: --test-adapter-path <PERCORSO_ADATTATORE> + LoggerUri/FriendlyName @@ -72,24 +75,24 @@ Specify a logger for test results. Example: --logger:trx - Consente di specificare un logger per i risultati dei test. + Consente di specificare un logger per i risultati dei test. Esempio: --logger:trx CONFIGURATION - configurazione - + CONFIGURAZIONE + Configuration to use for building the project. Default for most projects is "Debug". - Configurazione con cui eseguire la compilazione, ad esempio Debug/Release - + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + DIR_OUTPUT + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PERCORSO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf index 61f0601a0..7fb2918d0 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - 指定された式に一致するテストを実行します。 - 例: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + 指定された式に一致するテストを実行します。 + 例: + 優先度を 1 に設定してテストを実行する: --filter "Priority = 1" + 指定したフル ネームでテストを実行する: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + 指定した名前を含むテストを実行する: --filter "FullyQualifiedName~Namespace.Class" + フィルタリング サポートの詳細情報: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - テストの実行では、指定されたパスのカスタム アダプターを使用します。 - 例: --testAdapterPath:<pathToCustomAdapters> - + テストの実行では、指定されたパスのカスタム アダプターを使用します。 + 例: --test-adapter-path <PATH_TO_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - 構成 - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - 構築する構成。例: Debug/Release - + プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf index be022f6b6..ab95979e0 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Expression - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - 지정된 식과 일치하는 테스트를 실행합니다. + 지정된 식과 일치하는 테스트를 실행합니다. 예: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + 우선 순위를 1로 설정하여 테스트 실행: --filter "Priority = 1" + 지정된 전체 이름으로 테스트 실행: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + 지정된 이름을 포함하는 테스트 실행: --filter "FullyQualifiedName~Namespace.Class" + 필터링 지원에 대한 추가 정보: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - 테스트 실행에서 지정된 경로에 있는 사용자 지정 어댑터를 사용합니다. - 예: --testAdapterPath:<pathToCustomAdapters> - + 테스트 실행에서 지정된 경로에 있는 사용자 지정 어댑터를 사용합니다. + 예: --test-adapter-path <PATH_TO_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuration - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - 빌드할 구성입니다(예: Debug/Release). - + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf index 4f75d7b26..d22db9f08 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - PlikUstawień - + PLIK_USTAWIEŃ + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Wyrażenie - + WYRAŻENIE + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Uruchom testy odpowiadające danemu wyrażeniu. + Uruchom testy odpowiadające danemu wyrażeniu. Przykłady: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(WPełniKwalifikowanaNazwa~Nightly | Name = MojaMetodaTestowa)" - + Uruchom testy z priorytetem ustawionym na wartość 1: --filter "Priority = 1" + Uruchom test o określonej pełnej nazwie: --filter "WPełniKwalifikowanaNazwa=PrzestrzeńNazw.NazwaKlasy.NazwaMetody" + Uruchom testy zawierające określoną nazwę: --filter "WPełniKwalifikowanaNazwa~PrzestrzeńNazw.Klasa" + Więcej informacji o obsłudze filtrowania: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Zastosuj niestandardowe adaptery z danej ścieżki podczas uruchomienia testu. - Przykład: --testAdapterPath:<ścieżkaDoNiestandardowychAdapterów> - + Zastosuj niestandardowe adaptery z danej ścieżki podczas uruchomienia testu. + Przykład: --test-adapter-path <ŚCIEŻKA_DO_ADAPTERA> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - konfiguracja - + KONFIGURACJA + Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja, przy użyciu której ma zostać przeprowadzona kompilacja, na przykład Debug/Release - + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + FRAMEWORK - WersjaPlatformy - + PLATFORMA + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - KatalogWyjściowy - + KATALOG_WYJŚCIOWY + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - ŚcieżkaDoPlikuDziennika - + ŚCIEŻKA_DO_PLIKU + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf index e62990039..12650b1d0 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + ARQUIVO_CONFIGURAÇÕES + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Expressão - + EXPRESSÃO + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Execute testes que correspondam à expressão especificada. + Executa testes que correspondem a determinada expressão. Exemplos: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Executar testes com a prioridade definida como 1: --filter "Priority = 1" + Executar um teste com o nome completo especificado: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Executar testes que contêm o nome especificado: --filter "FullyQualifiedName~Namespace.Class" + Mais informações sobre o suporte à filtragem: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Use adaptadores personalizados do caminho especificado na execução de teste. - Exemplo: --testAdapterPath:<pathToCustomAdapters> - + Usar adaptadores personalizados do caminho especificado na execução de teste. + Exemplo: --test-adapter-path <CAMINHO_PARA_ADAPTADOR> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuração - + CONFIGURAÇÃO + Configuration to use for building the project. Default for most projects is "Debug". - Configuração sob a qual compilar, isto é, Depuração/Liberação - + Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + FRAMEWORK - FrameworkVersion - + ESTRUTURA + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + DIRETÓRIO_DE_SAÍDA + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + CAMINHO_PARA_ARQUIVO + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf index 8c4053cb5..e2af7b103 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Expression - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Выполнение тестов, соответствующих данному выражению. + Выполнение тестов, соответствующих данному выражению. Примеры: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Запуск тестов с приоритетом 1: --filter "Priority = 1" + Запуск теста с указанным полным именем: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Запуск тестов, содержащих указанное имя: --filter "FullyQualifiedName~Namespace.Class" + Дополнительные сведения о поддержке фильтрации: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Использование настраиваемых адаптеров по заданному пути в тестовом запуске. - Пример: --testAdapterPath:<путь_к_настраиваемым_адаптерам> - + Использование настраиваемых адаптеров по заданному пути в тестовом запуске. + Пример: --test-adapter-path <PATH_TO_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuration - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, в которой выполняется сборка, например "Отладка"/"Выпуск" - + Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf index c5db24db4..6588883b1 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - Expression - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Belirtilen ifadeyle eşleşen testleri çalıştırır. + Belirtilen ifadeyle eşleşen testleri çalıştırır. Örnekler: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + Önceliği 1: --filter "Priority = 1" olarak ayarlanmış testleri çalıştırır + Belirtilen tam ada sahip bir test çalıştırır: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Belirtilen adı içeren testleri çalıştırır: --filter "FullyQualifiedName~Namespace.Class" + Filtreleme desteği hakkında daha fazla bilgi: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Test çalıştırmasında, belirtilen yoldaki özel bağdaştırıcıları kullanır. - Örnek: --testAdapterPath:<özelBağdaştırıcılarınYolu> - + Test çalıştırmasında, belirtilen yoldaki özel bağdaştırıcıları kullanır. + Örnek: --test-adapter-path <BAĞDAŞTIRICI_YOLU> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - configuration - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - Derlemenin gerçekleştirileceği yapılandırma. Örn. Hata Ayıklama/Yayınlama - + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf index ae037d9e8..76020ebf1 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - 表达式 - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - 运行与给定表达式匹配的测试。 + 运行与给定表达式匹配的测试。 示例: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + -运行优先级设置为 1 的测试: --filter "Priority = 1" + 运行指定全名的测试: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + 运行包含指定名称的测试: --filter "FullyQualifiedName~Namespace.Class" + 有关筛选支持的详细信息: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - 在测试运行中从给定路径使用自定义适配器。 - 示例: --testAdapterPath:<pathToCustomAdapters> - + 在测试运行中从给定路径使用自定义适配器。 + 示例: --test-adapter-path <PATH_TO_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - 配置 - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - 在何处生成配置,即调试/发布 - + 用于生成项目的配置。大多数项目的默认值为“Debug”。 + FRAMEWORK - FrameworkVersion - + FRAMEWORK + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf index de965abd4..007bc539b 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf @@ -25,8 +25,8 @@ SETTINGS_FILE - SettingsFile - + SETTINGS_FILE + Settings to use when running tests. @@ -40,8 +40,8 @@ EXPRESSION - 運算式 - + EXPRESSION + Run tests that match the given expression. @@ -51,18 +51,21 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - 執行符合指定運算式的測試。 - 範例: - --testCaseFilter:"Priority = 1" - --testCaseFilter: "(FullyQualifiedName~Nightly | Name = MyTestMethod)" - + 執行符合指定運算式的測試。 + 範例: + 執行測試,其中優先順序設為 1: --filter "Priority = 1" + 使用指定的全名執行測試: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + 執行內含指定名稱的測試: --filter "FullyQualifiedName~Namespace.Class" + 篩選資源的詳細資訊: https://aka.ms/vstest-filtering + + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - 從測試回合中的指定路徑使用自訂配接器。 - 範例: --testAdapterPath:<自訂配接器路徑> - + 從測試回合中的指定路徑使用自訂配接器。 + 範例: --test-adapter-path <PATH_TO_ADAPTER> + LoggerUri/FriendlyName @@ -78,18 +81,18 @@ CONFIGURATION - 組態 - + CONFIGURATION + Configuration to use for building the project. Default for most projects is "Debug". - 作為建置依據的組態,亦即 Debug/Release - + 建置專案用的組態。多數專案預設為 "Debug"。 + FRAMEWORK - FrameworkVersion - + 架構 + Looks for test binaries for a specific framework @@ -98,8 +101,8 @@ OUTPUT_DIR - OutputDir - + OUTPUT_DIR + Directory in which to find the binaries to be run @@ -108,8 +111,8 @@ PATH_TO_FILE - PathToLogFile - + PATH_TO_FILE + Enable verbose logs for test platform. diff --git a/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf b/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf index 4ee5379b1..55d958d6a 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - Odkaz na {0} neexistuje. Pokud ho přesto chcete přidat, použijte prosím možnost --force. Upozorňujeme, že tento krok může projekt negativně ovlivnit. - + Odkaz na {0} neexistuje. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Musíte zadat aspoň jeden odkaz, který chcete přidat. Další informace získáte spuštěním příkazu dotnet add --help. - + Musíte zadat aspoň jeden odkaz, který chcete přidat. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Musíte zadat aspoň jeden odkaz, který chcete přidat. Další informace získáte spuštěním příkazu dotnet add --help. - + Musíte zadat aspoň jeden balíček, který chcete přidat. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Musíte zadat aspoň jeden projekt, který chcete přidat. Další informace získáte spuštěním příkazu dotnet add --help. - + Musíte zadat aspoň jeden projekt, který chcete přidat. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Musíte zadat aspoň jeden odkaz, který chcete odstranit. Další informace najdete po spuštění příkazu dotnet delete --help. - + Musíte zadat aspoň jeden odkaz, který chcete odebrat. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Musíte zadat aspoň jeden odkaz, který chcete odstranit. Další informace najdete po spuštění příkazu dotnet delete --help. - + Musíte zadat aspoň jeden odkaz na balíček, který chcete odebrat. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Odkaz(y) na projekt + Required command was not provided. - Required command was not provided. - + Požadovaný příkaz nebyl zadán. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + V {0} se našlo několik souborů řešení. Vyberte prosím, jaký chcete použít. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + Řešení {0} už obsahuje projekt {1}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + Použitý projekt nebo řešení. Pokud není soubor zadaný, prohledá se aktuální adresář. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Projekt {0} není možné přidat, protože cílové platformy obou projektů nejsou kompatibilní. Zkontrolujte projekt, který se pokoušíte přidat, a ověřte jeho kompatibilitu s následujícími cíli: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + Projekt {0} není určený pro platformu {1}. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + Projekt {0} se nepodařilo vyhodnotit. Vyhodnocení vrátilo následující chybu: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.de.xlf b/src/dotnet/xlf/CommonLocalizableStrings.de.xlf index 7f4a05683..4e9c50249 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.de.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.de.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - Der Verweis "{0}" ist nicht vorhanden. Falls Sie ihn immer noch hinzufügen möchten, verwenden Sie die Option "--force". Dies kann sich negativ auf das Projekt auswirken. - + Der Verweis „{0}“ ist nicht vorhanden. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Geben Sie mindestens einen hinzuzufügenden Verweis an. Führen Sie "dotnet add --help" aus, um weitere Informationen zu erhalten. - + Geben Sie mindestens einen hinzuzufügenden Verweis an. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Geben Sie mindestens einen hinzuzufügenden Verweis an. Führen Sie "dotnet add --help" aus, um weitere Informationen zu erhalten. - + Geben Sie mindestens ein hinzuzufügendes Paket an. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Geben Sie mindestens ein hinzuzufügendes Projekt an. Führen Sie "dotnet add --help" aus, um weitere Informationen zu erhalten. - + Geben Sie mindestens ein hinzuzufügendes Projekt an. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Geben Sie mindestens einen zu löschenden Verweis an. Führen Sie "dotnet delete --help" aus, um weitere Informationen zu erhalten. - + Geben Sie mindestens einen zu löschenden Verweis an. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Geben Sie mindestens einen zu löschenden Verweis an. Führen Sie "dotnet delete --help" aus, um weitere Informationen zu erhalten. - + Geben Sie mindestens einen zu löschenden Paketverweis an. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Projektverweis(e) + Required command was not provided. - Required command was not provided. - + Der erforderliche Befehl wurde nicht bereitgestellt. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + In „{0}“ wurden mehrere Projektmappendateien gefunden. Geben Sie an, welche davon verwendet werden soll. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + Die Projektmappe „{0}“ enthält bereits das Projekt „{1}“. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + Projekt oder Projektmappe, woran der Vorgang ausgeführt werden soll. Wenn keine Datei angegeben wird, wird das aktuelle Verzeichnis durchsucht. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Projekt „{0}“ kann nicht hinzugefügt werden, weil die Zielframeworks der beiden Projekte nicht kompatibel sind. Bitte überprüfen Sie das Projekt, das Sie hinzuzufügen versuchen, und stellen Sie sicher, dass es mit folgenden Zielen kompatibel ist: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + „{1}“ ist kein Zielframework von Projekt „{0}“ . + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + Projekt „{0}“ konnte nicht ausgewertet werden. Bei der Auswertung trat folgender Fehler auf: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.es.xlf b/src/dotnet/xlf/CommonLocalizableStrings.es.xlf index 5dc6f875b..62934d865 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.es.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.es.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - La referencia {0} no existe. Si aún quiere agregarla, use la opción --force. Tenga en cuenta que esto puede tener efectos negativos en el proyecto. - + La referencia {0} no existe. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Debe especificar al menos una referencia para agregar. Ejecute dotnet add --help para obtener más información. - + Debe especificar al menos una referencia para agregarla. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Debe especificar al menos una referencia para agregar. Ejecute dotnet add --help para obtener más información. - + Debe especificar al menos un paquete para agregarlo. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Debe especificar al menos un proyecto para agregarlo. Ejecute dotnet add --help para obtener más información. - + Debe especificar al menos un proyecto para agregarlo. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Debe especificar al menos una referencia para eliminar. Ejecute dotnet delete --help para obtener más información. - + Debe especificar al menos una referencia para quitarla. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Debe especificar al menos una referencia para eliminar. Ejecute dotnet delete --help para obtener más información. - + Debe especificar al menos una referencia de paquete para quitarla. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Referencias de proyecto + Required command was not provided. - Required command was not provided. - + No se proporcionó el comando requerido. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + Se encontraron varios archivos de solución en {0}. Especifique el que debe usarse. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + La solución {0} ya contiene el proyecto {1}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + El proyecto o la solución donde realizar la operación. Si no se especifica un archivo, se buscará en el directorio actual. + FRAMEWORK - FRAMEWORK - + PLATAFORMA + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + El proyecto "{0}" no se puede agregar debido a que hay plataformas de destino no compatibles entre los dos proyectos. Revise el proyecto que intenta agregar y compruebe que sea compatible con las plataformas siguientes: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + El proyecto "{0}" no tiene como destino la plataforma "{1}". + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + No se pudo evaluar el proyecto "{0}". Error de evaluación con el error siguiente: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf b/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf index 3f004921e..340a03cd2 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - La référence {0} n'existe pas. Si vous souhaitez toujours l'ajouter, utilisez l'option --force. Notez que cela peut avoir des effets négatifs sur le projet. - + La référence {0} n'existe pas. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Vous devez spécifier au moins une référence à ajouter. Exécutez dotnet add --help pour plus d'informations. - + Vous devez spécifier au moins une référence à ajouter. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Vous devez spécifier au moins une référence à ajouter. Exécutez dotnet add --help pour plus d'informations. - + Vous devez spécifier au moins un package à ajouter. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Vous devez spécifier au moins un projet à ajouter. Exécutez dotnet add --help pour plus d'informations. - + Vous devez spécifier au moins un projet à ajouter. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Vous devez spécifier au moins une référence à supprimer. Exécutez dotnet delete --help pour plus d'informations. - + Vous devez spécifier au moins une référence à supprimer. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Vous devez spécifier au moins une référence à supprimer. Exécutez dotnet delete --help pour plus d'informations. - + Vous devez spécifier au moins une référence de package à supprimer. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Référence(s) de projet + Required command was not provided. - Required command was not provided. - + La commande nécessaire n'a pas été fournie. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + Plusieurs fichiers solution trouvés dans {0}. Spécifiez celui qui doit être utilisé. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + La solution {0} contient déjà le projet {1}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + Projet ou solution à utiliser. Si aucun fichier n'est spécifié, le répertoire actif fait l'objet d'une recherche. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Impossible d'ajouter le projet '{0}' en raison de l'incompatibilité des frameworks ciblés entre les deux projets. Passez en revue le projet que vous essayez d'ajouter, puis vérifiez sa compatibilité avec les cibles suivantes : + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + Le projet '{0}' ne cible pas le framework '{1}'. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + Impossible d'évaluer le projet '{0}'. Échec de l'évaluation en raison de l'erreur suivante : {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.it.xlf b/src/dotnet/xlf/CommonLocalizableStrings.it.xlf index 8783a76a5..ab317e117 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.it.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.it.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - Il riferimento {0} non esiste. Se si vuole aggiungerlo comunque, usare l'opzione --force. Si noti che questo può avere effetti dannosi sul progetto. - + Il riferimento {0} non esiste. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - È necessario specificare almeno un riferimento da aggiungere. Per altre informazioni, eseguire dotnet add --help. - + È necessario specificare almeno un riferimento da aggiungere. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - È necessario specificare almeno un riferimento da aggiungere. Per altre informazioni, eseguire dotnet add --help. - + È necessario specificare almeno un pacchetto da aggiungere. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - È necessario specificare almeno un progetto da aggiungere. Per altre informazioni, eseguire dotnet add --help. - + È necessario specificare almeno un progetto da aggiungere. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - È necessario specificare almeno un riferimento da eliminare. Per altre informazioni, eseguire dotnet delete --help. - + È necessario specificare almeno un riferimento da rimuovere. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - È necessario specificare almeno un riferimento da eliminare. Per altre informazioni, eseguire dotnet delete --help. - + È necessario specificare almeno un riferimento al pacchetto da rimuovere. + Package reference `{0}` deleted. @@ -490,7 +490,7 @@ There are no {0} references in project {1}. ;; {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - Non ci sono riferimenti a {0} nel progetto {1}. ;; {0} è il tipo dell'elemento richiesto (progetto, pacchetto o P2P) e {1} è l'oggetto su cui si interviene (file di progetto o di soluzione). + Non ci sono riferimenti a {0} nel progetto {1}. ;; {0} è il tipo dell'elemento richiesto (progetto, pacchetto o P2P) e {1} è l'oggetto su cui si interviene (file di progetto o di soluzione). @@ -555,12 +555,12 @@ Specified name {0} already exists. Please specify a different name. - Il nome specificato {0} esiste già. Specificare un nome diverso. + Il nome specificato {0} esiste già. Specificarne uno diverso. Specified alias {0} already exists. Please specify a different alias. - L'alias specificato {0} esiste già. Specificare un alias diverso. + L'alias specificato {0} esiste già. Specificarne uno diverso. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Riferimento/i al progetto + Required command was not provided. - Required command was not provided. - + Il comando obbligatorio non è stato specificato. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + Sono stati trovati più file di soluzione in {0}. Specificare quello da usare. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + La soluzione {0} contiene già il progetto {\1\}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + Progetto o soluzione su cui eseguire l'operazione. Se non si specifica un file, la ricerca verrà eseguita nella directory corrente. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Non è possibile aggiungere il progetto `{0}` a causa di framework di destinazione incompatibili tra i due progetti. Esaminare il progetto che si sta provando ad aggiungere e verificare che sia compatibile con le destinazioni seguenti: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + Il progetto `{0}` non è destinato al framework `{1}`. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + Non è stato possibile valutare il progetto `{0}`. La valutazione non è riuscita. Errore: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf index 72b37939b..b81ed92bb 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - 参照 {0} は存在しません。それでも追加したい場合は、--force オプションを使用してください。これにより、プロジェクトに悪影響がある可能性がありますので注意してください。 - + 参照 {0} は存在しません。 + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - 追加する参照を少なくとも 1 つ指定する必要があります。詳細については、dotnet add --help を実行してください。 - + 追加する参照を少なくとも 1 つ指定する必要があります。 + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - 追加する参照を少なくとも 1 つ指定する必要があります。詳細については、dotnet add --help を実行してください。 - + 追加するパッケージを少なくとも 1 つ指定する必要があります。 + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - 追加するプロジェクトを少なくとも 1 つ指定する必要があります。詳細については、dotnet add --help を実行してください。 - + 追加するプロジェクトを少なくとも 1 つ指定する必要があります。 + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - 削除する参照を少なくとも 1 つ指定する必要があります。詳細については、dotnet delete --help を実行してください。 - + 削除する参照を少なくとも 1 つ指定する必要があります。 + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - 削除する参照を少なくとも 1 つ指定する必要があります。詳細については、dotnet delete --help を実行してください。 - + 削除するパッケージ参照を少なくとも 1 つ指定する必要があります。 + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + プロジェクト参照 + Required command was not provided. - Required command was not provided. - + 必要なコマンドが指定されませんでした。 + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + {0} に複数のソリューションが見つかりました。使用するプロジェクトを指定してください。 + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + ソリューション {0} には既にプロジェクト {1} が含まれています。 + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + 操作用のプロジェクトまたはソリューション。ファイルを指定しない場合、現在のディレクトリが検索されます。 + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + 2 つのプロジェクト間のターゲット フレームワークに互換性がないため、プロジェクト `{0}` を追加できません。追加しようとしているプロジェクトを確認し、次のターゲットと互換性があることを確認してください: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + プロジェクト `{0}` はフレームワーク `{1}` をターゲットとしていません。 + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + プロジェクト `{0}` を評価できませんでした。評価は次のエラーで失敗しました: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf index be1cd9eed..0265c20f3 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - {0} 참조가 없습니다. 계속 추가하려면 --force 옵션을 ;사용하세요. 이 경우 프로젝트에 부정적인 영향을 줄 수 있습니다. - + {0} 참조가 없습니다. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - 추가할 참조를 하나 이상 지정해야 합니다. 자세한 정보를 보려면 dotnet add --help를 실행하세요. - + 추가할 참조를 하나 이상 지정해야 합니다. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - 추가할 참조를 하나 이상 지정해야 합니다. 자세한 정보를 보려면 dotnet add --help를 실행하세요. - + 추가할 패키지를 하나 이상 지정해야 합니다. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - 추가할 프로젝트를 하나 이상 지정해야 합니다. 자세한 정보를 보려면 dotnet add --help를 실행하세요. - + 추가할 프로젝트를 하나 이상 지정해야 합니다. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - 삭제할 참조를 하나 이상 지정해야 합니다. 자세한 정보를 보려면 dotnet delete --help를 실행하세요. - + 제거할 참조를 하나 이상 지정해야 합니다. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - 삭제할 참조를 하나 이상 지정해야 합니다. 자세한 정보를 보려면 dotnet delete --help를 실행하세요. - + 제거할 패키지 참조를 하나 이상 지정해야 합니다. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + 프로젝트 참조 + Required command was not provided. - Required command was not provided. - + 필수 명령을 제공하지 않았습니다. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + {0}에서 솔루션 파일이 두 개 이상 있습니다. 사용할 파일을 지정하세요. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + {0} 솔루션에 {1} 프로젝트가 이미 있습니다. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + 작업할 프로젝트 또는 솔루션입니다. 파일을 지정하지 않으면 현재 디렉터리가 검색됩니다. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + 두 프로젝트 간에 호환되지 않는 대상 프레임워크 때문에 '{0}' 프로젝트를 추가할 수 없습니다. 추가하려는 프로젝트를 검토하고 다음 대상과 호환되는지 확인하세요. + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + '{0}' 프로젝트의 대상 프레임워크가 '{1}'이(가) 아닙니다. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + '{0}' 프로젝트를 평가할 수 없습니다. 다음 오류와 함께 평가가 실패했습니다. {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf b/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf index dc7e90a83..a6f701d9f 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - Odwołanie {0} nie istnieje. Jeśli mimo to chcesz je dodać, użyj opcji --force. Pamiętaj, że może to negatywnie wpłynąć na projekt. - + Odwołanie {0} nie istnieje. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Musisz określić co najmniej jedno odwołanie do dodania. Uruchom polecenie dotnet add --help, aby uzyskać więcej informacji. - + Musisz określić co najmniej jedno odwołanie do dodania. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Musisz określić co najmniej jedno odwołanie do dodania. Uruchom polecenie dotnet add --help, aby uzyskać więcej informacji. - + Musisz określić co najmniej jeden pakiet do dodania. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Musisz określić co najmniej jeden projekt do dodania. Uruchom polecenie dotnet add --help, aby uzyskać więcej informacji. - + Musisz określić co najmniej jeden projekt do dodania. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Musisz określić co najmniej jedno odwołanie do usunięcia. Uruchom polecenie dotnet delete --help, aby uzyskać więcej informacji. - + Musisz określić co najmniej jedno odwołanie do usunięcia. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Musisz określić co najmniej jedno odwołanie do usunięcia. Uruchom polecenie dotnet delete --help, aby uzyskać więcej informacji. - + Musisz określić co najmniej jedno odwołanie do pakietu, które ma zostać usunięte. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Odwołania do projektów + Required command was not provided. - Required command was not provided. - + Nie podano wymaganego polecenia. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + Znaleziono więcej niż jeden plik rozwiązania w lokalizacji {0}. Określ, który ma zostać użyty. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + Rozwiązanie {0} zawiera już projekt {1}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + Projekt lub rozwiązanie, na którym ma zostać wykonana operacja. Jeśli nie określono pliku, zostanie przeszukany bieżący katalog. + FRAMEWORK - FRAMEWORK - + PLATFORMA + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Nie można dodać projektu „{0}” z powodu niezgodnych platform docelowych dwóch projektów. Sprawdź projekt, który próbujesz dodać, i zweryfikuj, czy jest zgodny z następującymi platformami docelowymi: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + „{1}” nie jest platformą docelową projektu „{0}”. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + Nie można ocenić projektu „{0}”. Ocena nie powiodła się z powodu następującego błędu: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf b/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf index ae316f745..184916d09 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - A referência {0} não existe. Se você ainda desejar adicioná-lo, use a opção --force. Observe que isso pode ter efeitos adversos no projeto. - + A referência {0} não existe. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - É necessário especificar pelo menos uma referência para ser adicionada. Execute dotnet add --help para obter mais informações. - + É necessário especificar pelo menos uma referência a ser adicionada. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - É necessário especificar pelo menos uma referência para ser adicionada. Execute dotnet add --help para obter mais informações. - + É necessário especificar pelo menos um pacote a ser adicionado. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - É necessário especificar pelo menos um projeto para ser adicionado. Execute dotnet add --help para obter mais informações. - + É necessário especificar pelo menos um projeto a ser adicionado. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - É necessário especificar pelo menos uma referência para ser excluída. Execute dotnet delete --help para obter mais informações. - + É necessário especificar pelo menos uma referência a ser removida. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - É necessário especificar pelo menos uma referência para ser excluída. Execute dotnet delete --help para obter mais informações. - + É necessário especificar pelo menos uma referência do pacote a ser removida. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Referências de projeto + Required command was not provided. - Required command was not provided. - + O comando necessário não foi fornecido. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + Foi encontrado mais de um arquivo de solução em {0}. Especifique qual deles deve ser usado. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + A solução {0} já contém o projeto {1}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + O projeto ou a solução no qual ocorre a operação. Se um arquivo não for especificado, o diretório atual será pesquisado. + FRAMEWORK - FRAMEWORK - + ESTRUTURA + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + O projeto '{0}' não pode ser adicionado devido a estruturas de destino incompatíveis entre os dois projetos. Examine o projeto que você está tentando adicionar e verifique se ele é compatível com os seguintes destinos: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + O projeto '{0}' não tem como destino a estrutura '{1}'. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + O projeto '{0}' não pôde ser avaliado. A avaliação falhou com o seguinte erro: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf index 96fc9508a..4ab9871e1 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - Ссылка {0} не существует. Если требуется добавить ее, используйте параметр --force. Учтите, что это может отрицательно повлиять на проекты. - + Ссылка {0} не существует. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Необходимо указать по крайней мере одну добавляемую ссылку. Для получения дополнительных сведений выполните команду dotnet add --help. - + Необходимо указать по крайней мере одну добавляемую ссылку. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Необходимо указать по крайней мере одну добавляемую ссылку. Для получения дополнительных сведений выполните команду dotnet add --help. - + Необходимо указать по крайней мере один добавляемый пакет. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Необходимо указать по крайней мере один добавляемый проект. Для получения дополнительных сведений выполните команду dotnet add --help. - + Необходимо указать по крайней мере один добавляемый проект. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Необходимо указать по крайней мере одну удаляемую ссылку. Для получения дополнительных сведений выполните команду dotnet delete --help. - + Необходимо указать по крайней мере одну удаляемую ссылку. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Необходимо указать по крайней мере одну удаляемую ссылку. Для получения дополнительных сведений выполните команду dotnet delete --help. - + Необходимо указать по крайней мере одну удаляемую ссылку на пакет. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Ссылки проекта + Required command was not provided. - Required command was not provided. - + Обязательная команда не указана. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + Найдено несколько файлов решений в {0}. Выберите один. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + Решение {0} уже содержит проект {1}. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + Проект или решение для обработки. Если файл не указан, выполняется поиск в текущем каталоге. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Не удается добавить проект "{0}" из-за несовместимости целевых платформ между двумя этими проектами. Просмотрите добавляемый проект и убедитесь, что он совместим со следующими целевыми платформами: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + Проект "{0}" не нацелен на платформу "{1}". + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + Не удалось оценить проект "{0}". Произошел сбой оценки со следующей ошибкой: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf b/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf index a17d1e893..68c4dc0fa 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - {0} başvurusu yok. Yine de eklemek istiyorsanız lütfen --force seçeneğini kullanın. Bunun yapılması projeyi olumsuz yönde etkileyebilir. - + {0} başvurusu yok. + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - Eklemek için en az bir başvuru belirtmeniz gerekir. Daha fazla bilgi için lütfen dotnet add --help komutunu çalıştırın. - + Eklemek için en az bir başvuru belirtmeniz gerekir. + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - Eklemek için en az bir başvuru belirtmeniz gerekir. Daha fazla bilgi için lütfen dotnet add --help komutunu çalıştırın. - + Eklemek için en az bir paket belirtmeniz gerekir. + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - Eklemek için en az bir proje belirtmeniz gerekir. Daha fazla bilgi için lütfen dotnet add --help komutunu çalıştırın. - + Eklemek için en az bir proje belirtmeniz gerekir. + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - Silmek için en az bir başvuru belirtmeniz gerekir. Daha fazla bilgi için lütfen dotnet delete --help komutunu çalıştırın. - + Kaldırmak için en az bir başvuru belirtmeniz gerekir. + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - Silmek için en az bir başvuru belirtmeniz gerekir. Daha fazla bilgi için lütfen dotnet delete --help komutunu çalıştırın. - + Kaldırmak için en az bir paket başvurusu belirtmeniz gerekir. + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + Proje başvuruları + Required command was not provided. - Required command was not provided. - + Gerekli komut sağlanmadı. + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + {0} içinde birden fazla çözüm dosyası bulundu. Lütfen hangisinin kullanılacağını belirtin. + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + {0} çözümü zaten {1} projesini içeriyor. + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + İşlem yapılacak proje veya çözüm. Bir dosya belirtilmezse, geçerli dizin aranır. + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + `{0}` projesi, iki projede hedeflenen çerçevelerin birbiriyle uyumsuz olması nedeniyle eklenemiyor. Lütfen eklemeye çalıştığınız projeyi inceleyin ve aşağıdaki hedeflerle uyumlu olduğunu doğrulayın: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + `{0}` projesi `{1}` çerçevesini hedeflemiyor. + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + `{0}` projesi değerlendirilemedi. Değerlendirme, aşağıdaki hatayla başarısız oldu: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf index ec1aaac23..e4b91db1e 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - 引用 {0} 不存在。如果仍想添加它,请使用 --force 选项。请注意,这可能会对项目产生负面影响。 - + 引用 {0} 不存在。 + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - 必须至少指定一个要添加的引用。请运行 dotnet add --help,获取更多信息。 - + 必须至少指定一个要添加的引用。 + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - 必须至少指定一个要添加的引用。请运行 dotnet add --help,获取更多信息。 - + 必须至少指定一个要添加的包。 + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - 必须至少指定一个要添加的项目。请运行 dotnet add --help,获取更多信息。 - + 必须至少指定一个要添加的项目。 + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - 必须至少指定一个要删除的引用。请运行 dotnet delete --help,获取更多信息。 - + 必须至少指定一个要删除的引用。 + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - 必须至少指定一个要删除的引用。请运行 dotnet delete --help,获取更多信息。 - + 必须至少指定一个要删除的包引用。 + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + 项目引用 + Required command was not provided. - Required command was not provided. - + 未提供必需的命令。 + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + 在 {0} 中找到多个解决方案文件。请指定使用哪一个。 + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + 解决方案 {0} 已包含项目 {1}。 + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + 要操作的项目或解决方案。如果未指定文件,则搜索当前目录。 + FRAMEWORK - FRAMEWORK - + FRAMEWORK + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + 由于两个项目之间的目标框架不兼容,无法添加项目“{0}”。请检查要添加的项目,并验证是否与以下目标兼容: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + 项目“{0}”不以框架“{1}”为目标。 + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + 无法评估项目“{0}”。评估失败,出现以下错误: {1} - + diff --git a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf index ec5c22a3d..81e977f62 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf @@ -100,8 +100,8 @@ Reference {0} does not exist. - 參考 {0} 不存在。如果您仍要加以新增,請使用 --force 選項。請注意,這可能會對專案產生不利影響。 - + 參考 {0} 不存在。 + Reference `{0}` added to the project. @@ -370,8 +370,8 @@ You must specify at least one reference to add. - 您必須至少指定一個要新增的參考。如需詳細資訊,請執行 dotnet add --help。 - + 您必須指定至少一個要新增的參考。 + Project {0} already has a reference `{1}`. @@ -390,8 +390,8 @@ You must specify at least one package to add. - 您必須至少指定一個要新增的參考。如需詳細資訊,請執行 dotnet add --help。 - + 您必須指定至少一個要新增的套件。 + Package reference `{0}` added to the project. @@ -420,8 +420,8 @@ You must specify at least one project to add. - 您必須至少指定一個要新增的專案。如需詳細資訊,請執行 dotnet add --help。 - + 您必須指定至少一個要新增的專案。 + Project `{0}` added to the solution. @@ -440,8 +440,8 @@ You must specify at least one reference to remove. - 您必須至少指定一個要刪除的參考。如需詳細資訊,請執行 dotnet delete --help。 - + 您必須指定至少一個要刪除的參考。 + Reference `{0}` deleted. @@ -460,8 +460,8 @@ You must specify at least one package reference to remove. - 您必須至少指定一個要刪除的參考。如需詳細資訊,請執行 dotnet delete --help。 - + 您必須指定至少一個要移除的套件參考。 + Package reference `{0}` deleted. @@ -570,50 +570,50 @@ Project reference(s) - Project reference(s) - + 專案參考 + Required command was not provided. - Required command was not provided. - + 未提供所需的命令。 + Found more than one solution file in {0}. Please specify which one to use. - Found more than one solution file in {0}. Please specify which one to use. - + 在 {0} 中找到多個方案檔。請指定要使用的專案。 + Solution {0} already contains project {1}. - Solution {0} already contains project {1}. - + 解決方案 {0} 已經包含專案 {1}。 + The project or solution to operation on. If a file is not specified, the current directory is searched. - The project or solution to operation on. If a file is not specified, the current directory is searched. - + 要運作的專案或解決方案。若未指定檔案,即會搜尋目前目錄。 + FRAMEWORK - FRAMEWORK - + 架構 + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + 因為兩個專案間的目標 Framework 不相容,所以無法新增專案 `{0}`。請檢閱您嘗試新增的專案,並驗證其與下列目標相容: + Project `{0}` does not target framework `{1}`. - Project `{0}` does not target framework `{1}`. - + 專案 `{0}` 並未將架構 `{1}` 作為目標。 + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Project `{0}` could not be evaluated. Evaluation failed with following error: + 無法評估專案 `{0}`。評估失敗,錯誤如下: {1} - + diff --git a/src/dotnet/xlf/LocalizableStrings.it.xlf b/src/dotnet/xlf/LocalizableStrings.it.xlf index 25ba8a2cf..dd3c23cae 100644 --- a/src/dotnet/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/xlf/LocalizableStrings.it.xlf @@ -620,12 +620,12 @@ Specified name {0} already exists. Please specify a different name. - Il nome specificato {0} esiste già. Specificare un nome diverso. + Il nome specificato {0} esiste già. Specificarne uno diverso. Specified alias {0} already exists. Please specify a different alias. - L'alias specificato {0} esiste già. Specificare un alias diverso. + L'alias specificato {0} esiste già. Specificarne uno diverso. From b72d625168afd45d5ac958d9f5ebe5c6b0e684b6 Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Tue, 27 Dec 2016 11:28:24 -1000 Subject: [PATCH 10/94] Include ASP packages in offline cache (#5124) * Archive asp.net package references * Archive asp.net package references * Change the hash input so it's the same on all platforms * Address PR comments --- build/Microsoft.DotNet.Cli.Prepare.targets | 5 +- build/Microsoft.DotNet.Cli.tasks | 1 + .../Microsoft.DotNet.Cli.LzmaArchive.targets | 5 +- build_projects/dotnet-cli-build/DotNetNew.cs | 14 +++- .../GenerateNuGetPackagesArchiveVersion.cs | 75 +++++++++++++++++++ .../dotnet-cli-build/dotnet-cli-build.csproj | 3 + .../NuGetCachePrimer.cs | 5 +- src/dotnet-archive/dotnet-archive.csproj | 2 +- .../GivenANuGetCachePrimer.cs | 2 +- .../Assertions/DirectoryInfoAssertions.cs | 10 +++ ...atTheUserIsRunningDotNetForTheFirstTime.cs | 25 ++++++- tools/Archiver/Archiver.csproj | 2 +- 12 files changed, 138 insertions(+), 11 deletions(-) create mode 100644 build_projects/dotnet-cli-build/GenerateNuGetPackagesArchiveVersion.cs diff --git a/build/Microsoft.DotNet.Cli.Prepare.targets b/build/Microsoft.DotNet.Cli.Prepare.targets index 0dae5ea99..c8b6886f0 100644 --- a/build/Microsoft.DotNet.Cli.Prepare.targets +++ b/build/Microsoft.DotNet.Cli.Prepare.targets @@ -69,6 +69,10 @@ + + + + $(BaseOutputDirectory)/$(VersionBadgeMoniker)_$(Configuration)_version_badge.svg $(NugetVersion) @@ -129,7 +133,6 @@ https://dotnetcli.azureedge.net/dotnet/$(CoreSetupChannel) $(CoreSetupBlobRootUrl)/Binaries/$(SharedFrameworkVersion) $(CoreSetupBlobRootUrl)/Installers - $(IntermediateDirectory)/coreSetupDownload/$(SharedFrameworkVersion) $(CoreSetupDownloadDirectory)/combinedSharedHostAndFrameworkArchive diff --git a/build/Microsoft.DotNet.Cli.tasks b/build/Microsoft.DotNet.Cli.tasks index 8463bc1a0..49553a226 100644 --- a/build/Microsoft.DotNet.Cli.tasks +++ b/build/Microsoft.DotNet.Cli.tasks @@ -19,6 +19,7 @@ + diff --git a/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets b/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets index fe8ee5889..c9626b094 100644 --- a/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets +++ b/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets @@ -21,7 +21,7 @@ - $(CoreSetupChannel)/Binaries/$(SharedFrameworkVersion)/$([System.String]::Copy('%(Filename)%(Extension)').Replace('\' ,'/')) + $(CoreSetupChannel)/Binaries/$(NuGetPackagesArchiveVersion)/$([System.String]::Copy('%(Filename)%(Extension)').Replace('\' ,'/')) @@ -61,6 +61,7 @@ - nuGetPackagesArchive.$(SharedFrameworkVersion).lzma + nuGetPackagesArchive.$(NuGetPackagesArchiveVersion).lzma $(IntermediateDirectory)/NuGetPackagesArchiveProject $(IntermediateDirectory)/NuGetPackagesArchiveFolder $(ToolsOutputDirectory)/Archiver.dll diff --git a/build_projects/dotnet-cli-build/DotNetNew.cs b/build_projects/dotnet-cli-build/DotNetNew.cs index 1d87963f3..ed09ce8ee 100644 --- a/build_projects/dotnet-cli-build/DotNetNew.cs +++ b/build_projects/dotnet-cli-build/DotNetNew.cs @@ -12,7 +12,19 @@ namespace Microsoft.DotNet.Cli.Build protected override string Args { - get { return $""; } + get { return $"{GetTemplateType()}"; } + } + + public string TemplateType { get; set; } + + private string GetTemplateType() + { + if (!string.IsNullOrEmpty(TemplateType)) + { + return $"--type {TemplateType}"; + } + + return null; } } } diff --git a/build_projects/dotnet-cli-build/GenerateNuGetPackagesArchiveVersion.cs b/build_projects/dotnet-cli-build/GenerateNuGetPackagesArchiveVersion.cs new file mode 100644 index 000000000..e05d0a407 --- /dev/null +++ b/build_projects/dotnet-cli-build/GenerateNuGetPackagesArchiveVersion.cs @@ -0,0 +1,75 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Build.Construction; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System; +using System.IO; +using System.Linq; +using System.Security.Cryptography; +using System.Text; + +namespace Microsoft.DotNet.Cli.Build +{ + public class GenerateNuGetPackagesArchiveVersion : Task + { + public GenerateNuGetPackagesArchiveVersion() + { + } + + [Required] + public string RepoRoot { get; set; } + + [Output] + public String Version { get; set; } + + public override bool Execute() + { + var webTemplatePath = Path.Combine( + RepoRoot, + "src", + "dotnet", + "commands", + "dotnet-new", + "CSharp_Web", + "$projectName$.csproj"); + + var rootElement = ProjectRootElement.Open(webTemplatePath); + var packageRefs = rootElement.Items.Where(i => i.ItemType == "PackageReference").ToList(); + + var dataToHash = string.Empty; + foreach (var packageRef in packageRefs) + { + dataToHash += $"{packageRef.Include},"; + if (packageRef.HasMetadata) + { + foreach (var metadata in packageRef.Metadata) + { + dataToHash += $"{metadata.Name}={metadata.Value};"; + } + } + } + + Log.LogMessage($"NuGet Packages Archive Data To Hash: '{dataToHash}'"); + + var sha256 = SHA256.Create(); + var hashBytes = sha256.ComputeHash(Encoding.Unicode.GetBytes(dataToHash)); + Version = GetHashString(hashBytes); + + Log.LogMessage($"NuGet Packages Archive Version: '{Version}'"); + + return true; + } + + private string GetHashString(byte[] hashBytes) + { + StringBuilder builder = new StringBuilder(hashBytes.Length * 2); + foreach (var b in hashBytes) + { + builder.AppendFormat("{0:x2}", b); + } + return builder.ToString(); + } + } +} diff --git a/build_projects/dotnet-cli-build/dotnet-cli-build.csproj b/build_projects/dotnet-cli-build/dotnet-cli-build.csproj index c8babacb2..b732f7539 100644 --- a/build_projects/dotnet-cli-build/dotnet-cli-build.csproj +++ b/build_projects/dotnet-cli-build/dotnet-cli-build.csproj @@ -16,6 +16,9 @@ 1.0.4 + + $(CLI_MSBuild_Version) + 4.0.1 diff --git a/src/Microsoft.DotNet.Configurer/NuGetCachePrimer.cs b/src/Microsoft.DotNet.Configurer/NuGetCachePrimer.cs index 1ce5c6ed5..f7c9ad71c 100644 --- a/src/Microsoft.DotNet.Configurer/NuGetCachePrimer.cs +++ b/src/Microsoft.DotNet.Configurer/NuGetCachePrimer.cs @@ -90,7 +90,10 @@ namespace Microsoft.DotNet.Configurer private bool CreateTemporaryProject(string workingDirectory) { - return RunCommand("new", Enumerable.Empty(), workingDirectory); + return RunCommand( + "new", + new[] { "-t", "Web" }, + workingDirectory); } private bool RestoreTemporaryProject(string extractedPackagesArchiveDirectory, string workingDirectory) diff --git a/src/dotnet-archive/dotnet-archive.csproj b/src/dotnet-archive/dotnet-archive.csproj index be1836454..101c64e89 100644 --- a/src/dotnet-archive/dotnet-archive.csproj +++ b/src/dotnet-archive/dotnet-archive.csproj @@ -7,7 +7,7 @@ - + diff --git a/test/Microsoft.DotNet.Configurer.UnitTests/GivenANuGetCachePrimer.cs b/test/Microsoft.DotNet.Configurer.UnitTests/GivenANuGetCachePrimer.cs index 4e0b81477..eab2f990b 100644 --- a/test/Microsoft.DotNet.Configurer.UnitTests/GivenANuGetCachePrimer.cs +++ b/test/Microsoft.DotNet.Configurer.UnitTests/GivenANuGetCachePrimer.cs @@ -62,7 +62,7 @@ namespace Microsoft.DotNet.Configurer.UnitTests _dotnetNewCommandMock = new Mock(); SetupCommandMock(_dotnetNewCommandMock); commandFactoryMock - .Setup(c => c.Create("new", Enumerable.Empty(), null, Constants.DefaultConfiguration)) + .Setup(c => c.Create("new", new[] { "-t", "Web" }, null, Constants.DefaultConfiguration)) .Returns(_dotnetNewCommandMock.Object); _dotnetRestoreCommandMock = new Mock(); diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs index fa068a90e..652647d6b 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs @@ -127,6 +127,16 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(new DirectoryInfoAssertions(dir)); } + public AndConstraint HaveDirectories(IEnumerable expectedDirs) + { + foreach (var expectedDir in expectedDirs) + { + HaveDirectory(expectedDir); + } + + return new AndConstraint(this); + } + public AndConstraint OnlyHaveFiles(IEnumerable expectedFiles) { var actualFiles = _dirInfo.EnumerateFiles("*", SearchOption.TopDirectoryOnly).Select(f => f.Name); diff --git a/test/dotnet.Tests/GivenThatTheUserIsRunningDotNetForTheFirstTime.cs b/test/dotnet.Tests/GivenThatTheUserIsRunningDotNetForTheFirstTime.cs index acadf3147..13cf01695 100644 --- a/test/dotnet.Tests/GivenThatTheUserIsRunningDotNetForTheFirstTime.cs +++ b/test/dotnet.Tests/GivenThatTheUserIsRunningDotNetForTheFirstTime.cs @@ -78,7 +78,7 @@ A command is running to initially populate your local package cache, to improve } [Fact] - public void ItRestoresTheNuGetPackagesToTheNuGetCacheFolder() + public void ItCreatesASentinelFileUnderTheNuGetCacheFolder() { _nugetCacheFolder .Should() @@ -86,11 +86,30 @@ A command is running to initially populate your local package cache, to improve } [Fact] - public void ItCreatesASentinelFileUnderTheNuGetCacheFolder() + public void ItRestoresTheNuGetPackagesToTheNuGetCacheFolder() { + List expectedDirectories = new List() + { + "microsoft.netcore.app", + "microsoft.aspnetcore.diagnostics", + "microsoft.aspnetcore.mvc", + "microsoft.aspnetcore.razor.tools", + "microsoft.aspnetcore.routing", + "microsoft.aspnetcore.server.iisintegration", + "microsoft.aspnetcore.server.kestrel", + "microsoft.aspnetcore.staticfiles", + "microsoft.extensions.configuration.environmentvariables", + "microsoft.extensions.configuration.json", + "microsoft.extensions.logging", + "microsoft.extensions.logging.console", + "microsoft.extensions.logging.debug", + "microsoft.extensions.options.configurationextensions", + "microsoft.visualstudio.web.browserlink.loader", + }; + _nugetCacheFolder .Should() - .HaveDirectory("microsoft.netcore.app"); + .HaveDirectories(expectedDirectories); } private string GetDotnetVersion() diff --git a/tools/Archiver/Archiver.csproj b/tools/Archiver/Archiver.csproj index 6d3db3021..9a0987367 100644 --- a/tools/Archiver/Archiver.csproj +++ b/tools/Archiver/Archiver.csproj @@ -8,7 +8,7 @@ - + From 5095981ec32de180b47eb79962fdfc2a8ef09248 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Tue, 27 Dec 2016 13:18:54 -0800 Subject: [PATCH 11/94] fix line endings related errors in dotnet-add-p2p tests --- .../Transforms/ItemTransformApplicator.cs | 8 +++--- .../Assertions/StringAssertionsExtensions.cs | 28 +++++++++++++++++++ .../dotnet-add-p2p.Tests/GivenDotnetAddP2P.cs | 16 +++++------ 3 files changed, 40 insertions(+), 12 deletions(-) create mode 100644 test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Transforms/ItemTransformApplicator.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Transforms/ItemTransformApplicator.cs index 7371b7a1d..97ad35d69 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Transforms/ItemTransformApplicator.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Transforms/ItemTransformApplicator.cs @@ -91,7 +91,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.ItemTransformApplicatorAddItemHeader, nameof(ItemTransformApplicator), outputItem.ItemType, outputItem.Condition, outputItem.Include, outputItem.Exclude, outputItem.Update)); itemGroup.AppendChild(outputItem); - outputItem.AddMetadata(item.Metadata); + outputItem.AddMetadata(item.Metadata, MigrationTrace.Instance); } private ProjectItemElement MergeWithExistingItemsWithACondition(ProjectItemElement item, ProjectItemGroupElement destinationItemGroup) @@ -110,7 +110,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms foreach (var existingItem in existingItemsWithACondition) { // If this item is encompassing items in a condition, remove the encompassed includes from the existing item - var encompassedIncludes = item.GetEncompassedIncludes(existingItem); + var encompassedIncludes = item.GetEncompassedIncludes(existingItem, MigrationTrace.Instance); if (encompassedIncludes.Any()) { MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.ItemTransformApplicatorEncompassedIncludes, nameof(ItemTransformApplicator), string.Join(", ", encompassedIncludes))); @@ -179,7 +179,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms // conditionless item foreach (var existingItem in existingItemsWithNoCondition) { - var encompassedIncludes = existingItem.GetEncompassedIncludes(item); + var encompassedIncludes = existingItem.GetEncompassedIncludes(item, MigrationTrace.Instance); if (encompassedIncludes.Any()) { MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.ItemTransformApplicatorEncompassedIncludes, nameof(ItemTransformApplicator), string.Join(", ", encompassedIncludes))); @@ -280,7 +280,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms mergedItem.UnionExcludes(existingItem.Excludes()); mergedItem.UnionExcludes(item.Excludes()); - mergedItem.AddMetadata(MergeMetadata(existingItem.Metadata, item.Metadata)); + mergedItem.AddMetadata(MergeMetadata(existingItem.Metadata, item.Metadata), MigrationTrace.Instance); item.RemoveIncludes(commonIncludes); existingItem.RemoveIncludes(commonIncludes); diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs new file mode 100644 index 000000000..1b69b04c5 --- /dev/null +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs @@ -0,0 +1,28 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using FluentAssertions; +using FluentAssertions.Execution; +using FluentAssertions.Primitives; + +namespace Microsoft.DotNet.Tools.Test.Utilities +{ + public static class StringAssertionsExtensions + { + private static string NormalizeLineEndings(string s) + { + return s.Replace("\r\n", "\n"); + } + + public static AndConstraint BeVisuallyEquivalentTo(this StringAssertions assertions, string expected, string because = "", params object[] becauseArgs) + { + Execute.Assertion + .ForCondition(NormalizeLineEndings(assertions.Subject) == NormalizeLineEndings(expected)) + .BecauseOf(because, becauseArgs) + .FailWith($"String \"{assertions.Subject}\" is not visually equivalent to expected string \"{expected}\"."); + + return new AndConstraint(assertions); + } + } +} diff --git a/test/dotnet-add-p2p.Tests/GivenDotnetAddP2P.cs b/test/dotnet-add-p2p.Tests/GivenDotnetAddP2P.cs index 3808d483d..864dc3b81 100644 --- a/test/dotnet-add-p2p.Tests/GivenDotnetAddP2P.cs +++ b/test/dotnet-add-p2p.Tests/GivenDotnetAddP2P.cs @@ -36,7 +36,7 @@ Additional Arguments: const string ProjectNotCompatibleErrorMessageRegEx = "Project `[^`]*` cannot be added due to incompatible targeted frameworks between the two projects\\. Please review the project you are trying to add and verify that is compatible with the following targets\\:"; const string ProjectDoesNotTargetFrameworkErrorMessageRegEx = "Project `[^`]*` does not target framework `[^`]*`."; static readonly string[] DefaultFrameworks = new string[] { "netcoreapp1.0", "net451" }; - + private TestSetup Setup([System.Runtime.CompilerServices.CallerMemberName] string callingMethod = nameof(Setup), string identifier = "") { return new TestSetup( @@ -92,7 +92,7 @@ Additional Arguments: { var cmd = new AddP2PCommand().Execute(helpArg); cmd.Should().Pass(); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Theory] @@ -130,7 +130,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Could not find project or directory `{projName}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -145,7 +145,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be("Project `Broken/Broken.csproj` is invalid."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -159,7 +159,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojRelToOtherProjPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Found more than one project in `{workingDir + Path.DirectorySeparatorChar}`. Please specify which one to use."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -172,7 +172,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Could not find any project in `{setup.TestRoot + Path.DirectorySeparatorChar}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -489,7 +489,7 @@ Reference `DotnetAddP2PProjects\ValidRef\ValidRef.csproj` added to the project." .WithProject(lib.CsProjPath) .Execute($"\"{setup.LibCsprojPath}\" \"{setup.ValidRefCsprojPath}\""); cmd.Should().Pass(); - cmd.StdOut.Should().Be(OutputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(OutputText); var csproj = lib.CsProj(); csproj.NumberOfItemGroupsWithoutCondition().Should().Be(noCondBefore + 1); csproj.NumberOfProjectReferencesWithIncludeContaining(setup.ValidRefCsprojName).Should().Be(1); @@ -511,7 +511,7 @@ Reference `DotnetAddP2PProjects\ValidRef\ValidRef.csproj` added to the project." .WithProject(lib.CsProjPath) .Execute($"{FrameworkNet451Arg} \"{setup.LibCsprojPath}\" \"{setup.ValidRefCsprojPath}\""); cmd.Should().Pass(); - cmd.StdOut.Should().Be(OutputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(OutputText); var csproj = lib.CsProj(); csproj.NumberOfItemGroupsWithConditionContaining(ConditionFrameworkNet451).Should().Be(noCondBefore + 1); csproj.NumberOfProjectReferencesWithIncludeAndConditionContaining(setup.ValidRefCsprojName, ConditionFrameworkNet451).Should().Be(1); From 35bc8e1cc11c80cfc79e6017f9e38a75ada31464 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Tue, 27 Dec 2016 13:19:40 -0800 Subject: [PATCH 12/94] remove cross project reference from dotnet-add-p2p tests --- .../MSBuildExtensions.cs | 45 +++++++------------ .../MigrationTrace.cs | 38 ++++++++++------ .../dotnet-add-p2p.Tests.csproj | 4 -- 3 files changed, 41 insertions(+), 46 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/MSBuildExtensions.cs b/src/Microsoft.DotNet.ProjectJsonMigration/MSBuildExtensions.cs index 32418c914..d1f6ada9f 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/MSBuildExtensions.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/MSBuildExtensions.cs @@ -3,17 +3,18 @@ using System; using System.Collections.Generic; -using Microsoft.Build.Construction; +using System.IO; using System.Linq; +using Microsoft.Build.Construction; namespace Microsoft.DotNet.ProjectJsonMigration { - internal static class MSBuildExtensions + public static class MSBuildExtensions { public static IEnumerable GetEncompassedIncludes(this ProjectItemElement item, - ProjectItemElement otherItem) + ProjectItemElement otherItem, TextWriter trace = null) { - if (otherItem.IsEquivalentToExceptIncludeAndExclude(item) && + if (otherItem.IsEquivalentToExceptIncludeAndExclude(item, trace) && new HashSet(otherItem.Excludes()).IsSubsetOf(new HashSet(item.Excludes()))) { return otherItem.IntersectIncludes(item); @@ -22,37 +23,31 @@ namespace Microsoft.DotNet.ProjectJsonMigration return Enumerable.Empty(); } - public static bool IsEquivalentTo(this ProjectItemElement item, ProjectItemElement otherItem) + public static bool IsEquivalentTo(this ProjectItemElement item, ProjectItemElement otherItem, TextWriter trace = null) { // Different includes if (item.IntersectIncludes(otherItem).Count() != item.Includes().Count()) { -#if !DISABLE_TRACE - MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.IncludesNotEquivalent, nameof(MSBuildExtensions), nameof(IsEquivalentTo))); -#endif + trace?.WriteLine(String.Format(LocalizableStrings.IncludesNotEquivalent, nameof(MSBuildExtensions), nameof(IsEquivalentTo))); return false; } // Different Excludes if (item.IntersectExcludes(otherItem).Count() != item.Excludes().Count()) { -#if !DISABLE_TRACE - MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.ExcludesNotEquivalent, nameof(MSBuildExtensions), nameof(IsEquivalentTo))); -#endif + trace?.WriteLine(String.Format(LocalizableStrings.ExcludesNotEquivalent, nameof(MSBuildExtensions), nameof(IsEquivalentTo))); return false; } - return item.IsEquivalentToExceptIncludeAndExclude(otherItem); + return item.IsEquivalentToExceptIncludeAndExclude(otherItem, trace); } - public static bool IsEquivalentToExceptIncludeAndExclude(this ProjectItemElement item, ProjectItemElement otherItem) + public static bool IsEquivalentToExceptIncludeAndExclude(this ProjectItemElement item, ProjectItemElement otherItem, TextWriter trace = null) { // Different remove if (item.Remove != otherItem.Remove) { -#if !DISABLE_TRACE - MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.RemovesNotEquivalent, nameof(MSBuildExtensions), nameof(IsEquivalentTo))); -#endif + trace?.WriteLine(String.Format(LocalizableStrings.RemovesNotEquivalent, nameof(MSBuildExtensions), nameof(IsEquivalentTo))); return false; } @@ -67,17 +62,13 @@ namespace Microsoft.DotNet.ProjectJsonMigration var otherMetadata = itemToCompare.GetMetadataWithName(metadata.Name); if (otherMetadata == null) { -#if !DISABLE_TRACE - MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.MetadataDoesntExist, nameof(MSBuildExtensions), nameof(IsEquivalentTo), metadata.Name, metadata.Value)); -#endif + trace?.WriteLine(String.Format(LocalizableStrings.MetadataDoesntExist, nameof(MSBuildExtensions), nameof(IsEquivalentTo), metadata.Name, metadata.Value)); return false; } if (!metadata.ValueEquals(otherMetadata)) { -#if !DISABLE_TRACE - MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.MetadataHasAnotherValue, nameof(MSBuildExtensions), nameof(IsEquivalentTo), metadata.Name, metadata.Value, otherMetadata.Value)); -#endif + trace?.WriteLine(String.Format(LocalizableStrings.MetadataHasAnotherValue, nameof(MSBuildExtensions), nameof(IsEquivalentTo), metadata.Name, metadata.Value, otherMetadata.Value)); return false; } } @@ -175,11 +166,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration return metadata.Value.Equals(otherMetadata.Value, StringComparison.Ordinal); } - public static void AddMetadata(this ProjectItemElement item, ICollection metadataElements) + public static void AddMetadata(this ProjectItemElement item, ICollection metadataElements, TextWriter trace = null) { foreach (var metadata in metadataElements) { - item.AddMetadata(metadata); + item.AddMetadata(metadata, trace); } } @@ -196,7 +187,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration return item.Metadata.FirstOrDefault(m => m.Name.Equals(name, StringComparison.OrdinalIgnoreCase)); } - public static void AddMetadata(this ProjectItemElement item, ProjectMetadataElement metadata) + public static void AddMetadata(this ProjectItemElement item, ProjectMetadataElement metadata, TextWriter trace = null) { var existingMetadata = item.GetMetadataWithName(metadata.Name); @@ -207,9 +198,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration if (existingMetadata == default(ProjectMetadataElement)) { -#if !DISABLE_TRACE - MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.AddingMetadataToItem, nameof(AddMetadata), item.ItemType, metadata.Name, metadata.Value, metadata.Condition)); -#endif + trace?.WriteLine(String.Format(LocalizableStrings.AddingMetadataToItem, nameof(AddMetadata), item.ItemType, metadata.Name, metadata.Value, metadata.Condition)); var metametadata = item.AddMetadata(metadata.Name, metadata.Value); metametadata.Condition = metadata.Condition; metametadata.ExpressedAsAttribute = metadata.ExpressedAsAttribute; diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/MigrationTrace.cs b/src/Microsoft.DotNet.ProjectJsonMigration/MigrationTrace.cs index 60d31e4d8..ab2029f24 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/MigrationTrace.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/MigrationTrace.cs @@ -2,37 +2,47 @@ // Licensed under the MIT license. See LICENSE file in the project root for full license information. using System; +using System.IO; +using System.Text; namespace Microsoft.DotNet.ProjectJsonMigration { - internal class MigrationTrace + internal class MigrationTrace : TextWriter { public static MigrationTrace Instance { get; set; } + public string EnableEnvironmentVariable => "DOTNET_MIGRATION_TRACE"; + public bool IsEnabled { get; private set; } + + private TextWriter _underlyingWriter; + static MigrationTrace () { Instance = new MigrationTrace(); } - public string EnableEnvironmentVariable => "DOTNET_MIGRATION_TRACE"; - - public bool IsEnabled + public MigrationTrace() { - get - { -#if DEBUG - return true; -#else - return Environment.GetEnvironmentVariable(EnableEnvironmentVariable) != null; -#endif - } + _underlyingWriter = Console.Out; + IsEnabled = IsEnabledValue(); } - public void WriteLine(string message) + private bool IsEnabledValue() + { +#if DEBUG + return true; +#else + return Environment.GetEnvironmentVariable(EnableEnvironmentVariable) != null; +#endif + } + + public override Encoding Encoding => _underlyingWriter.Encoding; + + public override void Write(char value) { if (IsEnabled) { - Console.WriteLine(message); + _underlyingWriter.Write(value); } } } diff --git a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj index 719aecde8..13e5d50f0 100644 --- a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj +++ b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj @@ -6,13 +6,9 @@ true dotnet-add-p2p.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - $(DefineConstants);DISABLE_TRACE - - src\Microsoft.DotNet.ProjectJsonMigration\MSBuildExtensions.cs - From 88e7f0f5939caaca3940061fe2cb554a5e8fb350 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Tue, 27 Dec 2016 13:24:02 -0800 Subject: [PATCH 13/94] remove cross project reference from dotnet-remove-p2p (and fix local failures) --- .../GivenDotnetRemoveP2P.cs | 16 ++++++++-------- .../dotnet-remove-p2p.Tests.csproj | 4 ---- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/test/dotnet-remove-p2p.Tests/GivenDotnetRemoveP2P.cs b/test/dotnet-remove-p2p.Tests/GivenDotnetRemoveP2P.cs index 92c5f8a13..5614077db 100644 --- a/test/dotnet-remove-p2p.Tests/GivenDotnetRemoveP2P.cs +++ b/test/dotnet-remove-p2p.Tests/GivenDotnetRemoveP2P.cs @@ -118,7 +118,7 @@ Additional Arguments: { var cmd = new RemoveP2PCommand().Execute(helpArg); cmd.Should().Pass(); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Theory] @@ -156,7 +156,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Could not find project or directory `{projName}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -171,7 +171,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be("Project `Broken/Broken.csproj` is invalid."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -185,7 +185,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojRelToOtherProjPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Found more than one project in `{workingDir + Path.DirectorySeparatorChar}`. Please specify which one to use."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -198,7 +198,7 @@ Additional Arguments: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Could not find any project in `{setup.TestRoot + Path.DirectorySeparatorChar}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -384,7 +384,7 @@ Project reference `{setup.LibCsprojRelPath}` removed."; .WithProject(proj.CsProjPath) .Execute($"\"{libref.CsProjPath}\""); cmd.Should().Pass(); - cmd.StdOut.Should().Be(removedText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(removedText); var csproj = proj.CsProj(); csproj.NumberOfItemGroupsWithoutCondition().Should().Be(noCondBefore - 1); @@ -465,7 +465,7 @@ Project reference `{Path.Combine(TestSetup.ProjectName, setup.ValidRefCsprojRelP .WithProject(lib.CsProjPath) .Execute($"\"{libref.CsProjPath}\" \"{validref.CsProjPath}\""); cmd.Should().Pass(); - cmd.StdOut.Should().Be(outputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(outputText); var csproj = lib.CsProj(); csproj.NumberOfItemGroupsWithoutCondition().Should().Be(noCondBefore - 1); csproj.NumberOfProjectReferencesWithIncludeContaining(libref.Name).Should().Be(0); @@ -489,7 +489,7 @@ Project reference `{Path.Combine(TestSetup.ProjectName, setup.ValidRefCsprojRelP .WithProject(lib.CsProjPath) .Execute($"\"{libref.CsProjPath}\" \"{validref.CsProjPath}\""); cmd.Should().Pass(); - cmd.StdOut.Should().Be(OutputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(OutputText); var csproj = lib.CsProj(); csproj.NumberOfItemGroupsWithoutCondition().Should().Be(noCondBefore - 1); csproj.NumberOfProjectReferencesWithIncludeContaining(validref.Name).Should().Be(0); diff --git a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj index 27c021c29..ed48cbac9 100644 --- a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj +++ b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj @@ -6,13 +6,9 @@ true dotnet-remove-p2p.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - $(DefineConstants);DISABLE_TRACE - - src\Microsoft.DotNet.ProjectJsonMigration\MSBuildExtensions.cs - From e9dc08eafa1e1792b2410999cfc149f49be615c1 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Tue, 27 Dec 2016 14:13:44 -0800 Subject: [PATCH 14/94] make localizablestrings internal again --- .../LocalizableStrings.cs | 2 +- .../Microsoft.DotNet.Cli.Utils.Tests.csproj | 2 +- .../Msbuild.Tests.Utilities.csproj | 10 +++------- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/LocalizableStrings.cs b/src/Microsoft.DotNet.ProjectJsonMigration/LocalizableStrings.cs index 52b286b9b..1a669e877 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/LocalizableStrings.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/LocalizableStrings.cs @@ -3,7 +3,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration { - public class LocalizableStrings + internal class LocalizableStrings { public const string DoubleMigrationError = "Detected double project migration: {0}"; diff --git a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj index 53d7348f3..f6a081999 100644 --- a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj @@ -13,7 +13,7 @@ - + diff --git a/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj b/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj index a5d46fb2c..3c7f9fcb3 100644 --- a/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj +++ b/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj @@ -6,16 +6,9 @@ true Msbuild.Tests.Utilities $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - $(DefineConstants);DISABLE_TRACE - - src\Microsoft.DotNet.ProjectJsonMigration\MSBuildExtensions.cs - - - src\Microsoft.DotNet.ProjectJsonMigration\LocalizableStrings.cs - @@ -24,6 +17,9 @@ true + + true + true From af31b4fac466c2e9ee7d7638cec3c65b98d7bd89 Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Tue, 27 Dec 2016 13:25:51 -1000 Subject: [PATCH 15/94] Archive upload path needs to be changed (#5159) --- build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets b/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets index c9626b094..3455a7cbd 100644 --- a/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets +++ b/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets @@ -21,7 +21,7 @@ - $(CoreSetupChannel)/Binaries/$(NuGetPackagesArchiveVersion)/$([System.String]::Copy('%(Filename)%(Extension)').Replace('\' ,'/')) + $(CoreSetupChannel)/Binaries/$(SharedFrameworkVersion)/$([System.String]::Copy('%(Filename)%(Extension)').Replace('\' ,'/')) From a37befab2fe71972430aac06ac0976f3bb34218e Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 28 Dec 2016 02:53:54 -0800 Subject: [PATCH 16/94] Updating xlf files to incorporate the runtime option in restore and localization for dotnet add package --- .../xlf/LocalizableStrings.cs.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.de.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.es.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.fr.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.it.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.ja.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.ko.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.pl.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.pt-BR.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.ru.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.tr.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.xlf | 64 +++++++++++++++ .../xlf/LocalizableStrings.zh-Hans.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.zh-Hant.xlf | 78 +++++++++++++++++++ .../xlf/LocalizableStrings.cs.xlf | 10 +++ .../xlf/LocalizableStrings.de.xlf | 10 +++ .../xlf/LocalizableStrings.es.xlf | 10 +++ .../xlf/LocalizableStrings.fr.xlf | 10 +++ .../xlf/LocalizableStrings.it.xlf | 10 +++ .../xlf/LocalizableStrings.ja.xlf | 10 +++ .../xlf/LocalizableStrings.ko.xlf | 10 +++ .../xlf/LocalizableStrings.pl.xlf | 10 +++ .../xlf/LocalizableStrings.pt-BR.xlf | 10 +++ .../xlf/LocalizableStrings.ru.xlf | 10 +++ .../xlf/LocalizableStrings.tr.xlf | 10 +++ .../dotnet-restore/xlf/LocalizableStrings.xlf | 18 +++-- .../xlf/LocalizableStrings.zh-Hans.xlf | 10 +++ .../xlf/LocalizableStrings.zh-Hant.xlf | 10 +++ 28 files changed, 1221 insertions(+), 5 deletions(-) create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf create mode 100644 src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf new file mode 100644 index 000000000..1713260a4 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf new file mode 100644 index 000000000..c7efa4b01 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf new file mode 100644 index 000000000..ceafa595a --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf new file mode 100644 index 000000000..74673dab4 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf new file mode 100644 index 000000000..54458d510 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf new file mode 100644 index 000000000..404f46203 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf new file mode 100644 index 000000000..3a3695042 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf new file mode 100644 index 000000000..a01384c4d --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf new file mode 100644 index 000000000..1cf99b28f --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf new file mode 100644 index 000000000..17de65921 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf new file mode 100644 index 000000000..ea4f72f25 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.xlf new file mode 100644 index 000000000..60412deb1 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.xlf @@ -0,0 +1,64 @@ + + + + + + + .NET Add Package reference Command + + + + Command to add package reference + + + + Package references to add + + + + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + + + + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + + + + FRAMEWORK + + + + SOURCE + + + + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf new file mode 100644 index 000000000..50aa7f8bf --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf new file mode 100644 index 000000000..ac0ee9423 --- /dev/null +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf @@ -0,0 +1,78 @@ + + + + + + + .NET Add Package reference Command + .NET Add Package reference Command + + + + Command to add package reference + Command to add package reference + + + + Package references to add + Package references to add + + + + Please specify one package reference to add. + Please specify one package reference to add. + + + + Add reference only when targetting a specific framework + Add reference only when targetting a specific framework + + + + Add reference without performing restore preview and compatibility check. + Add reference without performing restore preview and compatibility check. + + + + Use specific NuGet package sources to use during the restore. + Use specific NuGet package sources to use during the restore. + + + + Restore the packages to this Directory . + Restore the packages to this Directory . + + + + Version for the package to be added. + Version for the package to be added. + + + + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. + + + + VERSION + VERSION + + + + FRAMEWORK + FRAMEWORK + + + + SOURCE + SOURCE + + + + PACKAGE_DIRECTORY + PACKAGE_DIRECTORY + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf index 0c86508ab..df1f16bf1 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf @@ -73,6 +73,16 @@ Když tento příznak nastavíte, ignorují se odkazy mezi projekty a obnoví se jenom kořenový projekt. + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf index f964897e9..71f9792e6 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf @@ -73,6 +73,16 @@ Legen Sie dieses Flag fest, um Projekt-zu-Projekt-Verweise zu ignorieren und nur das Stammprojekt wiederherzustellen. + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf index 9758e2f2f..c72ed7eb1 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf @@ -73,6 +73,16 @@ Establezca esta marca para que se omitan las referencias de proyecto a proyecto y se restaure solo el proyecto raíz + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf index 425cbe6e1..f054e453c 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf @@ -73,6 +73,16 @@ Définir cet indicateur pour ignorer les références projet à projet et restaurer uniquement le projet racine + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf index 4ba2eefc0..770fef7f4 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf @@ -73,6 +73,16 @@ Impostare questo flag per ignorare i riferimenti P2P (da progetto a progetto) e ripristinare solo il progetto radice + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf index 0442260f3..3b4659814 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf @@ -73,6 +73,16 @@ project to project 参照を無視して、ルート プロジェクトのみを復元するには、このフラグを設定します + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf index 45b8dfaa3..3d57c7a89 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf @@ -73,6 +73,16 @@ 프로젝트 간 참조를 무시하고 루트 프로젝트만 복원하려면 이 플래그를 설정합니다. + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf index 1004927cb..1e8b0a36f 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf @@ -73,6 +73,16 @@ Ustaw tę flagę, aby ignorować odwołania między projektami i przywrócić tylko projekt główny + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf index f54055347..05d67db33 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf @@ -73,6 +73,16 @@ Definir esse sinalizador para ignorar referências de projeto para projeto e restaurar apenas o projeto raiz + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf index 84b8f1da7..da6e5ce57 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf @@ -73,6 +73,16 @@ Задайте этот флаг, чтобы пропускать ссылки проектов на проекты и выполнять восстановление только корневого проекта. + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf index 4e0e85374..f028f439c 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf @@ -73,6 +73,16 @@ Projeden projeye başvuruları yoksaymak ve yalnızca kök projeyi geri yüklemek için bu bayrağı ayarlayın + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.xlf index 8b90de434..c949828e0 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.xlf @@ -5,7 +5,7 @@ .NET dependency restorer - + restore for msbuild @@ -13,7 +13,7 @@ PROJECT - + Optional path to a project file or MSBuild arguments. @@ -21,7 +21,7 @@ SOURCE - + Specifies a NuGet package source to use during the restore. @@ -29,7 +29,7 @@ PACKAGES_DIRECTORY - + Directory to install packages in. @@ -41,7 +41,7 @@ FILE - + The NuGet configuration file to use. @@ -59,6 +59,14 @@ Set this flag to ignore project to project references and only restore the root project + + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf index f775560f5..6c9d0af87 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf @@ -73,6 +73,16 @@ 设置此标志以忽略项目到项目引用,并仅还原根项目 + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf index 5f4f4acf9..b626dc067 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf @@ -73,6 +73,16 @@ 將此旗標設定為略過專案對專案參考並僅還原根專案 + + RUNTIME_IDENTIFIER + RUNTIME_IDENTIFIER + + + + Target runtime to restore packages for. + Target runtime to restore packages for. + + \ No newline at end of file From 05df71825d87da840279c4620a47f7ae1ee89677 Mon Sep 17 00:00:00 2001 From: Satya Madala Date: Wed, 28 Dec 2016 23:47:33 +0530 Subject: [PATCH 17/94] Testplatform release 15.0.0-preview-20161227-02 (#5055) * Update testplatform packages version * Refer TestPlatform version from DependencyVersions.props * Updating the packages with respect to Testplatform release 15.0.0-preview-20161227-02 * Add dit.props to test assets projects --- .../VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj | 3 ++- .../TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj | 3 ++- .../VSTestXunitDesktopAndNetCore.csproj | 2 +- .../VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj | 3 ++- build/Microsoft.DotNet.Cli.Compile.targets | 2 +- build/Microsoft.DotNet.Cli.DependencyVersions.props | 1 + .../commands/dotnet-new/CSharp_Mstest/$projectName$.csproj | 2 +- .../commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj | 2 +- .../commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj | 2 +- .../commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj | 2 +- src/redist/redist.csproj | 4 ++-- .../Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj | 2 +- 12 files changed, 16 insertions(+), 12 deletions(-) diff --git a/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj index 0ec85f7b2..9d6dfc1f6 100644 --- a/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj @@ -1,4 +1,5 @@ + Exe net46;netcoreapp1.0 @@ -26,7 +27,7 @@ 1.1.5-preview - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) \ No newline at end of file diff --git a/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj b/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj index 21bcde1bf..b711c874d 100644 --- a/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj +++ b/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj @@ -1,4 +1,5 @@ + Exe netcoreapp1.0 @@ -19,7 +20,7 @@ 1.1.5-preview - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) \ No newline at end of file diff --git a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj index cc3cdedd5..803d5f877 100644 --- a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj @@ -28,7 +28,7 @@ All - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) 2.2.0-beta4-build3444 diff --git a/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj index ffd096563..2bda46e52 100644 --- a/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj @@ -1,4 +1,5 @@ + Exe netcoreapp1.0 @@ -14,7 +15,7 @@ 1.0.1 - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) 2.2.0-beta4-build3444 diff --git a/build/Microsoft.DotNet.Cli.Compile.targets b/build/Microsoft.DotNet.Cli.Compile.targets index bf8d939ce..bdba43bc0 100644 --- a/build/Microsoft.DotNet.Cli.Compile.targets +++ b/build/Microsoft.DotNet.Cli.Compile.targets @@ -98,7 +98,7 @@ - + diff --git a/build/Microsoft.DotNet.Cli.DependencyVersions.props b/build/Microsoft.DotNet.Cli.DependencyVersions.props index c008e9517..b16c3e15c 100644 --- a/build/Microsoft.DotNet.Cli.DependencyVersions.props +++ b/build/Microsoft.DotNet.Cli.DependencyVersions.props @@ -4,5 +4,6 @@ 15.1.0-preview-000458-02 1.0.0-alpha-20161221-2 1.0.0-alpha-20161205-1-154 + 15.0.0-preview-20161227-02 diff --git a/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj index 5de6e69fb..b87b9550d 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj @@ -12,7 +12,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj index 8440c1803..cd806133a 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj @@ -12,7 +12,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj index 4b40bd24b..5b14517c9 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj @@ -13,7 +13,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj index ab38c4799..ff3b4ca7d 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj @@ -12,7 +12,7 @@ - + diff --git a/src/redist/redist.csproj b/src/redist/redist.csproj index fbe5f52bb..b73b2aee8 100644 --- a/src/redist/redist.csproj +++ b/src/redist/redist.csproj @@ -27,10 +27,10 @@ 4.0.0-rc2 - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) diff --git a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj index cf54b1423..2fcc463e6 100644 --- a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj @@ -29,7 +29,7 @@ 1.0.1 - 15.0.0-preview-20161123-03 + $(CLI_TestPlatform_Version) 2.2.0-beta4-build3444 From 35f2192f3ba75d0308019e03caa573f6c177b5dd Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Wed, 28 Dec 2016 09:40:49 -1000 Subject: [PATCH 18/94] Improve Sln reader/writer tests (#5157) * WIP improve sln reader/writer tests * Complete the tests --- .../TestProjects/TestAppWithSln/Program.cs | 12 - .../TestAppWithSln/TestAppWithSln.sln | 22 -- .../TestAppWithSln/TestAppWithSln.xproj | 18 -- .../TestProjects/TestAppWithSln/project.json | 25 -- .../SlnFile.cs | 2 +- ...Microsoft.DotNet.Cli.Sln.Internal.Tests.cs | 299 +++++++++++++++--- 6 files changed, 259 insertions(+), 119 deletions(-) delete mode 100644 TestAssets/TestProjects/TestAppWithSln/Program.cs delete mode 100644 TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.sln delete mode 100644 TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.xproj delete mode 100644 TestAssets/TestProjects/TestAppWithSln/project.json diff --git a/TestAssets/TestProjects/TestAppWithSln/Program.cs b/TestAssets/TestProjects/TestAppWithSln/Program.cs deleted file mode 100644 index 51233cffa..000000000 --- a/TestAssets/TestProjects/TestAppWithSln/Program.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; - -namespace ConsoleApplication -{ - public class Program - { - public static void Main(string[] args) - { - Console.WriteLine("Hello World!"); - } - } -} diff --git a/TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.sln b/TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.sln deleted file mode 100644 index e6b587e50..000000000 --- a/TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.sln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "TestAppWithSln", "TestAppWithSln.xproj", "{0138CB8F-4AA9-4029-A21E-C07C30F425BA}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.xproj b/TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.xproj deleted file mode 100644 index 53f0c8b7a..000000000 --- a/TestAssets/TestProjects/TestAppWithSln/TestAppWithSln.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0.23107 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 0138cb8f-4aa9-4029-a21e-c07c30f425ba - TestAppWithContents - ..\..\..\artifacts\obj\$(MSBuildProjectName) - ..\..\..\artifacts\ - - - 2.0 - - - \ No newline at end of file diff --git a/TestAssets/TestProjects/TestAppWithSln/project.json b/TestAssets/TestProjects/TestAppWithSln/project.json deleted file mode 100644 index 5f8329deb..000000000 --- a/TestAssets/TestProjects/TestAppWithSln/project.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": { - "Microsoft.NETCore.App": "1.0.1" - }, - "frameworks": { - "netcoreapp1.0": {} - }, - "runtimes": { - "win7-x64": {}, - "win7-x86": {}, - "osx.10.10-x64": {}, - "osx.10.11-x64": {}, - "ubuntu.14.04-x64": {}, - "ubuntu.16.04-x64": {}, - "centos.7-x64": {}, - "rhel.7.2-x64": {}, - "debian.8-x64": {}, - "fedora.23-x64": {}, - "opensuse.13.2-x64": {} - } -} \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs b/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs index 937b4ffce..51034eabb 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs @@ -1139,7 +1139,7 @@ namespace Microsoft.DotNet.Cli.Sln.Internal } } - class InvalidSolutionFormatException : Exception + public class InvalidSolutionFormatException : Exception { public InvalidSolutionFormatException(int line) : base("Invalid format in line " + line) { diff --git a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs index 084ac7c91..b5f2c5a13 100644 --- a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs +++ b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs @@ -13,65 +13,282 @@ namespace Microsoft.DotNet.Cli.Sln.Internal.Tests { public class GivenAnSlnFile : TestBase { + private const string SolutionModified = @" +Microsoft Visual Studio Solution File, Format Version 14.00 +# Visual Studio 16 +VisualStudioVersion = 16.0.26006.2 +MinimumVisualStudioVersion = 11.0.40219.1 +Project(""{7072A694-548F-4CAE-A58F-12D257D5F486}"") = ""AppModified"", ""AppModified\AppModified.csproj"", ""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = TRUE + EndGlobalSection +EndGlobal +"; + + private const string SolutionWithAppAndLibProjects = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App\App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""..\Lib\Lib.csproj"", ""{21D9159F-60E6-4F65-BC6B-D01B71B15FFC}"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x64.ActiveCfg = Debug|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x64.Build.0 = Debug|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x86.ActiveCfg = Debug|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x86.Build.0 = Debug|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|Any CPU.Build.0 = Release|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x64.ActiveCfg = Release|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x64.Build.0 = Release|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x86.ActiveCfg = Release|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal +"; + [Fact] - public void WhenGivenAValidPathItReadsAnSlnFile() + public void WhenGivenAValidSlnFileItReadsAndVerifiesContents() { - var solutionDirectory = - TestAssetsManager.CreateTestInstance("TestAppWithSln", callingMethod: "p").Path; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionWithAppAndLibProjects); - var solutionFullPath = Path.Combine(solutionDirectory, "TestAppWithSln.sln"); - - var slnFile = SlnFile.Read(solutionFullPath); + SlnFile slnFile = SlnFile.Read(tmpFile.Path); slnFile.FormatVersion.Should().Be("12.00"); - slnFile.ProductDescription.Should().Be("Visual Studio 14"); - slnFile.VisualStudioVersion.Should().Be("14.0.25420.1"); + slnFile.ProductDescription.Should().Be("Visual Studio 15"); + slnFile.VisualStudioVersion.Should().Be("15.0.26006.2"); slnFile.MinimumVisualStudioVersion.Should().Be("10.0.40219.1"); - slnFile.BaseDirectory.Should().Be(solutionDirectory); - slnFile.FullPath.Should().Be(solutionFullPath); + slnFile.BaseDirectory.Should().Be(Path.GetDirectoryName(tmpFile.Path)); + slnFile.FullPath.Should().Be(tmpFile.Path); - slnFile.Projects.Count.Should().Be(1); + slnFile.Projects.Count.Should().Be(2); var project = slnFile.Projects[0]; - project.Id.Should().Be("{0138CB8F-4AA9-4029-A21E-C07C30F425BA}"); - project.TypeGuid.Should().Be("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}"); - project.Name.Should().Be("TestAppWithSln"); - project.FilePath.Should().Be("TestAppWithSln.xproj"); + project.Id.Should().Be("{7072A694-548F-4CAE-A58F-12D257D5F486}"); + project.TypeGuid.Should().Be("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"); + project.Name.Should().Be("App"); + project.FilePath.Should().Be(Path.Combine("App", "App.csproj")); + project = slnFile.Projects[1]; + project.Id.Should().Be("{21D9159F-60E6-4F65-BC6B-D01B71B15FFC}"); + project.TypeGuid.Should().Be("{13B669BE-BB05-4DDF-9536-439F39A36129}"); + project.Name.Should().Be("Lib"); + project.FilePath.Should().Be(Path.Combine("..", "Lib", "Lib.csproj")); + + slnFile.SolutionConfigurationsSection.Count.Should().Be(6); + slnFile.SolutionConfigurationsSection + .GetValue("Debug|Any CPU", string.Empty) + .Should().Be("Debug|Any CPU"); + slnFile.SolutionConfigurationsSection + .GetValue("Debug|x64", string.Empty) + .Should().Be("Debug|x64"); + slnFile.SolutionConfigurationsSection + .GetValue("Debug|x86", string.Empty) + .Should().Be("Debug|x86"); + slnFile.SolutionConfigurationsSection + .GetValue("Release|Any CPU", string.Empty) + .Should().Be("Release|Any CPU"); + slnFile.SolutionConfigurationsSection + .GetValue("Release|x64", string.Empty) + .Should().Be("Release|x64"); + slnFile.SolutionConfigurationsSection + .GetValue("Release|x86", string.Empty) + .Should().Be("Release|x86"); + + slnFile.ProjectConfigurationsSection.Count.Should().Be(2); + var projectConfigSection = slnFile + .ProjectConfigurationsSection + .GetPropertySet("{7072A694-548F-4CAE-A58F-12D257D5F486}"); + projectConfigSection.Count.Should().Be(12); + projectConfigSection + .GetValue("Debug|Any CPU.ActiveCfg", string.Empty) + .Should().Be("Debug|Any CPU"); + projectConfigSection + .GetValue("Debug|Any CPU.Build.0", string.Empty) + .Should().Be("Debug|Any CPU"); + projectConfigSection + .GetValue("Debug|x64.ActiveCfg", string.Empty) + .Should().Be("Debug|x64"); + projectConfigSection + .GetValue("Debug|x64.Build.0", string.Empty) + .Should().Be("Debug|x64"); + projectConfigSection + .GetValue("Debug|x86.ActiveCfg", string.Empty) + .Should().Be("Debug|x86"); + projectConfigSection + .GetValue("Debug|x86.Build.0", string.Empty) + .Should().Be("Debug|x86"); + projectConfigSection + .GetValue("Release|Any CPU.ActiveCfg", string.Empty) + .Should().Be("Release|Any CPU"); + projectConfigSection + .GetValue("Release|Any CPU.Build.0", string.Empty) + .Should().Be("Release|Any CPU"); + projectConfigSection + .GetValue("Release|x64.ActiveCfg", string.Empty) + .Should().Be("Release|x64"); + projectConfigSection + .GetValue("Release|x64.Build.0", string.Empty) + .Should().Be("Release|x64"); + projectConfigSection + .GetValue("Release|x86.ActiveCfg", string.Empty) + .Should().Be("Release|x86"); + projectConfigSection + .GetValue("Release|x86.Build.0", string.Empty) + .Should().Be("Release|x86"); + projectConfigSection = slnFile + .ProjectConfigurationsSection + .GetPropertySet("{21D9159F-60E6-4F65-BC6B-D01B71B15FFC}"); + projectConfigSection.Count.Should().Be(12); + projectConfigSection + .GetValue("Debug|Any CPU.ActiveCfg", string.Empty) + .Should().Be("Debug|Any CPU"); + projectConfigSection + .GetValue("Debug|Any CPU.Build.0", string.Empty) + .Should().Be("Debug|Any CPU"); + projectConfigSection + .GetValue("Debug|x64.ActiveCfg", string.Empty) + .Should().Be("Debug|x64"); + projectConfigSection + .GetValue("Debug|x64.Build.0", string.Empty) + .Should().Be("Debug|x64"); + projectConfigSection + .GetValue("Debug|x86.ActiveCfg", string.Empty) + .Should().Be("Debug|x86"); + projectConfigSection + .GetValue("Debug|x86.Build.0", string.Empty) + .Should().Be("Debug|x86"); + projectConfigSection + .GetValue("Release|Any CPU.ActiveCfg", string.Empty) + .Should().Be("Release|Any CPU"); + projectConfigSection + .GetValue("Release|Any CPU.Build.0", string.Empty) + .Should().Be("Release|Any CPU"); + projectConfigSection + .GetValue("Release|x64.ActiveCfg", string.Empty) + .Should().Be("Release|x64"); + projectConfigSection + .GetValue("Release|x64.Build.0", string.Empty) + .Should().Be("Release|x64"); + projectConfigSection + .GetValue("Release|x86.ActiveCfg", string.Empty) + .Should().Be("Release|x86"); + projectConfigSection + .GetValue("Release|x86.Build.0", string.Empty) + .Should().Be("Release|x86"); + + slnFile.Sections.Count.Should().Be(3); + var solutionPropertiesSection = slnFile.Sections.GetSection("SolutionProperties"); + solutionPropertiesSection.Properties.Count.Should().Be(1); + solutionPropertiesSection.Properties + .GetValue("HideSolutionNode", string.Empty) + .Should().Be("FALSE"); } [Fact] - public void WhenGivenAValidPathItReadsModifiesThenWritesAnSln() + public void WhenGivenAValidSlnFileItModifiesSavesAndVerifiesContents() { - var solutionDirectory = - TestAssetsManager.CreateTestInstance("TestAppWithSln", callingMethod: "p").Path; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionWithAppAndLibProjects); - var solutionFullPath = Path.Combine(solutionDirectory, "TestAppWithSln.sln"); + SlnFile slnFile = SlnFile.Read(tmpFile.Path); - var slnFile = SlnFile.Read(solutionFullPath); - slnFile.FullPath.Should().Be(solutionFullPath); + slnFile.FormatVersion = "14.00"; + slnFile.ProductDescription = "Visual Studio 16"; + slnFile.VisualStudioVersion = "16.0.26006.2"; + slnFile.MinimumVisualStudioVersion = "11.0.40219.1"; - slnFile.Projects.Count.Should().Be(1); + slnFile.Projects.Count.Should().Be(2); var project = slnFile.Projects[0]; - project.Name.Should().Be("TestAppWithSln"); - project.Name = "New Project Name"; - project.FilePath.Should().Be("TestAppWithSln.xproj"); - project.FilePath = "New File Path"; + project.Id = "{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"; + project.TypeGuid = "{7072A694-548F-4CAE-A58F-12D257D5F486}"; + project.Name = "AppModified"; + project.FilePath = Path.Combine("AppModified", "AppModified.csproj"); + slnFile.Projects.Remove(slnFile.Projects[1]); - var newSolutionFullPath = Path.Combine(solutionDirectory, "TestAppWithSln_modified.sln"); - slnFile.Write(newSolutionFullPath); + slnFile.SolutionConfigurationsSection.Count.Should().Be(6); + slnFile.SolutionConfigurationsSection.Remove("Release|Any CPU"); + slnFile.SolutionConfigurationsSection.Remove("Release|x64"); + slnFile.SolutionConfigurationsSection.Remove("Release|x86"); - slnFile = SlnFile.Read(newSolutionFullPath); - slnFile.FormatVersion.Should().Be("12.00"); - slnFile.ProductDescription.Should().Be("Visual Studio 14"); - slnFile.VisualStudioVersion.Should().Be("14.0.25420.1"); - slnFile.MinimumVisualStudioVersion.Should().Be("10.0.40219.1"); - slnFile.BaseDirectory.Should().Be(solutionDirectory); - slnFile.FullPath.Should().Be(newSolutionFullPath); - slnFile.Projects.Count.Should().Be(1); - project = slnFile.Projects[0]; - project.Id.Should().Be("{0138CB8F-4AA9-4029-A21E-C07C30F425BA}"); - project.TypeGuid.Should().Be("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}"); - project.Name.Should().Be("New Project Name"); - project.FilePath.Should().Be("New File Path"); + slnFile.ProjectConfigurationsSection.Count.Should().Be(2); + var projectConfigSection = slnFile + .ProjectConfigurationsSection + .GetPropertySet("{21D9159F-60E6-4F65-BC6B-D01B71B15FFC}"); + slnFile.ProjectConfigurationsSection.Remove(projectConfigSection); + + slnFile.Sections.Count.Should().Be(3); + var solutionPropertiesSection = slnFile.Sections.GetSection("SolutionProperties"); + solutionPropertiesSection.Properties.Count.Should().Be(1); + solutionPropertiesSection.Properties.SetValue("HideSolutionNode", "TRUE"); + + slnFile.Write(); + + File.ReadAllText(tmpFile.Path) + .Should().Be(SolutionModified); + } + + [Fact] + public void WhenGivenAnSolutionWithMissingHeaderItThrows() + { + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText("Invalid Solution"); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 1: File header is missing"); } } } From 04c2ce77f65cd06fcae8fae2556abd5958b42ee6 Mon Sep 17 00:00:00 2001 From: Alex Barney Date: Wed, 28 Dec 2016 14:25:26 -0600 Subject: [PATCH 19/94] Fix broken link in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5024c3a0d..0293c8b5d 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ You can download .NET Core as either an installer (MSI, PKG) or a zip (zip, gzip - .NET Core SDK - .NET Core + CLI tools > **Note:** please be aware that below installers are the **latest bits**. If you -> want to install the latest released versions, please check out the [section above](#rtm-and-preview-2-bits).) +> want to install the latest released versions, please check out the [section above](#download-links).) | | Version | .NET Core Installer | .NET Core SDK Installer | .NET Core Binaries | .NET Core SDK Binaries | |----------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| From ad88058266825e454268e79d9a8a4dfbc5e684fe Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 28 Dec 2016 14:48:38 -0800 Subject: [PATCH 20/94] Stopped doing hoisting of transitive project dependencies and references. We also don't validate if a dependency exist, since migration strictly speaking does not need it. We move the project.json and the csproj will fail to build just like the project.json would. --- .../MigrateAppWithMissingDep/.noautobuild | 0 .../MyApp/.noautobuild | 0 .../MigrateAppWithMissingDep/MyApp/Program.cs | 10 --- .../MyApp/project.json | 20 ------ .../MyLib/NotUsedButDoNotRemove.cs | 5 -- .../ProjectDependency.cs | 4 +- .../ProjectDependencyFinder.cs | 28 ++------ .../Rules/MigrateProjectDependenciesRule.cs | 69 +------------------ ...enThatIWantToMigrateProjectDependencies.cs | 57 +++++---------- .../GivenThatIWantToMigrateTestApps.cs | 15 +--- 10 files changed, 30 insertions(+), 178 deletions(-) delete mode 100644 TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/.noautobuild delete mode 100644 TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/.noautobuild delete mode 100644 TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/Program.cs delete mode 100644 TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/project.json delete mode 100644 TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyLib/NotUsedButDoNotRemove.cs diff --git a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/.noautobuild b/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/.noautobuild deleted file mode 100644 index e69de29bb..000000000 diff --git a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/.noautobuild b/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/.noautobuild deleted file mode 100644 index e69de29bb..000000000 diff --git a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/Program.cs b/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/Program.cs deleted file mode 100644 index a552b21e7..000000000 --- a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/Program.cs +++ /dev/null @@ -1,10 +0,0 @@ -namespace ConsoleApplication -{ - public class Program - { - public static void Main(string[] args) - { - } - } -} - diff --git a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/project.json b/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/project.json deleted file mode 100644 index e10324be5..000000000 --- a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyApp/project.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "version": "1.0.0-*", - "buildOptions": { - "emitEntryPoint": true - }, - - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.1" - }, - "MyLib": "1.0.0-*" - }, - - "frameworks": { - "netcoreapp1.0": { - "imports": "dnxcore50" - } - } -} diff --git a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyLib/NotUsedButDoNotRemove.cs b/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyLib/NotUsedButDoNotRemove.cs deleted file mode 100644 index d16e6e2d3..000000000 --- a/TestAssets/NonRestoredTestProjects/MigrateAppWithMissingDep/MyLib/NotUsedButDoNotRemove.cs +++ /dev/null @@ -1,5 +0,0 @@ -// This file needs to be here as this error does not repro if the MyLib folder doesn't exist -// Since git does not keep track of folders and files only, this folder needs to contain any file. -namespace MyLib -{ -} diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependency.cs b/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependency.cs index afea501a7..d830182b8 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependency.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependency.cs @@ -7,13 +7,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration { public string Name { get; } public string ProjectFilePath { get; } - public bool Hoisted { get; } - public ProjectDependency(string name, string projectFilePath, bool hoisted) + public ProjectDependency(string name, string projectFilePath) { Name = name; ProjectFilePath = System.IO.Path.GetFullPath(projectFilePath); - Hoisted = hoisted; } public override bool Equals(object obj) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependencyFinder.cs b/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependencyFinder.cs index dc449b60d..825c4695a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependencyFinder.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/ProjectDependencyFinder.cs @@ -80,34 +80,23 @@ namespace Microsoft.DotNet.ProjectJsonMigration projectContext.ProjectFile, framework, preResolvedProjects, - solutionFile, - HoistDependenciesThatAreNotDirectDependencies(projectToResolve, project) + solutionFile ); - projects.AddRange(dependencies); allDependencies.UnionWith(dependencies); } return allDependencies; } - private bool HoistDependenciesThatAreNotDirectDependencies( - ProjectDependency originalProject, - ProjectDependency dependenciesOwner) - { - return originalProject != dependenciesOwner; - } - public IEnumerable ResolveDirectProjectDependenciesForFramework( Project project, NuGetFramework framework, IEnumerable preResolvedProjects=null, - SlnFile solutionFile = null, - bool hoistedDependencies = false) + SlnFile solutionFile = null) { preResolvedProjects = preResolvedProjects ?? new HashSet(); - var possibleProjectDependencies = - FindPossibleProjectDependencies(solutionFile, project.ProjectFilePath, hoistedDependencies); + var possibleProjectDependencies = FindPossibleProjectDependencies(solutionFile, project.ProjectFilePath); var projectDependencies = new List(); @@ -233,8 +222,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration private Dictionary FindPossibleProjectDependencies( SlnFile slnFile, - string projectJsonFilePath, - bool hoistedDependencies = false) + string projectJsonFilePath) { var projectRootDirectory = GetRootFromProjectJson(projectJsonFilePath); @@ -249,7 +237,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration var projects = new Dictionary(StringComparer.Ordinal); - foreach (var project in GetPotentialProjects(projectSearchPaths, hoistedDependencies)) + foreach (var project in GetPotentialProjects(projectSearchPaths)) { if (projects.ContainsKey(project.Name)) { @@ -311,8 +299,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration /// Create the list of potential projects from the search paths. /// private static List GetPotentialProjects( - IEnumerable searchPaths, - bool hoistedDependencies = false) + IEnumerable searchPaths) { var projects = new List(); @@ -338,8 +325,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration // Check if we've already added this, just in case it was pre-loaded into the cache var project = new ProjectDependency( projectDirectory.Name, - projectFilePath, - hoistedDependencies); + projectFilePath); projects.Add(project); } diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateProjectDependenciesRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateProjectDependenciesRule.cs index a1f0d0fb6..f697a6f46 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateProjectDependenciesRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateProjectDependenciesRule.cs @@ -113,16 +113,13 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules ProjectRootElement outputMSBuildProject) { var projectDependencies = _projectDependencyFinder.ResolveAllProjectDependenciesForFramework( - new ProjectDependency(project.Name, project.ProjectFilePath, false), + new ProjectDependency(project.Name, project.ProjectFilePath), framework, migratedXProjDependencyNames, solutionFile); var projectDependencyTransformResults = - projectDependencies.Select(p => - p.Hoisted ? - HoistedDependencyTransform.Transform(p) : - ProjectDependencyTransform.Transform(p)); + projectDependencies.Select(p => ProjectDependencyTransform.Transform(p)); if (projectDependencyTransformResults.Any()) { @@ -131,56 +128,6 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules projectDependencyTransformResults, framework); } - - HoistFrameworkAssembliesForProjectDependencies(projectDependencies, outputMSBuildProject); - } - - private void HoistFrameworkAssembliesForProjectDependencies( - IEnumerable projectDependencies, - ProjectRootElement outputMSBuildProject) - { - foreach (var projectDependency in projectDependencies) - { - HoistFrameworkAssembliesForDesktopFrameworks(projectDependency, outputMSBuildProject); - } - } - - private void HoistFrameworkAssembliesForDesktopFrameworks( - ProjectDependency projectDependency, - ProjectRootElement outputMSBuildProject) - { - var targetFrameworks = ProjectReader - .GetProject(projectDependency.ProjectFilePath) - .GetTargetFrameworks().Where(p => !p.FrameworkName.IsPackageBased); - - foreach (var targetFramework in targetFrameworks) - { - HoistFrameworkAssemblies(targetFramework, outputMSBuildProject); - } - } - - private void HoistFrameworkAssemblies( - TargetFrameworkInformation targetFramework, - ProjectRootElement outputMSBuildProject) - { - var frameworkAssemblies = targetFramework.Dependencies.Where(d => - d.LibraryRange.TypeConstraint == LibraryDependencyTarget.Reference); - if(frameworkAssemblies.Any()) - { - var condition = targetFramework.FrameworkName.GetMSBuildCondition(); - var itemGroup = - outputMSBuildProject.ItemGroups.FirstOrDefault(i => i.Condition == condition) ?? - outputMSBuildProject.AddItemGroup(); - itemGroup.Condition = condition; - - foreach (var frameworkAssembly in frameworkAssemblies) - { - _transformApplicator.Execute( - FrameworkDependencyTransform.Transform(frameworkAssembly), - itemGroup, - mergeExisting: true); - } - } } private void AddProjectDependenciesToNewItemGroup( @@ -202,10 +149,6 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules private AddItemTransform ProjectDependencyTransform => GetProjectDependencyTransfrom(); - private AddItemTransform HoistedDependencyTransform => - GetProjectDependencyTransfrom() - .WithMetadata("FromP2P", "true"); - private Func> GetProjectDependencyTransfrom => () => new AddItemTransform( "ProjectReference", @@ -225,13 +168,5 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules path => path, path => "", path => true); - - private AddItemTransform FrameworkDependencyTransform => - new AddItemTransform( - "Reference", - dep => dep.Name, - dep => "", - dep => true) - .WithMetadata("FromP2P", "true"); } } diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateProjectDependencies.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateProjectDependencies.cs index 52900923a..028bda3a8 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateProjectDependencies.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateProjectDependencies.cs @@ -18,7 +18,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests public class GivenThatIWantToMigrateProjectDependencies : TestBase { [Fact] - public void Project_dependencies_are_migrated_to_ProjectReference() + public void ProjectDependenciesAreMigratedToProjectReference() { var solutionDirectory = TestAssetsManager.CreateTestInstance("TestAppWithLibrary", callingMethod: "p").Path; @@ -41,7 +41,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_does_not_migrate_a_dependency_with_target_package_that_has_a_matching_project_as_a_ProjectReference() + public void ItDoesNotMigrateADependencyWithTargetPackageThatHasAMatchingProjectAsAProjectReference() { var testAssetsManager = GetTestGroupTestAssetsManager("NonRestoredTestProjects"); var solutionDirectory = @@ -62,7 +62,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void TFM_specific_Project_dependencies_are_migrated_to_ProjectReference_under_condition_ItemGroup() + public void TFMSpecificProjectDependenciesAreMigratedToProjectReferenceUnderConditionItemGroup() { var solutionDirectory = TestAssetsManager.CreateTestInstance("TestAppWithLibraryUnderTFM", callingMethod: "p").Path; @@ -85,7 +85,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_throws_when_project_dependency_is_unresolved() + public void ItThrowsWhenProjectDependencyIsUnresolved() { // No Lock file => unresolved var solutionDirectory = @@ -108,7 +108,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests [Theory] [InlineData(@"some/path/to.cSproj", new [] { @"some/path/to.cSproj" })] [InlineData(@"to.CSPROJ",new [] { @"to.CSPROJ" })] - public void It_migrates_csproj_ProjectReference_in_xproj(string projectReference, string[] expectedMigratedReferences) + public void ItMigratesCsprojProjectReferenceInXproj(string projectReference, string[] expectedMigratedReferences) { var xproj = ProjectRootElement.Create(); xproj.AddItem("ProjectReference", projectReference); @@ -137,7 +137,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_csproj_ProjectReference_in_xproj_including_condition_on_ProjectReference() + public void ItMigratesCsprojProjectReferenceInXprojIncludingConditionOnProjectReference() { var projectReference = "some/to.csproj"; var xproj = ProjectRootElement.Create(); @@ -171,7 +171,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_csproj_ProjectReference_in_xproj_including_condition_on_ProjectReference_parent() + public void ItMigratesCsprojProjectReferenceInXprojIncludingConditionOnProjectReferenceParent() { var projectReference = "some/to.csproj"; var xproj = ProjectRootElement.Create(); @@ -205,7 +205,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_csproj_ProjectReference_in_xproj_including_condition_on_ProjectReference_parent_and_item() + public void ItMigratesCsprojProjectReferenceInXprojIncludingConditionOnProjectReferenceParentAndItem() { var projectReference = "some/to.csproj"; var xproj = ProjectRootElement.Create(); @@ -240,17 +240,17 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_promotes_P2P_references_up_in_the_dependency_chain() + public void ItDoesNotPromoteP2PReferencesUpInTheDependencyChain() { var mockProj = MigrateProject("TestAppDependencyGraph", "ProjectA"); var projectReferences = mockProj.Items.Where( item => item.ItemType.Equals("ProjectReference", StringComparison.Ordinal)); - projectReferences.Count().Should().Be(7); + projectReferences.Count().Should().Be(2); } [Fact] - public void It_promotes_FrameworkAssemblies_from_P2P_references_up_in_the_dependency_chain() + public void ItDoesNotPromoteFrameworkAssembliesFromP2PReferencesUpInTheDependencyChain() { var solutionDirectory = TestAssets.Get(TestAssetKinds.DesktopTestProjects, "TestAppWithFrameworkAssemblies") .CreateInstance() @@ -269,32 +269,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests item => item.ItemType == "Reference" && item.Include == "System.ComponentModel.DataAnnotations" && item.Parent.Condition == " '$(TargetFramework)' == 'net451' "); - frameworkAssemblyReferences.Count().Should().Be(1); + frameworkAssemblyReferences.Count().Should().Be(0); } [Fact] - public void All_promoted_P2P_references_are_marked_with_a_FromP2P_attribute() - { - var expectedHoistedProjectReferences = new [] { - Path.Combine("..", "ProjectD", "ProjectD.csproj"), - Path.Combine("..", "ProjectE", "ProjectE.csproj"), - Path.Combine("..", "CsprojLibrary1", "CsprojLibrary1.csproj"), - Path.Combine("..", "CsprojLibrary2", "CsprojLibrary2.csproj"), - Path.Combine("..", "CsprojLibrary3", "CsprojLibrary3.csproj") - }; - - var mockProj = MigrateProject("TestAppDependencyGraph", "ProjectA"); - - var projectReferences = mockProj.Items - .Where(item => - item.ItemType == "ProjectReference" && item.GetMetadataWithName("FromP2P") != null) - .Select(i => i.Include); - - projectReferences.Should().BeEquivalentTo(expectedHoistedProjectReferences); - } - - [Fact] - public void All_non_promoted_P2P_references_are_not_marked_with_a_FromP2P_attribute() + public void NoP2PReferenceIsMarkedWithAFromP2PAttribute() { var expectedNonHoistedProjectReferences = new [] { Path.Combine("..", "ProjectB", "ProjectB.csproj"), @@ -305,14 +284,16 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var projectReferences = mockProj.Items .Where(item => - item.ItemType == "ProjectReference" && item.GetMetadataWithName("FromP2P") == null) - .Select(i => i.Include); + item.ItemType == "ProjectReference"); - projectReferences.Should().BeEquivalentTo(expectedNonHoistedProjectReferences); + projectReferences.Should().HaveCount(c => c == 2) + .And.OnlyContain(item => item.GetMetadataWithName("FromP2P") == null); + + projectReferences.Select(i => i.Include).Should().BeEquivalentTo(expectedNonHoistedProjectReferences); } [Fact] - public void It_migrates_unqualified_dependencies_as_ProjectReference_when_a_matching_project_is_found() + public void ItMigratesUnqualifiedDependenciesAsProjectReferenceWhenAMatchingProjectIsFound() { var mockProj = MigrateProject("TestAppWithUnqualifiedDependencies", "ProjectA"); var projectReferenceInclude = Path.Combine("..", "ProjectB", "ProjectB.csproj"); diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs index 30cb3cc22..98325b076 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs @@ -484,20 +484,7 @@ namespace Microsoft.DotNet.Migration.Tests Restore(projectDirectory, projectName); BuildMSBuild(projectDirectory, projectName); } - - [Fact] - public void ItFailsGracefullyWhenMigratingAppWithMissingDependency() - { - string projectName = "MigrateAppWithMissingDep"; - var projectDirectory = Path.Combine(GetTestGroupTestAssetsManager("NonRestoredTestProjects").CreateTestInstance(projectName).Path, "MyApp"); - - string migrationOutputFile = Path.Combine(projectDirectory, "migration-output.json"); - File.Exists(migrationOutputFile).Should().BeFalse(); - MigrateCommand.Run(new string[] { projectDirectory, "-r", migrationOutputFile, "--format-report-file-json" }).Should().NotBe(0); - File.Exists(migrationOutputFile).Should().BeTrue(); - File.ReadAllText(migrationOutputFile).Should().Contain("MIGRATE1018"); - } - + private void VerifyAutoInjectedDesktopReferences(string projectDirectory, string projectName, bool shouldBePresent) { if (projectName != null) From efe1b7b143bcefd50b5223c70a63d715f55110f2 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Wed, 28 Dec 2016 14:50:34 -0800 Subject: [PATCH 21/94] fix local build and ci build failures --- .../Assertions/StringAssertionsExtensions.cs | 10 ++++++++++ .../Msbuild.Tests.Utilities.csproj | 5 ++--- .../dotnet-add-p2p.Tests.csproj | 2 ++ .../GivenDotnetAddProj.cs | 14 ++++++------- ...ivenThatIWantToShowHelpForDotnetCommand.cs | 3 ++- .../GivenDotnetListP2Ps.cs | 14 ++++++------- .../dotnet-list-p2ps.Tests.csproj | 3 ++- .../GivenDotnetListProj.cs | 14 ++++++------- .../dotnet-remove-p2p.Tests.csproj | 2 ++ .../GivenDotnetRemoveProj.cs | 20 +++++++++---------- 10 files changed, 51 insertions(+), 36 deletions(-) diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs index 1b69b04c5..e0483c39a 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/StringAssertionsExtensions.cs @@ -24,5 +24,15 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(assertions); } + + public static AndConstraint ContainVisuallySameFragment(this StringAssertions assertions, string expected, string because = "", params object[] becauseArgs) + { + Execute.Assertion + .ForCondition(NormalizeLineEndings(assertions.Subject).Contains(NormalizeLineEndings(expected))) + .BecauseOf(because, becauseArgs) + .FailWith($"String \"{assertions.Subject}\" does not contain visually same fragment string \"{expected}\"."); + + return new AndConstraint(assertions); + } } } diff --git a/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj b/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj index 3c7f9fcb3..914e7441b 100644 --- a/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj +++ b/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj @@ -17,9 +17,8 @@ true - - true - + + true diff --git a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj index 13e5d50f0..545a42239 100644 --- a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj +++ b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj @@ -20,6 +20,8 @@ true + + true diff --git a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs index e84d1b90f..64f9a726c 100644 --- a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs +++ b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs @@ -36,7 +36,7 @@ Additional Arguments: var cmd = new DotnetCommand() .ExecuteWithCapturedOutput($"add project {helpArg}"); cmd.Should().Pass(); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Theory] @@ -72,7 +72,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"add {solutionName} project p.csproj"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Could not find solution or directory `{solutionName}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -91,7 +91,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"add InvalidSolution.sln project {projectToAdd}"); cmd.Should().Fail(); cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -111,7 +111,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"add project {projectToAdd}"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Invalid solution `{solutionPath}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -129,7 +129,7 @@ Additional Arguments: .ExecuteWithCapturedOutput(@"add App.sln project"); cmd.Should().Fail(); cmd.StdErr.Should().Be("You must specify at least one project to add."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -148,7 +148,7 @@ Additional Arguments: .ExecuteWithCapturedOutput(@"add project App.csproj"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Specified solution file {solutionPath + Path.DirectorySeparatorChar} does not exist, or there is no solution file in the directory."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -167,7 +167,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"add project {projectToAdd}"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Found more than one solution file in {projectDirectory + Path.DirectorySeparatorChar}. Please specify which one to use."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Theory] diff --git a/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs b/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs index 488686fe3..1c072eaf1 100644 --- a/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs +++ b/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs @@ -59,7 +59,8 @@ Advanced Commands: { var cmd = new DotnetCommand() .ExecuteWithCapturedOutput($"{helpArg}"); - cmd.Should().Pass().And.HaveStdOutContaining(HelpText); + cmd.Should().Pass(); + cmd.StdOut.Should().ContainVisuallySameFragment(HelpText); } } } diff --git a/test/dotnet-list-p2ps.Tests/GivenDotnetListP2Ps.cs b/test/dotnet-list-p2ps.Tests/GivenDotnetListP2Ps.cs index 29a099d86..75049a8f8 100644 --- a/test/dotnet-list-p2ps.Tests/GivenDotnetListP2Ps.cs +++ b/test/dotnet-list-p2ps.Tests/GivenDotnetListP2Ps.cs @@ -35,7 +35,7 @@ Options: { var cmd = new ListP2PsCommand().Execute(helpArg); cmd.Should().Pass(); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Theory] @@ -72,7 +72,7 @@ Options: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Could not find project or directory `{projName}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -87,7 +87,7 @@ Options: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be("Project `Broken/Broken.csproj` is invalid."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -101,7 +101,7 @@ Options: .Execute($"\"{setup.ValidRefCsprojRelToOtherProjPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Found more than one project in `{workingDir + Path.DirectorySeparatorChar}`. Please specify which one to use."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -114,7 +114,7 @@ Options: .Execute($"\"{setup.ValidRefCsprojPath}\""); cmd.ExitCode.Should().NotBe(0); cmd.StdErr.Should().Be($"Could not find any project in `{setup.TestRoot + Path.DirectorySeparatorChar}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -144,7 +144,7 @@ Options: .WithProject(lib.CsProjPath) .Execute(); cmd.Should().Pass(); - cmd.StdOut.Should().Be(OutputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(OutputText); } [Fact] @@ -169,7 +169,7 @@ Options: .WithProject(lib.CsProjPath) .Execute(); cmd.Should().Pass(); - cmd.StdOut.Should().Be(OutputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(OutputText); } private TestSetup Setup([System.Runtime.CompilerServices.CallerMemberName] string callingMethod = nameof(Setup), string identifier = "") diff --git a/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj b/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj index 0508d4a5e..c1d57e9ce 100644 --- a/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj +++ b/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj @@ -6,7 +6,6 @@ true dotnet-list-p2ps.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - $(DefineConstants);DISABLE_TRACE @@ -24,6 +23,8 @@ true + + diff --git a/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs b/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs index f639fd378..5def520b6 100644 --- a/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs +++ b/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs @@ -31,7 +31,7 @@ Options: var cmd = new DotnetCommand() .ExecuteWithCapturedOutput($"list projects {helpArg}"); cmd.Should().Pass(); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Theory] @@ -66,7 +66,7 @@ Options: .ExecuteWithCapturedOutput($"list {solutionName} projects"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Could not find solution or directory `{solutionName}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -84,7 +84,7 @@ Options: .ExecuteWithCapturedOutput("list InvalidSolution.sln projects"); cmd.Should().Fail(); cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -103,7 +103,7 @@ Options: .ExecuteWithCapturedOutput("list projects"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Invalid solution `{solutionFullPath}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -122,7 +122,7 @@ Options: .ExecuteWithCapturedOutput("list projects"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Specified solution file {solutionDir + Path.DirectorySeparatorChar} does not exist, or there is no solution file in the directory."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -140,7 +140,7 @@ Options: .ExecuteWithCapturedOutput("list projects"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Found more than one solution file in {projectDirectory + Path.DirectorySeparatorChar}. Please specify which one to use."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -179,7 +179,7 @@ Options: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput("list projects"); cmd.Should().Pass(); - cmd.StdOut.Should().Be(OutputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(OutputText); } } } diff --git a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj index ed48cbac9..48fc32042 100644 --- a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj +++ b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj @@ -23,6 +23,8 @@ true + + diff --git a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs index 9c5f674ca..5462eb6d1 100644 --- a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs +++ b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs @@ -8,7 +8,7 @@ using System; using System.IO; using Xunit; -namespace Microsoft.DotNet.Cli.Remove.P2P.Tests +namespace Microsoft.DotNet.Cli.Remove.Project.Tests { public class GivenDotnetRemoveProj : TestBase { @@ -34,7 +34,7 @@ Additional Arguments: var cmd = new DotnetCommand() .ExecuteWithCapturedOutput($"remove project {helpArg}"); cmd.Should().Pass(); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -70,7 +70,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"remove {solutionName} project p.csproj"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Could not find solution or directory `{solutionName}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -89,7 +89,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"remove InvalidSolution.sln project {projectToRemove}"); cmd.Should().Fail(); cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -109,7 +109,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Invalid solution `{solutionPath}`."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -127,7 +127,7 @@ Additional Arguments: .ExecuteWithCapturedOutput(@"remove App.sln project"); cmd.Should().Fail(); cmd.StdErr.Should().Be("You must specify at least one project to remove."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -146,7 +146,7 @@ Additional Arguments: .ExecuteWithCapturedOutput(@"remove project App.csproj"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Specified solution file {solutionPath + Path.DirectorySeparatorChar} does not exist, or there is no solution file in the directory."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -165,7 +165,7 @@ Additional Arguments: .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); cmd.Should().Fail(); cmd.StdErr.Should().Be($"Found more than one solution file in {projectDirectory + Path.DirectorySeparatorChar}. Please specify which one to use."); - cmd.StdOut.Should().Be(HelpText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } [Fact] @@ -237,7 +237,7 @@ Additional Arguments: string outputText = $@"Project reference `{projectToRemove}` removed. Project reference `{projectToRemove}` removed."; - cmd.StdOut.Should().Be(outputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(outputText); slnFile = SlnFile.Read(solutionPath); slnFile.Projects.Count.Should().Be(1); @@ -267,7 +267,7 @@ Project reference `{projectToRemove}` removed."; string outputText = $@"Project reference `idontexist.csproj` could not be found. Project reference `{projectToRemove}` removed. Project reference `idontexisteither.csproj` could not be found."; - cmd.StdOut.Should().Be(outputText); + cmd.StdOut.Should().BeVisuallyEquivalentTo(outputText); slnFile = SlnFile.Read(solutionPath); slnFile.Projects.Count.Should().Be(1); From 38bcc787fabe8a3e3dcf7511debc997a0a32374e Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Wed, 28 Dec 2016 13:05:24 -1000 Subject: [PATCH 22/94] Skip uploading archive if it already exists (#5170) * Skip uploading archive if it already exists * Adding a comment explaining the change --- .../Microsoft.DotNet.Cli.LzmaArchive.targets | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets b/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets index 3455a7cbd..e2b2bfbc0 100644 --- a/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets +++ b/build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets @@ -43,13 +43,20 @@ ContinueOnError="WarnAndContinue" /> + + false + + - - true - + + + + + + From fa675cb5e5cd050ee4a7867447272376c43091d3 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 28 Dec 2016 21:26:31 -0800 Subject: [PATCH 23/94] Updating the migrated tools version to 1.0.0-msbuild3-final. --- .../ConstantPackageVersions.cs | 10 +++++----- test/dotnet-migrate.Tests/NuGet.tempaspnetpatch.config | 1 + 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs b/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs index 12f891dde..32aefb72a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/ConstantPackageVersions.cs @@ -5,13 +5,13 @@ namespace Microsoft.DotNet.ProjectJsonMigration { internal class ConstantPackageVersions { - public const string AspNetToolsVersion = "1.0.0-msbuild1-final"; - public const string TestSdkPackageVersion = "15.0.0-preview-20161024-02"; + public const string AspNetToolsVersion = "1.0.0-msbuild3-final"; + public const string TestSdkPackageVersion = "15.0.0-preview-20161227-02"; public const string XUnitPackageVersion = "2.2.0-beta4-build3444"; public const string XUnitRunnerPackageVersion = "2.2.0-beta4-build1194"; - public const string MstestTestAdapterVersion = "1.1.3-preview"; - public const string MstestTestFrameworkVersion = "1.0.4-preview"; + public const string MstestTestAdapterVersion = "1.1.8-rc"; + public const string MstestTestFrameworkVersion = "1.0.8-rc"; public const string BundleMinifierToolVersion = "2.2.301"; - public const string WebSdkPackageVersion = "1.0.0-alpha-20161117-1-119" ; + public const string WebSdkPackageVersion = "1.0.0-alpha-20161205-1-154" ; } } \ No newline at end of file diff --git a/test/dotnet-migrate.Tests/NuGet.tempaspnetpatch.config b/test/dotnet-migrate.Tests/NuGet.tempaspnetpatch.config index 41ba66505..8bfa9c1ed 100644 --- a/test/dotnet-migrate.Tests/NuGet.tempaspnetpatch.config +++ b/test/dotnet-migrate.Tests/NuGet.tempaspnetpatch.config @@ -4,6 +4,7 @@ + From 1f3356b330fe81ff54b715634cdceb1928484886 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 28 Dec 2016 22:03:18 -0800 Subject: [PATCH 24/94] Copying the nuget.config template for the publish web app test, so that the new tools packages can be resolved. --- test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs index 98325b076..d6ded40b4 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs @@ -136,6 +136,8 @@ namespace Microsoft.DotNet.Migration.Tests .WithSourceFiles(); var projectDirectory = testInstance.Root.FullName; + + File.Copy("NuGet.tempaspnetpatch.config", Path.Combine(projectDirectory, "NuGet.Config")); MigrateProject(new [] { projectDirectory }); From 24b5e00d1493bab0b7cb255540a2ccdc1296ba36 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 28 Dec 2016 23:13:02 -0800 Subject: [PATCH 25/94] Updating the expected versions in the tests for the test sdk and the test adapter and framework. --- .../GivenThatIWantToMigratePackageDependencies.cs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs index 738222a81..dcffe1214 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs @@ -250,7 +250,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().NotContain( @@ -283,7 +283,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02") && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02") && i.GetMetadataWithName("Version").ExpressedAsAttribute); mockProj.Items.Should().ContainSingle( @@ -325,7 +325,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( @@ -364,19 +364,19 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( i => (i.Include == "MSTest.TestAdapter" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "1.1.3-preview" && + i.GetMetadataWithName("Version").Value == "1.1.8-rc" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( i => (i.Include == "MSTest.TestFramework" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "1.0.4-preview" && + i.GetMetadataWithName("Version").Value == "1.0.8-rc" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().NotContain( From 10f52d9a15c37b8421c2c7a989818e8d9ca9bfdf Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Thu, 29 Dec 2016 09:21:55 -1000 Subject: [PATCH 26/94] Improve error messages for why a solution failed to load (#5176) * WIP Improve sln reader/writer error messages * Added more tests * Fix a few tests --- .../LocalizableStrings.cs | 8 + .../SlnFile.cs | 63 ++++-- src/dotnet/CommonLocalizableStrings.cs | 2 +- src/dotnet/SlnFileFactory.cs | 7 +- ...Microsoft.DotNet.Cli.Sln.Internal.Tests.cs | 183 +++++++++++++++++- .../GivenDotnetAddProj.cs | 4 +- .../GivenDotnetListProj.cs | 4 +- .../GivenDotnetRemoveProj.cs | 4 +- 8 files changed, 242 insertions(+), 33 deletions(-) diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/LocalizableStrings.cs b/src/Microsoft.DotNet.Cli.Sln.Internal/LocalizableStrings.cs index 24e940b70..3e696ecde 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/LocalizableStrings.cs +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/LocalizableStrings.cs @@ -2,6 +2,14 @@ { internal class LocalizableStrings { + // {0} is the line number + // {1} is the error message details + public const string ErrorMessageFormatString = "Invalid format in line {0}: {1}"; + + public const string ProjectParsingErrorFormatString = "Project section is missing '{0}' when parsing the line starting at position {1}"; + + public const string InvalidPropertySetFormatString = "Property set is missing '{0}'"; + public const string GlobalSectionMoreThanOnceError = "Global section specified more than once"; public const string GlobalSectionNotClosedError = "Global section not closed"; diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs b/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs index 51034eabb..7eda0d91e 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/SlnFile.cs @@ -120,6 +120,8 @@ namespace Microsoft.DotNet.Cli.Sln.Internal private void Read(TextReader reader) { + const string HeaderPrefix = "Microsoft Visual Studio Solution File, Format Version "; + string line; int curLineNum = 0; bool globalFound = false; @@ -129,14 +131,16 @@ namespace Microsoft.DotNet.Cli.Sln.Internal { curLineNum++; line = line.Trim(); - if (line.StartsWith("Microsoft Visual Studio Solution File", StringComparison.Ordinal)) + if (line.StartsWith(HeaderPrefix, StringComparison.Ordinal)) { - int i = line.LastIndexOf(' '); - if (i == -1) + if (line.Length <= HeaderPrefix.Length) { - throw new InvalidSolutionFormatException(curLineNum); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.FileHeaderMissingError); } - FormatVersion = line.Substring(i + 1); + + FormatVersion = line.Substring(HeaderPrefix.Length); _prefixBlankLines = curLineNum - 1; } if (line.StartsWith("# ", StringComparison.Ordinal)) @@ -157,7 +161,9 @@ namespace Microsoft.DotNet.Cli.Sln.Internal { if (globalFound) { - throw new InvalidSolutionFormatException(curLineNum, LocalizableStrings.GlobalSectionMoreThanOnceError); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.GlobalSectionMoreThanOnceError); } globalFound = true; while ((line = reader.ReadLine()) != null) @@ -181,7 +187,9 @@ namespace Microsoft.DotNet.Cli.Sln.Internal } if (line == null) { - throw new InvalidSolutionFormatException(curLineNum, LocalizableStrings.GlobalSectionNotClosedError); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.GlobalSectionNotClosedError); } } else if (line.IndexOf('=') != -1) @@ -191,7 +199,9 @@ namespace Microsoft.DotNet.Cli.Sln.Internal } if (FormatVersion == null) { - throw new InvalidSolutionFormatException(curLineNum, LocalizableStrings.FileHeaderMissingError); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.FileHeaderMissingError); } } @@ -331,15 +341,20 @@ namespace Microsoft.DotNet.Cli.Sln.Internal } } - throw new InvalidSolutionFormatException(curLineNum, LocalizableStrings.ProjectSectionNotClosedError); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.ProjectSectionNotClosedError); } private void FindNext(int ln, string line, ref int i, char c) { + var inputIndex = i; i = line.IndexOf(c, i); if (i == -1) { - throw new InvalidSolutionFormatException(ln); + throw new InvalidSolutionFormatException( + ln, + string.Format(LocalizableStrings.ProjectParsingErrorFormatString, c, inputIndex)); } } @@ -481,7 +496,9 @@ namespace Microsoft.DotNet.Cli.Sln.Internal { return SlnSectionType.PostProcess; } - throw new InvalidSolutionFormatException(curLineNum, String.Format(LocalizableStrings.InvalidSectionTypeError, s)); + throw new InvalidSolutionFormatException( + curLineNum, + String.Format(LocalizableStrings.InvalidSectionTypeError, s)); } private string FromSectionType(bool isProjectSection, SlnSectionType type) @@ -502,13 +519,17 @@ namespace Microsoft.DotNet.Cli.Sln.Internal int k = line.IndexOf('('); if (k == -1) { - throw new InvalidSolutionFormatException(curLineNum, LocalizableStrings.SectionIdMissingError); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.SectionIdMissingError); } var tag = line.Substring(0, k).Trim(); var k2 = line.IndexOf(')', k); if (k2 == -1) { - throw new InvalidSolutionFormatException(curLineNum); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.SectionIdMissingError); } Id = line.Substring(k + 1, k2 - k - 1); @@ -531,7 +552,9 @@ namespace Microsoft.DotNet.Cli.Sln.Internal } if (line == null) { - throw new InvalidSolutionFormatException(curLineNum, LocalizableStrings.ClosingSectionTagNotFoundError); + throw new InvalidSolutionFormatException( + curLineNum, + LocalizableStrings.ClosingSectionTagNotFoundError); } } @@ -550,7 +573,9 @@ namespace Microsoft.DotNet.Cli.Sln.Internal var i = line.IndexOf('.'); if (i == -1) { - throw new InvalidSolutionFormatException(_baseIndex + n); + throw new InvalidSolutionFormatException( + _baseIndex + n, + string.Format(LocalizableStrings.InvalidPropertySetFormatString, '.')); } var id = line.Substring(0, i); if (curSet == null || id != curSet.Id) @@ -1141,12 +1166,8 @@ namespace Microsoft.DotNet.Cli.Sln.Internal public class InvalidSolutionFormatException : Exception { - public InvalidSolutionFormatException(int line) : base("Invalid format in line " + line) - { - } - - public InvalidSolutionFormatException(int line, string msg) - : base("Invalid format in line " + line + ": " + msg) + public InvalidSolutionFormatException(int line, string details) + : base(string.Format(LocalizableStrings.ErrorMessageFormatString, line, details)) { } } diff --git a/src/dotnet/CommonLocalizableStrings.cs b/src/dotnet/CommonLocalizableStrings.cs index f64bf0fb6..135029829 100644 --- a/src/dotnet/CommonLocalizableStrings.cs +++ b/src/dotnet/CommonLocalizableStrings.cs @@ -105,7 +105,7 @@ namespace Microsoft.DotNet.Tools public const string CouldNotFindSolutionIn = "Specified solution file {0} does not exist, or there is no solution file in the directory."; public const string CouldNotFindSolutionOrDirectory = "Could not find solution or directory `{0}`."; public const string MoreThanOneSolutionInDirectory = "Found more than one solution file in {0}. Please specify which one to use."; - public const string InvalidSolution = "Invalid solution `{0}`."; + public const string InvalidSolutionFormatString = "Invalid solution `{0}`. {1}"; // {0} is the solution path, {1} is already localized details on the failure public const string SolutionDoesNotExist = "Specified solution file {0} does not exist, or there is no solution file in the directory."; /// add p2p diff --git a/src/dotnet/SlnFileFactory.cs b/src/dotnet/SlnFileFactory.cs index 0ae26f317..e824bfd67 100644 --- a/src/dotnet/SlnFileFactory.cs +++ b/src/dotnet/SlnFileFactory.cs @@ -30,9 +30,12 @@ namespace Microsoft.DotNet.Tools.Common { slnFile = SlnFile.Read(solutionPath); } - catch + catch (InvalidSolutionFormatException e) { - throw new GracefulException(CommonLocalizableStrings.InvalidSolution, solutionPath); + throw new GracefulException( + CommonLocalizableStrings.InvalidSolutionFormatString, + solutionPath, + e.Message); } return slnFile; } diff --git a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs index b5f2c5a13..1fb96775e 100644 --- a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs +++ b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.cs @@ -276,11 +276,13 @@ EndGlobal .Should().Be(SolutionModified); } - [Fact] - public void WhenGivenAnSolutionWithMissingHeaderItThrows() + [Theory] + [InlineData("Invalid Solution")] + [InlineData("Microsoft Visual Studio Solution File, Format Version ")] + public void WhenGivenASolutionWithMissingHeaderItThrows(string fileContents) { var tmpFile = Temp.CreateFile(); - tmpFile.WriteAllText("Invalid Solution"); + tmpFile.WriteAllText(fileContents); Action action = () => { @@ -290,5 +292,180 @@ EndGlobal action.ShouldThrow() .WithMessage("Invalid format in line 1: File header is missing"); } + + [Fact] + public void WhenGivenASolutionWithMultipleGlobalSectionsItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Global +EndGlobal +Global +EndGlobal +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 5: Global section specified more than once"); + } + + [Fact] + public void WhenGivenASolutionWithGlobalSectionNotClosedItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Global +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 3: Global section not closed"); + } + + [Fact] + public void WhenGivenASolutionWithProjectSectionNotClosedItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App\App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 3: Project section not closed"); + } + + [Fact] + public void WhenGivenASolutionWithInvalidProjectSectionItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Project""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App\App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +"; + + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 3: Project section is missing '(' when parsing the line starting at position 0"); + } + + [Fact] + public void WhenGivenASolutionWithInvalidSectionTypeItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Global + GlobalSection(SolutionConfigurationPlatforms) = thisIsUnknown + EndGlobalSection +EndGlobal +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 4: Invalid section type: thisIsUnknown"); + } + + [Fact] + public void WhenGivenASolutionWithMissingSectionIdTypeItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Global + GlobalSection = preSolution + EndGlobalSection +EndGlobal +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 4: Section id missing"); + } + + [Fact] + public void WhenGivenASolutionWithSectionNotClosedItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution +EndGlobal +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + SlnFile.Read(tmpFile.Path); + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 6: Closing section tag not found"); + } + + [Fact] + public void WhenGivenASolutionWithInvalidPropertySetItThrows() + { + const string SolutionFile = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +Project(""{7072A694-548F-4CAE-A58F-12D257D5F486}"") = ""AppModified"", ""AppModified\AppModified.csproj"", ""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"" +EndProject +Global + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486} Debug|Any CPU ActiveCfg = Debug|Any CPU + EndGlobalSection +EndGlobal +"; + var tmpFile = Temp.CreateFile(); + tmpFile.WriteAllText(SolutionFile); + + Action action = () => + { + var slnFile = SlnFile.Read(tmpFile.Path); + if (slnFile.ProjectConfigurationsSection.Count == 0) + { + // Need to force loading of nested property sets + } + }; + + action.ShouldThrow() + .WithMessage("Invalid format in line 7: Property set is missing '.'"); + } } } diff --git a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs index 64f9a726c..7ea309909 100644 --- a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs +++ b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs @@ -90,7 +90,7 @@ Additional Arguments: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput($"add InvalidSolution.sln project {projectToAdd}"); cmd.Should().Fail(); - cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`."); + cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`. Invalid format in line 1: File header is missing"); cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } @@ -110,7 +110,7 @@ Additional Arguments: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput($"add project {projectToAdd}"); cmd.Should().Fail(); - cmd.StdErr.Should().Be($"Invalid solution `{solutionPath}`."); + cmd.StdErr.Should().Be($"Invalid solution `{solutionPath}`. Invalid format in line 1: File header is missing"); cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } diff --git a/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs b/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs index 5def520b6..877450467 100644 --- a/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs +++ b/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs @@ -83,7 +83,7 @@ Options: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput("list InvalidSolution.sln projects"); cmd.Should().Fail(); - cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`."); + cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`. Invalid format in line 1: File header is missing"); cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } @@ -102,7 +102,7 @@ Options: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput("list projects"); cmd.Should().Fail(); - cmd.StdErr.Should().Be($"Invalid solution `{solutionFullPath}`."); + cmd.StdErr.Should().Be($"Invalid solution `{solutionFullPath}`. Invalid format in line 1: File header is missing"); cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } diff --git a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs index 5462eb6d1..c9da242d2 100644 --- a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs +++ b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs @@ -88,7 +88,7 @@ Additional Arguments: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput($"remove InvalidSolution.sln project {projectToRemove}"); cmd.Should().Fail(); - cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`."); + cmd.StdErr.Should().Be("Invalid solution `InvalidSolution.sln`. Invalid format in line 1: File header is missing"); cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } @@ -108,7 +108,7 @@ Additional Arguments: .WithWorkingDirectory(projectDirectory) .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); cmd.Should().Fail(); - cmd.StdErr.Should().Be($"Invalid solution `{solutionPath}`."); + cmd.StdErr.Should().Be($"Invalid solution `{solutionPath}`. Invalid format in line 1: File header is missing"); cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } From 941575d18826f2ed78022be302d039b5fab35c0e Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Thu, 29 Dec 2016 14:34:24 -0800 Subject: [PATCH 27/94] Remove cross project compile include on DotnetFiles.cs --- src/{dotnet => Microsoft.DotNet.Cli.Utils}/DotnetFiles.cs | 4 ++-- src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs | 2 +- .../Microsoft.DotNet.Cli.Utils.Tests.csproj | 1 - .../Microsoft.DotNet.Tools.Tests.Utilities.csproj | 1 - 4 files changed, 3 insertions(+), 5 deletions(-) rename src/{dotnet => Microsoft.DotNet.Cli.Utils}/DotnetFiles.cs (93%) diff --git a/src/dotnet/DotnetFiles.cs b/src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs similarity index 93% rename from src/dotnet/DotnetFiles.cs rename to src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs index d4212fb6a..b27aec0a2 100644 --- a/src/dotnet/DotnetFiles.cs +++ b/src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs @@ -9,7 +9,7 @@ using Microsoft.DotNet.PlatformAbstractions; namespace Microsoft.DotNet.Cli { - internal static class DotnetFiles + public static class DotnetFiles { private static string SdkRootFolder => Path.Combine(typeof(DotnetFiles).GetTypeInfo().Assembly.Location, ".."); @@ -21,7 +21,7 @@ namespace Microsoft.DotNet.Cli /// public static string VersionFile => Path.GetFullPath(Path.Combine(SdkRootFolder, ".version")); - internal static DotnetVersionFile VersionFileObject + public static DotnetVersionFile VersionFileObject { get { return s_versionFileObject.Value; } } diff --git a/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs b/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs index 1f76067f2..ca8b981b3 100644 --- a/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs +++ b/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs @@ -6,7 +6,7 @@ using System.IO; namespace Microsoft.DotNet.Cli.Utils { - internal class DotnetVersionFile + public class DotnetVersionFile { public bool Exists { get; set; } diff --git a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj index f6a081999..60b641ed6 100644 --- a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj @@ -13,7 +13,6 @@ - diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj b/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj index 84ed8512e..88dd86b90 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj @@ -13,7 +13,6 @@ - From 746d92337a3af9abb238d8e2f470d4f708d34935 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Thu, 29 Dec 2016 15:54:28 -0800 Subject: [PATCH 28/94] fix build errors and remove cross project cs dependency in update-dependencies.csproj --- .../update-dependencies/update-dependencies.csproj | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/build_projects/update-dependencies/update-dependencies.csproj b/build_projects/update-dependencies/update-dependencies.csproj index e84fac8ec..982b5adb9 100644 --- a/build_projects/update-dependencies/update-dependencies.csproj +++ b/build_projects/update-dependencies/update-dependencies.csproj @@ -11,11 +11,14 @@ - + + + + 1.0.0 From b813695fc06157812a87adf6623ad5b9cd5e6e41 Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Thu, 29 Dec 2016 15:59:49 -0800 Subject: [PATCH 29/94] remove cross project cs dependencies from dotnet-cli-build.csproj --- .../dotnet-cli-build/dotnet-cli-build.csproj | 11 +++++++---- .../Publishing/AzurePublisher.cs | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/build_projects/dotnet-cli-build/dotnet-cli-build.csproj b/build_projects/dotnet-cli-build/dotnet-cli-build.csproj index b732f7539..39f34265a 100644 --- a/build_projects/dotnet-cli-build/dotnet-cli-build.csproj +++ b/build_projects/dotnet-cli-build/dotnet-cli-build.csproj @@ -9,6 +9,13 @@ bin\$(Configuration) $(PackageTargetFallback);portable-net45+win8+wp8+wpa81 + + + + + + + 1.6.0 @@ -47,8 +54,4 @@ 1.0.1-beta-000933 - - - - \ No newline at end of file diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs index ff102bf0d..b9e17e09a 100644 --- a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs @@ -66,7 +66,7 @@ namespace Microsoft.DotNet.Cli.Build { string url = CalculateRelativePathForFile(file, product, version); CloudBlockBlob blob = _blobContainer.GetBlockBlobReference(url); - blob.UploadFromFileAsync(file).Wait(); + blob.UploadFromFileAsync(file, FileMode.Open).Wait(); SetBlobPropertiesBasedOnFileType(blob); return url; } From 8d86e14d445dbd4ee7ff2efc869c03fd46c310f6 Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Fri, 30 Dec 2016 11:24:03 +0530 Subject: [PATCH 30/94] Added support for passing runsettings options through command line after -- --- build/Microsoft.DotNet.Cli.Compile.targets | 2 +- .../dotnet-test/LocalizableStrings.cs | 2 +- src/dotnet/commands/dotnet-test/Program.cs | 34 +++++++++++++-- ...enThatIWantToMigratePackageDependencies.cs | 8 ++-- ...enDotnetTestBuildsAndRunsTestfromCsproj.cs | 43 ++++++++++++++++++- 5 files changed, 78 insertions(+), 11 deletions(-) diff --git a/build/Microsoft.DotNet.Cli.Compile.targets b/build/Microsoft.DotNet.Cli.Compile.targets index bdba43bc0..2029fa416 100644 --- a/build/Microsoft.DotNet.Cli.Compile.targets +++ b/build/Microsoft.DotNet.Cli.Compile.targets @@ -98,7 +98,7 @@ - + diff --git a/src/dotnet/commands/dotnet-test/LocalizableStrings.cs b/src/dotnet/commands/dotnet-test/LocalizableStrings.cs index d6fea1f23..71b08ef6f 100644 --- a/src/dotnet/commands/dotnet-test/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-test/LocalizableStrings.cs @@ -32,7 +32,7 @@ public const string CmdLoggerOption = "LoggerUri/FriendlyName"; public const string CmdLoggerDescription = @"Specify a logger for test results. - Example: --logger:trx"; + Example: --logger ""trx[;LogFileName=]"""; public const string CmdConfiguration = "CONFIGURATION"; diff --git a/src/dotnet/commands/dotnet-test/Program.cs b/src/dotnet/commands/dotnet-test/Program.cs index cfe30728c..2d4e1c36c 100644 --- a/src/dotnet/commands/dotnet-test/Program.cs +++ b/src/dotnet/commands/dotnet-test/Program.cs @@ -23,7 +23,7 @@ namespace Microsoft.DotNet.Tools.Test FullName = LocalizableStrings.AppFullName, Description = LocalizableStrings.AppDescription, HandleRemainingArguments = true, - ArgumentSeparatorHelpText = HelpMessageStrings.MSBuildAdditionalArgsHelpText + ArgumentSeparatorHelpText = HelpMessageStrings.MSBuildAdditionalArgsHelpText }; cmd.HelpOption("-h|--help"); @@ -116,7 +116,7 @@ namespace Microsoft.DotNet.Tools.Test if (loggerOption.HasValue()) { - msbuildArgs.Add($"/p:VSTestLogger={string.Join(";", loggerOption.Values)}"); + msbuildArgs.Add($"/p:VSTestLogger={string.Join(";", GetSemiColonEscapedArgs(loggerOption.Values))}"); } if (configurationOption.HasValue()) @@ -155,7 +155,7 @@ namespace Microsoft.DotNet.Tools.Test string defaultproject = GetSingleTestProjectToRunTestIfNotProvided(argRoot.Value, cmd.RemainingArguments); - if(!string.IsNullOrEmpty(defaultproject)) + if (!string.IsNullOrEmpty(defaultproject)) { msbuildArgs.Add(defaultproject); } @@ -166,7 +166,11 @@ namespace Microsoft.DotNet.Tools.Test } // Add remaining arguments that the parser did not understand, - msbuildArgs.AddRange(cmd.RemainingArguments); + if (cmd.RemainingArguments != null && cmd.RemainingArguments.Count > 0) + { + var arr = GetSemiColonEscapedArgs(cmd.RemainingArguments); + msbuildArgs.Add(string.Format("/p:VSTestCLIRunSettings=\"{0}\"", string.Join(";", arr))); + } return new MSBuildForwardingApp(msbuildArgs).Execute(); }); @@ -242,5 +246,27 @@ namespace Microsoft.DotNet.Tools.Test return projectFiles[0]; } + + private static string[] GetSemiColonEscapedArgs(List args) + { + int counter = 0; + string[] array = new string[args.Count]; + + foreach (string arg in args) + { + if (arg.IndexOf(";") != -1) + { + array[counter] = arg.Replace(";", "%3b"); + } + else + { + array[counter] = arg; + } + + counter++; + } + + return array; + } } } diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs index 738222a81..a8f9b5135 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs @@ -250,7 +250,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().NotContain( @@ -283,7 +283,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02") && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02") && i.GetMetadataWithName("Version").ExpressedAsAttribute); mockProj.Items.Should().ContainSingle( @@ -325,7 +325,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( @@ -364,7 +364,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( diff --git a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs index 9a06b5d4f..4a41e4819 100644 --- a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs +++ b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs @@ -101,7 +101,7 @@ namespace Microsoft.DotNet.Cli.Test.Tests [Fact] public void TestWillCreateTrxLogger() - { + { // Copy VSTestDotNetCore project in output directory of project dotnet-vstest.Tests string testAppName = "VSTestDotNetCore"; TestInstance testInstance = TestAssetsManager.CreateTestInstance(testAppName); @@ -140,6 +140,47 @@ namespace Microsoft.DotNet.Cli.Test.Tests } } + [Fact] + public void ItCreatesTrxReportInTheSpecifiedResultsDirectory() + { + // Copy VSTestDotNetCore project in output directory of project dotnet-vstest.Tests + string testAppName = "VSTestDotNetCore"; + TestInstance testInstance = TestAssetsManager.CreateTestInstance(testAppName); + + string testProjectDirectory = testInstance.TestRoot; + + // Restore project VSTestDotNetCore + new RestoreCommand() + .WithWorkingDirectory(testProjectDirectory) + .Execute() + .Should() + .Pass(); + + string trxLoggerDirectory = Path.Combine(testProjectDirectory, "ResultsDirectory"); + + // Delete trxLoggerDirectory if it exist + if (Directory.Exists(trxLoggerDirectory)) + { + Directory.Delete(trxLoggerDirectory, true); + } + + // Call test with logger enable + CommandResult result = new DotnetTestCommand() + .WithWorkingDirectory(testProjectDirectory) + .ExecuteWithCapturedOutput(" --logger \"trx;logfilename=custom.trx\" -- RunConfiguration.ResultsDirectory=" + trxLoggerDirectory); + + // Verify + String[] trxFiles = Directory.GetFiles(trxLoggerDirectory, "*.trx"); + Assert.Equal(1, trxFiles.Length); + result.StdOut.Should().Contain(trxFiles[0]); + + // Cleanup trxLoggerDirectory if it exist + if (Directory.Exists(trxLoggerDirectory)) + { + Directory.Delete(trxLoggerDirectory, true); + } + } + [Fact(Skip = "https://github.com/dotnet/cli/issues/5035")] public void ItBuildsAndTestsAppWhenRestoringToSpecificDirectory() { From 245727183c744d1c7260178d7cfed956f84dc290 Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Fri, 30 Dec 2016 15:34:00 +0530 Subject: [PATCH 31/94] Handling both mstest args and runsettings options after -- --- .../dotnet-test/LocalizableStrings.cs | 2 + src/dotnet/commands/dotnet-test/Program.cs | 44 ++++++++++++------- ...enThatIWantToMigratePackageDependencies.cs | 22 +++++----- ...enDotnetTestBuildsAndRunsTestfromCsproj.cs | 2 +- 4 files changed, 42 insertions(+), 28 deletions(-) diff --git a/src/dotnet/commands/dotnet-test/LocalizableStrings.cs b/src/dotnet/commands/dotnet-test/LocalizableStrings.cs index 71b08ef6f..0a1ed1d70 100644 --- a/src/dotnet/commands/dotnet-test/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-test/LocalizableStrings.cs @@ -52,5 +52,7 @@ Logs are written to the provided file."; public const string CmdNoBuildDescription = @"Do not build project before testing."; + + public const string RunSettingsArgsHelpText = @"Any extra options that should be passed to MSBuild or adapter. See 'dotnet msbuild -h' and 'dotnet vstest --help' for available options."; } } diff --git a/src/dotnet/commands/dotnet-test/Program.cs b/src/dotnet/commands/dotnet-test/Program.cs index 2d4e1c36c..0e2fca247 100644 --- a/src/dotnet/commands/dotnet-test/Program.cs +++ b/src/dotnet/commands/dotnet-test/Program.cs @@ -23,7 +23,8 @@ namespace Microsoft.DotNet.Tools.Test FullName = LocalizableStrings.AppFullName, Description = LocalizableStrings.AppDescription, HandleRemainingArguments = true, - ArgumentSeparatorHelpText = HelpMessageStrings.MSBuildAdditionalArgsHelpText + ArgumentSeparatorHelpText = LocalizableStrings.RunSettingsArgsHelpText, + AllowArgumentSeparator = true }; cmd.HelpOption("-h|--help"); @@ -165,13 +166,16 @@ namespace Microsoft.DotNet.Tools.Test msbuildArgs.Add(argRoot.Value); } - // Add remaining arguments that the parser did not understand, + // Get runsetings options specified after -- if (cmd.RemainingArguments != null && cmd.RemainingArguments.Count > 0) { - var arr = GetSemiColonEscapedArgs(cmd.RemainingArguments); - msbuildArgs.Add(string.Format("/p:VSTestCLIRunSettings=\"{0}\"", string.Join(";", arr))); + var runSettingsOptions = GetRunSettingsOptions(cmd.RemainingArguments); + msbuildArgs.Add(string.Format("/p:VSTestCLIRunSettings=\"{0}\"", string.Join(";", runSettingsOptions))); } + // Add remaining arguments that the parser did not understand, + msbuildArgs.AddRange(cmd.RemainingArguments); + return new MSBuildForwardingApp(msbuildArgs).Execute(); }); @@ -247,26 +251,34 @@ namespace Microsoft.DotNet.Tools.Test return projectFiles[0]; } - private static string[] GetSemiColonEscapedArgs(List args) + private static string[] GetRunSettingsOptions(List remainingArgs) { int counter = 0; - string[] array = new string[args.Count]; + List runsettingsArgs = new List(); + List argsToRemove = new List(); - foreach (string arg in args) + foreach (string arg in remainingArgs) { - if (arg.IndexOf(";") != -1) + // MSBuild args starts with /, runsettings args starts with letter. + if (char.IsLetter(arg[0])) { - array[counter] = arg.Replace(";", "%3b"); + runsettingsArgs.Add(GetSemiColonEsacpedstring(arg)); + argsToRemove.Add(arg); } - else - { - array[counter] = arg; - } - - counter++; } - return array; + foreach (string arg in argsToRemove) + { + remainingArgs.Remove(arg); + } + + return runsettingsArgs.ToArray(); } + + private static string GetSemiColonEsacpedstring(string arg) + { + return string.IsNullOrEmpty(arg) ? arg : arg.Replace(";", "%3b"); + } + } } diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs index a8f9b5135..66165d8ec 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs @@ -24,8 +24,8 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests ""BPackage"" : ""1.0.0"" } }"); - - EmitsPackageReferences(mockProj, Tuple.Create("APackage", "1.0.0-preview", ""), Tuple.Create("BPackage", "1.0.0", "")); + + EmitsPackageReferences(mockProj, Tuple.Create("APackage", "1.0.0-preview", ""), Tuple.Create("BPackage", "1.0.0", "")); } [Fact] @@ -158,8 +158,8 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests ""BPackage"" : ""1.0.0"" } }"); - - EmitsToolReferences(mockProj, Tuple.Create("APackage", "1.0.0-preview"), Tuple.Create("BPackage", "1.0.0")); + + EmitsToolReferences(mockProj, Tuple.Create("APackage", "1.0.0-preview"), Tuple.Create("BPackage", "1.0.0")); } [Fact] @@ -250,7 +250,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().NotContain( @@ -281,19 +281,19 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests }"); mockProj.Items.Should().ContainSingle( - i => (i.Include == "Microsoft.NET.Test.Sdk" && + i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02") && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02") && i.GetMetadataWithName("Version").ExpressedAsAttribute); mockProj.Items.Should().ContainSingle( - i => (i.Include == "xunit" && + i => (i.Include == "xunit" && i.ItemType == "PackageReference" && i.GetMetadataWithName("Version").Value == "2.2.0-beta4-build3444" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( - i => (i.Include == "xunit.runner.visualstudio" && + i => (i.Include == "xunit.runner.visualstudio" && i.ItemType == "PackageReference" && i.GetMetadataWithName("Version").Value == "2.2.0-beta4-build1194" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); @@ -325,7 +325,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( @@ -364,7 +364,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Should().ContainSingle( i => (i.Include == "Microsoft.NET.Test.Sdk" && i.ItemType == "PackageReference" && - i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161227-02" && + i.GetMetadataWithName("Version").Value == "15.0.0-preview-20161024-02" && i.GetMetadataWithName("Version").ExpressedAsAttribute)); mockProj.Items.Should().ContainSingle( diff --git a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs index 4a41e4819..39f42005f 100644 --- a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs +++ b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs @@ -167,7 +167,7 @@ namespace Microsoft.DotNet.Cli.Test.Tests // Call test with logger enable CommandResult result = new DotnetTestCommand() .WithWorkingDirectory(testProjectDirectory) - .ExecuteWithCapturedOutput(" --logger \"trx;logfilename=custom.trx\" -- RunConfiguration.ResultsDirectory=" + trxLoggerDirectory); + .ExecuteWithCapturedOutput("--logger \"trx;logfilename=custom.trx\" -- RunConfiguration.ResultsDirectory=" + trxLoggerDirectory); // Verify String[] trxFiles = Directory.GetFiles(trxLoggerDirectory, "*.trx"); From 19d919a640932a2ae841519e28ca806bc0d2f7ea Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Fri, 30 Dec 2016 15:47:15 +0530 Subject: [PATCH 32/94] Added method GetSemiColonEscapedArgs --- src/dotnet/commands/dotnet-test/Program.cs | 22 ++++++++++++++++++- ...enDotnetTestBuildsAndRunsTestfromCsproj.cs | 4 ++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/dotnet/commands/dotnet-test/Program.cs b/src/dotnet/commands/dotnet-test/Program.cs index 0e2fca247..a00055452 100644 --- a/src/dotnet/commands/dotnet-test/Program.cs +++ b/src/dotnet/commands/dotnet-test/Program.cs @@ -253,7 +253,6 @@ namespace Microsoft.DotNet.Tools.Test private static string[] GetRunSettingsOptions(List remainingArgs) { - int counter = 0; List runsettingsArgs = new List(); List argsToRemove = new List(); @@ -280,5 +279,26 @@ namespace Microsoft.DotNet.Tools.Test return string.IsNullOrEmpty(arg) ? arg : arg.Replace(";", "%3b"); } + private static string[] GetSemiColonEscapedArgs(List args) + { + int counter = 0; + string[] array = new string[args.Count]; + + foreach (string arg in args) + { + if (arg.IndexOf(";") != -1) + { + array[counter] = arg.Replace(";", "%3b"); + } + else + { + array[counter] = arg; + } + + counter++; + } + + return array; + } } } diff --git a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs index 39f42005f..61229afd8 100644 --- a/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs +++ b/test/dotnet-test.Tests/GivenDotnetTestBuildsAndRunsTestfromCsproj.cs @@ -101,7 +101,7 @@ namespace Microsoft.DotNet.Cli.Test.Tests [Fact] public void TestWillCreateTrxLogger() - { + { // Copy VSTestDotNetCore project in output directory of project dotnet-vstest.Tests string testAppName = "VSTestDotNetCore"; TestInstance testInstance = TestAssetsManager.CreateTestInstance(testAppName); @@ -170,7 +170,7 @@ namespace Microsoft.DotNet.Cli.Test.Tests .ExecuteWithCapturedOutput("--logger \"trx;logfilename=custom.trx\" -- RunConfiguration.ResultsDirectory=" + trxLoggerDirectory); // Verify - String[] trxFiles = Directory.GetFiles(trxLoggerDirectory, "*.trx"); + String[] trxFiles = Directory.GetFiles(trxLoggerDirectory, "custom.trx"); Assert.Equal(1, trxFiles.Length); result.StdOut.Should().Contain(trxFiles[0]); From d28721483acb615e86e4b6fe4a2720e617b8409b Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Tue, 3 Jan 2017 19:36:28 +0530 Subject: [PATCH 33/94] updated logic to consider everything after -- as runsettings. --- src/dotnet/commands/dotnet-test/Program.cs | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/dotnet/commands/dotnet-test/Program.cs b/src/dotnet/commands/dotnet-test/Program.cs index a00055452..665fbe9d2 100644 --- a/src/dotnet/commands/dotnet-test/Program.cs +++ b/src/dotnet/commands/dotnet-test/Program.cs @@ -23,8 +23,7 @@ namespace Microsoft.DotNet.Tools.Test FullName = LocalizableStrings.AppFullName, Description = LocalizableStrings.AppDescription, HandleRemainingArguments = true, - ArgumentSeparatorHelpText = LocalizableStrings.RunSettingsArgsHelpText, - AllowArgumentSeparator = true + ArgumentSeparatorHelpText = LocalizableStrings.RunSettingsArgsHelpText }; cmd.HelpOption("-h|--help"); @@ -256,14 +255,22 @@ namespace Microsoft.DotNet.Tools.Test List runsettingsArgs = new List(); List argsToRemove = new List(); + bool readRunSettings = false; foreach (string arg in remainingArgs) { - // MSBuild args starts with /, runsettings args starts with letter. - if (char.IsLetter(arg[0])) + if (!readRunSettings) { - runsettingsArgs.Add(GetSemiColonEsacpedstring(arg)); - argsToRemove.Add(arg); + if (arg.Equals("--")) + { + readRunSettings = true; + argsToRemove.Add(arg); + } + + continue; } + + runsettingsArgs.Add(GetSemiColonEsacpedstring(arg)); + argsToRemove.Add(arg); } foreach (string arg in argsToRemove) From 19b4bad3151bbc5aeebce0d0117c1a7d908cbd65 Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Tue, 3 Jan 2017 07:18:45 -1000 Subject: [PATCH 34/94] Add/remove projects also updates build configurations (#5134) * Add/remove projects also updates build configurations * Fix the algorithm for adding/removing build configurations * Address PR comments --- .../SlnFileWithNoProjectReferences.sln | 18 -- .../TestProjects/TestAppWithEmptySln/App.sln | 5 + .../TestAppWithEmptySln/App/App.csproj | 19 ++ .../TestAppWithEmptySln/App/Program.cs | 10 + .../TestAppWithEmptySln/Lib/Lib.csproj | 15 ++ .../TestAppWithEmptySln/Lib/Library.cs | 12 ++ .../TestAppWithSlnAndCsprojToRemove/App.sln | 45 ++++ .../App/App.csproj | 15 ++ .../App/Program.cs | 9 + .../Lib/Lib.csproj | 15 ++ .../Lib/Library.cs | 12 ++ .../dotnet-add/dotnet-add-proj/Program.cs | 60 ++++++ .../dotnet-remove-proj/Program.cs | 25 +++ .../GivenDotnetAddProj.cs | 195 +++++++++++++++--- .../GivenDotnetListProj.cs | 2 +- .../GivenDotnetRemoveProj.cs | 136 +++++++++++- 16 files changed, 550 insertions(+), 43 deletions(-) delete mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln create mode 100644 TestAssets/TestProjects/TestAppWithEmptySln/App.sln create mode 100644 TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj create mode 100644 TestAssets/TestProjects/TestAppWithEmptySln/App/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj create mode 100644 TestAssets/TestProjects/TestAppWithEmptySln/Lib/Library.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App.sln create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Library.cs diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln deleted file mode 100644 index 5b61df887..000000000 --- a/TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln +++ /dev/null @@ -1,18 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.26006.2 -MinimumVisualStudioVersion = 10.0.40219.1 -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Debug|x64 = Debug|x64 - Debug|x86 = Debug|x86 - Release|Any CPU = Release|Any CPU - Release|x64 = Release|x64 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/App.sln b/TestAssets/TestProjects/TestAppWithEmptySln/App.sln new file mode 100644 index 000000000..8eca25366 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithEmptySln/App.sln @@ -0,0 +1,5 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj b/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj new file mode 100644 index 000000000..423ceb827 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj @@ -0,0 +1,19 @@ + + + Exe + netcoreapp1.0 + + + + + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/App/Program.cs b/TestAssets/TestProjects/TestAppWithEmptySln/App/Program.cs new file mode 100644 index 000000000..abb853a4a --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithEmptySln/App/Program.cs @@ -0,0 +1,10 @@ +using System; + +class Program +{ + static void Main(string[] args) + { + Console.WriteLine("Hello from the main app"); + Console.WriteLine(Lib.Library.GetMessage()); + } +} diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj new file mode 100644 index 000000000..f47b49f65 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj @@ -0,0 +1,15 @@ + + + + netstandard1.4 + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Library.cs b/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Library.cs new file mode 100644 index 000000000..205c42a01 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Library.cs @@ -0,0 +1,12 @@ +using System; + +namespace Lib +{ + public class Library + { + public static string GetMessage() + { + return "Message from Lib"; + } + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App.sln b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App.sln new file mode 100644 index 000000000..6af5ab783 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App.sln @@ -0,0 +1,45 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "App", "App\App.csproj", "{7072A694-548F-4CAE-A58F-12D257D5F486}" +EndProject +Project("{13B669BE-BB05-4DDF-9536-439F39A36129}") = "Lib", "Lib\Lib.csproj", "{21D9159F-60E6-4F65-BC6B-D01B71B15FFC}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x64.ActiveCfg = Debug|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x64.Build.0 = Debug|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x86.ActiveCfg = Debug|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Debug|x86.Build.0 = Debug|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|Any CPU.Build.0 = Release|Any CPU + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x64.ActiveCfg = Release|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x64.Build.0 = Release|x64 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x86.ActiveCfg = Release|x86 + {21D9159F-60E6-4F65-BC6B-D01B71B15FFC}.Release|x86.Build.0 = Release|x86 + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj new file mode 100644 index 000000000..c1313e358 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj @@ -0,0 +1,15 @@ + + + Exe + netcoreapp1.0 + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/Program.cs b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/Program.cs new file mode 100644 index 000000000..acdf5839d --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/Program.cs @@ -0,0 +1,9 @@ +using System; + +class Program +{ + static void Main(string[] args) + { + Console.WriteLine("Hello from the main app"); + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj new file mode 100644 index 000000000..f47b49f65 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj @@ -0,0 +1,15 @@ + + + + netstandard1.4 + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Library.cs b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Library.cs new file mode 100644 index 000000000..205c42a01 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Library.cs @@ -0,0 +1,12 @@ +using System; + +namespace Lib +{ + public class Library + { + public static string GetMessage() + { + return "Message from Lib"; + } + } +} diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs index c29c871d8..858bc2a90 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs @@ -8,6 +8,7 @@ using Microsoft.DotNet.Cli.Sln.Internal; using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.Tools.Common; using System; +using System.Collections.Generic; using System.IO; using System.Linq; @@ -103,10 +104,69 @@ namespace Microsoft.DotNet.Tools.Add.ProjectToSolution FilePath = projectPathNormalized }; + AddDefaultBuildConfigurations(slnFile, slnProject); + slnFile.Projects.Add(slnProject); + Reporter.Output.WriteLine( string.Format(CommonLocalizableStrings.ProjectAddedToTheSolution, projectPath)); } } + + private void AddDefaultBuildConfigurations(SlnFile slnFile, SlnProject slnProject) + { + var defaultConfigurations = new List() + { + "Debug|Any CPU", + "Debug|x64", + "Debug|x86", + "Release|Any CPU", + "Release|x64", + "Release|x86", + }; + + // NOTE: The order you create the sections determines the order they are written to the sln + // file. In the case of an empty sln file, in order to make sure the solution configurations + // section comes first we need to add it first. This doesn't affect correctness but does + // stop VS from re-ordering things later on. Since we are keeping the SlnFile class low-level + // it shouldn't care about the VS implementation details. That's why we handle this here. + AddDefaultSolutionConfigurations(defaultConfigurations, slnFile.SolutionConfigurationsSection); + AddDefaultProjectConfigurations( + defaultConfigurations, + slnFile.ProjectConfigurationsSection.GetOrCreatePropertySet(slnProject.Id)); + } + + private void AddDefaultSolutionConfigurations( + List defaultConfigurations, + SlnPropertySet solutionConfigs) + { + foreach (var config in defaultConfigurations) + { + if (!solutionConfigs.ContainsKey(config)) + { + solutionConfigs[config] = config; + } + } + } + + private void AddDefaultProjectConfigurations( + List defaultConfigurations, + SlnPropertySet projectConfigs) + { + foreach (var config in defaultConfigurations) + { + var activeCfgKey = $"{config}.ActiveCfg"; + if (!projectConfigs.ContainsKey(activeCfgKey)) + { + projectConfigs[activeCfgKey] = config; + } + + var build0Key = $"{config}.Build.0"; + if (!projectConfigs.ContainsKey(build0Key)) + { + projectConfigs[build0Key] = config; + } + } + } } } diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs index be386d7af..719c585a8 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs @@ -49,6 +49,8 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectFromSolution slnChanged |= RemoveProject(slnFile, path); } + RemoveEmptyConfigurationSections(slnFile); + if (slnChanged) { slnFile.Write(); @@ -75,6 +77,11 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectFromSolution { foreach (var slnProject in projectsToRemove) { + var buildConfigsToRemove = slnFile.ProjectConfigurationsSection.GetPropertySet(slnProject.Id); + if (buildConfigsToRemove != null) + { + slnFile.ProjectConfigurationsSection.Remove(buildConfigsToRemove); + } slnFile.Projects.Remove(slnProject); Reporter.Output.WriteLine( string.Format(CommonLocalizableStrings.ProjectReferenceRemoved, slnProject.FilePath)); @@ -85,5 +92,23 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectFromSolution return projectRemoved; } + + private void RemoveEmptyConfigurationSections(SlnFile slnFile) + { + if (slnFile.Projects.Count == 0) + { + var solutionConfigs = slnFile.Sections.GetSection("SolutionConfigurationPlatforms"); + if (solutionConfigs != null) + { + slnFile.Sections.Remove(solutionConfigs); + } + + var projectConfigs = slnFile.Sections.GetSection("ProjectConfigurationPlatforms"); + if (projectConfigs != null) + { + slnFile.Sections.Remove(projectConfigs); + } + } + } } } diff --git a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs index 7ea309909..1e48fc231 100644 --- a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs +++ b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs @@ -28,6 +28,89 @@ Additional Arguments: Projects to add to solution "; + private const string ExpectedSlnFileAfterAddingLibProj = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App\App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""Lib\Lib.csproj"", ""__PROJECTGUID__"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + __PROJECTGUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU + __PROJECTGUID__.Debug|Any CPU.Build.0 = Debug|Any CPU + __PROJECTGUID__.Debug|x64.ActiveCfg = Debug|x64 + __PROJECTGUID__.Debug|x64.Build.0 = Debug|x64 + __PROJECTGUID__.Debug|x86.ActiveCfg = Debug|x86 + __PROJECTGUID__.Debug|x86.Build.0 = Debug|x86 + __PROJECTGUID__.Release|Any CPU.ActiveCfg = Release|Any CPU + __PROJECTGUID__.Release|Any CPU.Build.0 = Release|Any CPU + __PROJECTGUID__.Release|x64.ActiveCfg = Release|x64 + __PROJECTGUID__.Release|x64.Build.0 = Release|x64 + __PROJECTGUID__.Release|x86.ActiveCfg = Release|x86 + __PROJECTGUID__.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal +"; + + private const string ExpectedSlnFileAfterAddingLibProjToEmptySln = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""Lib\Lib.csproj"", ""__PROJECTGUID__"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + __PROJECTGUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU + __PROJECTGUID__.Debug|Any CPU.Build.0 = Debug|Any CPU + __PROJECTGUID__.Debug|x64.ActiveCfg = Debug|x64 + __PROJECTGUID__.Debug|x64.Build.0 = Debug|x64 + __PROJECTGUID__.Debug|x86.ActiveCfg = Debug|x86 + __PROJECTGUID__.Debug|x86.Build.0 = Debug|x86 + __PROJECTGUID__.Release|Any CPU.ActiveCfg = Release|Any CPU + __PROJECTGUID__.Release|Any CPU.Build.0 = Release|Any CPU + __PROJECTGUID__.Release|x64.ActiveCfg = Release|x64 + __PROJECTGUID__.Release|x64.Build.0 = Release|x64 + __PROJECTGUID__.Release|x86.ActiveCfg = Release|x86 + __PROJECTGUID__.Release|x86.Build.0 = Release|x86 + EndGlobalSection +EndGlobal +"; + [Theory] [InlineData("--help")] [InlineData("-h")] @@ -171,11 +254,51 @@ Additional Arguments: } [Theory] - [InlineData("TestAppWithSlnAndCsprojFiles", "")] - [InlineData("TestAppWithSlnAndCsprojProjectGuidFiles", "{84A45D44-B677-492D-A6DA-B3A71135AB8E}")] - public void WhenValidProjectIsPassedItGetsNormalizedAndAddedAndSlnBuilds( + [InlineData("TestAppWithSlnAndCsprojFiles", ExpectedSlnFileAfterAddingLibProj, "")] + [InlineData("TestAppWithSlnAndCsprojProjectGuidFiles", ExpectedSlnFileAfterAddingLibProj, "{84A45D44-B677-492D-A6DA-B3A71135AB8E}")] + [InlineData("TestAppWithEmptySln", ExpectedSlnFileAfterAddingLibProjToEmptySln, "")] + public void WhenValidProjectIsPassedBuildConfigsAreAdded( string testAsset, - string projectGuid) + string expectedSlnContentsTemplate, + string expectedProjectGuid) + { + var projectDirectory = TestAssets + .Get(testAsset) + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var projectToAdd = "Lib/Lib.csproj"; + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"add App.sln project {projectToAdd}"); + cmd.Should().Pass(); + + var slnPath = Path.Combine(projectDirectory, "App.sln"); + + if (string.IsNullOrEmpty(expectedProjectGuid)) + { + var slnFile = SlnFile.Read(slnPath); + var matchingProjects = slnFile.Projects + .Where((p) => p.Name == "Lib") + .ToList(); + + matchingProjects.Count.Should().Be(1); + var slnProject = matchingProjects[0]; + expectedProjectGuid = slnProject.Id; + } + + var expectedSlnContents = expectedSlnContentsTemplate.Replace("__PROJECTGUID__", expectedProjectGuid); + File.ReadAllText(slnPath) + .Should().BeVisuallyEquivalentTo(expectedSlnContents); + } + + [Theory] + [InlineData("TestAppWithSlnAndCsprojFiles")] + [InlineData("TestAppWithSlnAndCsprojProjectGuidFiles")] + [InlineData("TestAppWithEmptySln")] + public void WhenValidProjectIsPassedItGetsAdded(string testAsset) { var projectDirectory = TestAssets .Get(testAsset) @@ -192,29 +315,55 @@ Additional Arguments: cmd.Should().Pass(); cmd.StdOut.Should().Be($"Project `{projectPath}` added to the solution."); cmd.StdErr.Should().BeEmpty(); + } - var slnFile = SlnFile.Read(Path.Combine(projectDirectory, "App.sln")); - var matchingProjects = slnFile.Projects - .Where((p) => p.Name == "Lib") - .ToList(); + [Theory] + [InlineData("TestAppWithSlnAndCsprojFiles")] + [InlineData("TestAppWithSlnAndCsprojProjectGuidFiles")] + [InlineData("TestAppWithEmptySln")] + public void WhenValidProjectIsPassedTheSlnBuilds(string testAsset) + { + var projectDirectory = TestAssets + .Get(testAsset) + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; - matchingProjects.Count.Should().Be(1); - var slnProject = matchingProjects[0]; - slnProject.FilePath.Should().Be(projectPath); - slnProject.TypeGuid.Should().Be(ProjectTypeGuids.CPSProjectTypeGuid); - if (!string.IsNullOrEmpty(projectGuid)) - { - slnProject.Id.Should().Be(projectGuid); - } - - var restoreCmd = new DotnetCommand() + var cmd = new DotnetCommand() .WithWorkingDirectory(projectDirectory) - .Execute($"restore {Path.Combine("App", "App.csproj")}"); + .ExecuteWithCapturedOutput(@"add App.sln project App/App.csproj Lib/Lib.csproj"); + cmd.Should().Pass(); - var buildCmd = new DotnetCommand() + var slnPath = Path.Combine(projectDirectory, "App.sln"); + + new DotnetCommand() .WithWorkingDirectory(projectDirectory) - .Execute("build App.sln"); - buildCmd.Should().Pass(); + .Execute($"restore App.sln") + .Should().Pass(); + + new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .Execute("build App.sln --configuration Release") + .Should().Pass(); + + var reasonString = "should be built in release mode, otherwise it means build configurations are missing from the sln file"; + + var appReleaseDirectory = Directory.EnumerateDirectories( + Path.Combine(projectDirectory, "App", "bin"), + "Release", + SearchOption.AllDirectories); + appReleaseDirectory.Count().Should().Be(1, $"App {reasonString}"); + Directory.EnumerateFiles(appReleaseDirectory.Single(), "App.dll", SearchOption.AllDirectories) + .Count().Should().Be(1, $"App {reasonString}"); + + var libReleaseDirectory = Directory.EnumerateDirectories( + Path.Combine(projectDirectory, "Lib", "bin"), + "Release", + SearchOption.AllDirectories); + libReleaseDirectory.Count().Should().Be(1, $"Lib {reasonString}"); + Directory.EnumerateFiles(libReleaseDirectory.Single(), "Lib.dll", SearchOption.AllDirectories) + .Count().Should().Be(1, $"Lib {reasonString}"); } [Fact] @@ -258,7 +407,7 @@ Additional Arguments: cmd.StdErr.Should().Be("Project `idonotexist.csproj` does not exist."); File.ReadAllText(slnFullPath) - .Should().BeEquivalentTo(contentBefore); + .Should().BeVisuallyEquivalentTo(contentBefore); } } } diff --git a/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs b/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs index 877450467..26e3a316b 100644 --- a/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs +++ b/test/dotnet-list-proj.Tests/GivenDotnetListProj.cs @@ -147,7 +147,7 @@ Options: public void WhenNoProjectReferencesArePresentInTheSolutionItPrintsANoProjectMessage() { var projectDirectory = TestAssets - .Get("SlnFileWithNoProjectReferences") + .Get("TestAppWithEmptySln") .CreateInstance() .WithSourceFiles() .Root diff --git a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs index c9da242d2..a753efc2d 100644 --- a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs +++ b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs @@ -6,6 +6,7 @@ using Microsoft.DotNet.Cli.Sln.Internal; using Microsoft.DotNet.Tools.Test.Utilities; using System; using System.IO; +using System.Linq; using Xunit; namespace Microsoft.DotNet.Cli.Remove.Project.Tests @@ -26,6 +27,48 @@ Additional Arguments: Projects to remove from a solution "; + private const string ExpectedSlnContentsAfterRemove = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App\App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + EndGlobalSection +EndGlobal +"; + + private const string ExpectedSlnContentsAfterRemoveAllProjects = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global +EndGlobal +"; + [Theory] [InlineData("--help")] [InlineData("-h")] @@ -186,7 +229,7 @@ Additional Arguments: cmd.Should().Pass(); cmd.StdOut.Should().Be("Project reference `referenceDoesNotExistInSln.csproj` could not be found."); File.ReadAllText(solutionPath) - .Should().Be(contentBefore); + .Should().BeVisuallyEquivalentTo(contentBefore); } [Fact] @@ -273,5 +316,96 @@ Project reference `idontexisteither.csproj` could not be found."; slnFile.Projects.Count.Should().Be(1); slnFile.Projects[0].FilePath.Should().Be(Path.Combine("App", "App.csproj")); } + + [Fact] + public void WhenReferenceIsRemovedBuildConfigsAreAlsoRemoved() + { + var projectDirectory = TestAssets + .Get("TestAppWithSlnAndCsprojToRemove") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var solutionPath = Path.Combine(projectDirectory, "App.sln"); + SlnFile slnFile = SlnFile.Read(solutionPath); + slnFile.Projects.Count.Should().Be(2); + + var projectToRemove = Path.Combine("Lib", "Lib.csproj"); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); + cmd.Should().Pass(); + + File.ReadAllText(solutionPath) + .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemove); + } + + [Fact] + public void WhenReferenceIsRemovedSlnBuilds() + { + var projectDirectory = TestAssets + .Get("TestAppWithSlnAndCsprojToRemove") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var solutionPath = Path.Combine(projectDirectory, "App.sln"); + SlnFile slnFile = SlnFile.Read(solutionPath); + slnFile.Projects.Count.Should().Be(2); + + var projectToRemove = Path.Combine("Lib", "Lib.csproj"); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); + cmd.Should().Pass(); + + new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .Execute($"restore App.sln") + .Should().Pass(); + + new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .Execute("build App.sln --configuration Release") + .Should().Pass(); + + var reasonString = "should be built in release mode, otherwise it means build configurations are missing from the sln file"; + + var releaseDirectory = Directory.EnumerateDirectories( + Path.Combine(projectDirectory, "App", "bin"), + "Release", + SearchOption.AllDirectories); + releaseDirectory.Count().Should().Be(1, $"App {reasonString}"); + Directory.EnumerateFiles(releaseDirectory.Single(), "App.dll", SearchOption.AllDirectories) + .Count().Should().Be(1, $"App {reasonString}"); + } + + [Fact] + public void WhenFinalReferenceIsRemovedEmptySectionsAreRemoved() + { + var projectDirectory = TestAssets + .Get("TestAppWithSlnAndCsprojToRemove") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var solutionPath = Path.Combine(projectDirectory, "App.sln"); + SlnFile slnFile = SlnFile.Read(solutionPath); + slnFile.Projects.Count.Should().Be(2); + + var appPath = Path.Combine("App", "App.csproj"); + var libPath = Path.Combine("Lib", "Lib.csproj"); + var projectsToRemove = $"{libPath} {appPath}"; + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"remove project {projectsToRemove}"); + cmd.Should().Pass(); + + File.ReadAllText(solutionPath) + .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemoveAllProjects); + } } } From 46e06962bab47fa7b51732593cc5cca45dc8c066 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Tue, 3 Jan 2017 12:45:01 -0800 Subject: [PATCH 35/94] Updating the SDK version in the CLI. --- build/Microsoft.DotNet.Cli.DependencyVersions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/Microsoft.DotNet.Cli.DependencyVersions.props b/build/Microsoft.DotNet.Cli.DependencyVersions.props index b16c3e15c..b5f1c45df 100644 --- a/build/Microsoft.DotNet.Cli.DependencyVersions.props +++ b/build/Microsoft.DotNet.Cli.DependencyVersions.props @@ -2,7 +2,7 @@ 15.1.0-preview-000458-02 - 1.0.0-alpha-20161221-2 + 1.0.0-alpha-20161230-1 1.0.0-alpha-20161205-1-154 15.0.0-preview-20161227-02 From 281eca2f8c401da8c1af43f066a8d219a5046b2d Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Tue, 3 Jan 2017 11:06:51 -1000 Subject: [PATCH 36/94] Disable tests that fail sporadically (#5192) --- .../PJAppWithSlnAndXprojRefs/TestApp/TestApp.sln | 8 ++++++-- .../TestApp/TestApp.sln | 8 ++++++-- test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs | 9 +++++---- .../GivenThatIWantToMigrateSolutions.cs | 2 +- test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs | 3 ++- 5 files changed, 20 insertions(+), 10 deletions(-) diff --git a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestApp/TestApp.sln b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestApp/TestApp.sln index bc8214876..3dc27a305 100644 --- a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestApp/TestApp.sln +++ b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestApp/TestApp.sln @@ -17,12 +17,16 @@ Global GlobalSection(ProjectConfigurationPlatforms) = postSolution {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.Build.0 = Release|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.Build.0 = Release|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Release|Any CPU.ActiveCfg = Release|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Release|Any CPU.Build.0 = Release|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/TestApp.sln b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/TestApp.sln index bc8214876..3dc27a305 100644 --- a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/TestApp.sln +++ b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/TestApp.sln @@ -17,12 +17,16 @@ Global GlobalSection(ProjectConfigurationPlatforms) = postSolution {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.Build.0 = Release|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0138CB8F-4AA9-4029-A21E-C07C30F425BA}.Release|Any CPU.Build.0 = Release|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Release|Any CPU.ActiveCfg = Release|Any CPU {DC0B35D0-8A36-4B52-8A11-B86739F055D2}.Release|Any CPU.Build.0 = Release|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F8F96F4A-F10C-4C54-867C-A9EFF55494C8}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs index 1e48fc231..ce804eaf8 100644 --- a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs +++ b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs @@ -317,10 +317,11 @@ EndGlobal cmd.StdErr.Should().BeEmpty(); } - [Theory] - [InlineData("TestAppWithSlnAndCsprojFiles")] - [InlineData("TestAppWithSlnAndCsprojProjectGuidFiles")] - [InlineData("TestAppWithEmptySln")] + //ISSUE: https://github.com/dotnet/sdk/issues/545 + //[Theory] + //[InlineData("TestAppWithSlnAndCsprojFiles")] + //[InlineData("TestAppWithSlnAndCsprojProjectGuidFiles")] + //[InlineData("TestAppWithEmptySln")] public void WhenValidProjectIsPassedTheSlnBuilds(string testAsset) { var projectDirectory = TestAssets diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs index a73b1b61c..37620c979 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs @@ -57,7 +57,7 @@ namespace Microsoft.DotNet.Migration.Tests new DotnetCommand() .WithWorkingDirectory(projectDirectory) - .Execute($"restore \"{Path.Combine("TestApp", "TestApp.csproj")}\"") + .Execute($"restore \"{solutionRelPath}\"") .Should().Pass(); //ISSUE: https://github.com/dotnet/sdk/issues/545 diff --git a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs index a753efc2d..208d5df58 100644 --- a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs +++ b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs @@ -341,7 +341,8 @@ Project reference `idontexisteither.csproj` could not be found."; .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemove); } - [Fact] + //ISSUE: https://github.com/dotnet/sdk/issues/545 + //[Fact] public void WhenReferenceIsRemovedSlnBuilds() { var projectDirectory = TestAssets From 6973d15d4a383c909de28726e8334ddd0d462afb Mon Sep 17 00:00:00 2001 From: Krzysztof Wicher Date: Tue, 3 Jan 2017 16:51:15 -0800 Subject: [PATCH 37/94] change visibility to internal --- src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs | 4 ++-- src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs b/src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs index b27aec0a2..d4212fb6a 100644 --- a/src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs +++ b/src/Microsoft.DotNet.Cli.Utils/DotnetFiles.cs @@ -9,7 +9,7 @@ using Microsoft.DotNet.PlatformAbstractions; namespace Microsoft.DotNet.Cli { - public static class DotnetFiles + internal static class DotnetFiles { private static string SdkRootFolder => Path.Combine(typeof(DotnetFiles).GetTypeInfo().Assembly.Location, ".."); @@ -21,7 +21,7 @@ namespace Microsoft.DotNet.Cli /// public static string VersionFile => Path.GetFullPath(Path.Combine(SdkRootFolder, ".version")); - public static DotnetVersionFile VersionFileObject + internal static DotnetVersionFile VersionFileObject { get { return s_versionFileObject.Value; } } diff --git a/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs b/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs index ca8b981b3..1f76067f2 100644 --- a/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs +++ b/src/Microsoft.DotNet.Cli.Utils/DotnetVersionFile.cs @@ -6,7 +6,7 @@ using System.IO; namespace Microsoft.DotNet.Cli.Utils { - public class DotnetVersionFile + internal class DotnetVersionFile { public bool Exists { get; set; } From e9561b3679cef95821b7b2b3b980c6bbe154ca07 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Tue, 3 Jan 2017 17:15:39 -0800 Subject: [PATCH 38/94] Removing the IsCrossTargetBuild from migrated scripts when there is only a single TFM --- .../Rules/MigrateScriptsRule.cs | 28 ++++++++--- .../Rules/GivenThatIWantToMigrateScripts.cs | 49 +++++++++++++------ 2 files changed, 54 insertions(+), 23 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs index 49cefcead..d245fd7c7 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs @@ -28,16 +28,21 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules foreach (var scriptSet in scripts) { - MigrateScriptSet(csproj, migrationRuleInputs.CommonPropertyGroup, scriptSet.Value, scriptSet.Key); + MigrateScriptSet( + csproj, + scriptSet.Value, + scriptSet.Key, + migrationRuleInputs.ProjectContexts.Count() > 1); } } - public ProjectTargetElement MigrateScriptSet(ProjectRootElement csproj, - ProjectPropertyGroupElement propertyGroup, + public ProjectTargetElement MigrateScriptSet( + ProjectRootElement csproj, IEnumerable scriptCommands, - string scriptSetName) + string scriptSetName, + bool isMultiTFM) { - var target = CreateTarget(csproj, scriptSetName); + var target = CreateTarget(csproj, scriptSetName, isMultiTFM); foreach (var scriptCommand in scriptCommands) { if (CommandIsNotNeededInMSBuild(scriptCommand)) @@ -94,7 +99,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules return path.StartsWith("/") || path.Substring(1).StartsWith(":\\"); } - private ProjectTargetElement CreateTarget(ProjectRootElement csproj, string scriptSetName) + private ProjectTargetElement CreateTarget(ProjectRootElement csproj, string scriptSetName, bool isMultiTFM) { var targetName = $"{scriptSetName[0].ToString().ToUpper()}{string.Concat(scriptSetName.Skip(1))}Script"; @@ -117,12 +122,19 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules target.AfterTargets = targetHookInfo.TargetName; } - // Run Scripts After each inner build - target.Condition = " '$(IsCrossTargetingBuild)' != 'true' "; + if (isMultiTFM) + { + ConditionTargetToRunScriptsAfterEachInnerBuild(target); + } return target; } + private void ConditionTargetToRunScriptsAfterEachInnerBuild(ProjectTargetElement target) + { + target.Condition = " '$(IsCrossTargetingBuild)' != 'true' "; + } + private void AddExec(ProjectTargetElement target, string command) { var task = target.AddTask("Exec"); diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateScripts.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateScripts.cs index 7b65c11e3..05dcbbcc1 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateScripts.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateScripts.cs @@ -15,6 +15,8 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests { public class GivenThatIWantToMigrateScripts : TestBase { + private const bool IsMultiTFM = true; + [Theory] [InlineData("compile:TargetFramework", "$(TargetFramework)")] [InlineData("publish:TargetFramework", "$(TargetFramework)")] @@ -65,9 +67,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var target = scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - scriptName); + scriptName, + IsMultiTFM); target.BeforeTargets.Should().Be(targetName); } @@ -85,9 +87,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var target = scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - scriptName); + scriptName, + IsMultiTFM); target.AfterTargets.Should().Be(targetName); } @@ -107,9 +109,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var target = scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - scriptName); + scriptName, + IsMultiTFM); foreach (var task in target.Tasks) { @@ -143,9 +145,10 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var target = scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - scriptName); + scriptName, + IsMultiTFM); + target.Tasks.Count().Should().Be(commands.Length); foreach (var task in target.Tasks) @@ -172,9 +175,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var target = scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - "postpublish"); + "postpublish", + IsMultiTFM); target.Tasks.Should().BeEmpty(); } @@ -186,7 +189,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void MigratingScriptsCreatesTargetWithIsCrossTargettingBuildNotEqualTrueCondition() + public void MigratingScriptsWithMultiTFMCreatesTargetWithIsCrossTargettingBuildNotEqualTrueCondition() { var scriptMigrationRule = new MigrateScriptsRule(); ProjectRootElement mockProj = ProjectRootElement.Create(); @@ -195,12 +198,28 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests var target = scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - "prepublish"); + "prepublish", + IsMultiTFM); target.Condition.Should().Be(" '$(IsCrossTargetingBuild)' != 'true' "); } + [Fact] + public void MigratingScriptsWithSingleTFMDoesNotCreateTargetWithIsCrossTargettingBuild() + { + var scriptMigrationRule = new MigrateScriptsRule(); + ProjectRootElement mockProj = ProjectRootElement.Create(); + + var commands = new[] { "compile:FullTargetFramework", "compile:Configuration"}; + + var target = scriptMigrationRule.MigrateScriptSet( + mockProj, + commands, + "prepublish", + false); + target.Condition.Should().BeEmpty(); + } + [Fact] public void MigratingScriptsThrowsOnInvalidScriptSet() { @@ -211,9 +230,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests Action action = () => scriptMigrationRule.MigrateScriptSet( mockProj, - mockProj.AddPropertyGroup(), commands, - "invalidScriptSet"); + "invalidScriptSet", + IsMultiTFM); action.ShouldThrow() .WithMessage("MIGRATE1019::Unsupported Script Event Hook: invalidScriptSet is an unsupported script event hook for project migration"); From 47eafb9ef458f57408fb96d5fa8e0b9966f69600 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Tue, 3 Jan 2017 17:16:05 -0800 Subject: [PATCH 39/94] Removing the PackageTargetFallback condition on TFM when there is only a single TFM --- .../MigratePackageDependenciesAndToolsRule.cs | 12 +++-- ...enThatIWantToMigratePackageDependencies.cs | 50 +++++++++++++------ .../TemporaryProjectFileRuleRunner.cs | 39 +++++++++++---- 3 files changed, 73 insertions(+), 28 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs index d13f56ec1..cff6fc91a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs @@ -59,8 +59,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules foreach (var targetFramework in targetFrameworks) { MigrationTrace.Instance.WriteLine(String.Format(LocalizableStrings.MigratingFramework, targetFramework.FrameworkName.GetShortFolderName())); - - MigrateImports(migrationRuleInputs.CommonPropertyGroup, targetFramework); + + MigrateImports( + migrationRuleInputs.CommonPropertyGroup, + targetFramework, + migrationRuleInputs.ProjectContexts.Count() > 1); MigrateDependencies( project, @@ -161,13 +164,14 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules private void MigrateImports( ProjectPropertyGroupElement commonPropertyGroup, - TargetFrameworkInformation targetFramework) + TargetFrameworkInformation targetFramework, + bool isMultiTFM) { var transform = ImportsTransformation.Transform(targetFramework); if (transform != null) { - transform.Condition = targetFramework.FrameworkName.GetMSBuildCondition(); + transform.Condition = isMultiTFM ? targetFramework.FrameworkName.GetMSBuildCondition() : null; _transformApplicator.Execute(transform, commonPropertyGroup, mergeExisting: true); } else diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs index dcffe1214..722cd7e14 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs @@ -15,7 +15,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests public class GivenThatIWantToMigratePackageDependencies : PackageDependenciesTestBase { [Fact] - public void It_migrates_basic_PackageReference() + public void ItMigratesBasicPackageReference() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -29,7 +29,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_type_build_to_PrivateAssets() + public void ItMigratesTypeBuildToPrivateAssets() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -50,7 +50,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_suppress_parent_array_to_PrivateAssets() + public void ItMigratesSuppressParentArrayToPrivateAssets() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -69,7 +69,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_suppress_parent_string_to_PrivateAssets() + public void ItMigratesSuppressParentStringToPrivateAssets() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -88,7 +88,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_include_exclude_arrays_to_IncludeAssets() + public void ItMigratesIncludeExcludeArraysToIncludeAssets() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -108,7 +108,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_include_string_to_IncludeAssets() + public void ItMigratesIncludeStringToIncludeAssets() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -128,7 +128,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_include_exclude_overlapping_strings_to_IncludeAssets() + public void ItMigratesIncludeExcludeOverlappingStringsToIncludeAssets() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -149,7 +149,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests [Fact] - public void It_migrates_Tools() + public void ItMigratesTools() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -163,7 +163,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_imports_per_framework() + public void ItMigratesImportsPerFramework() { var importPropertyName = "PackageTargetFallback"; @@ -201,7 +201,27 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_auto_add_desktop_references_during_migrate() + public void ItDoesNotConditionToPackageTargetFallBackWhenMigratingASingleTFM() + { + var importPropertyName = "PackageTargetFallback"; + + var mockProj = RunPackageDependenciesRuleOnPj(@" + { + ""frameworks"": { + ""netcoreapp1.0"" : { + ""imports"": [""netstandard1.3"", ""net451""] + } + } + }"); + + var imports = mockProj.Properties.Where(p => p.Name == importPropertyName); + imports.Should().HaveCount(1); + + imports.Single().Condition.Should().BeEmpty(); + } + + [Fact] + public void ItAutoAddDesktopReferencesDuringMigrate() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -234,7 +254,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_test_projects_to_have_test_sdk() + public void ItMigratesTestProjectsToHaveTestSdk() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -267,7 +287,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_test_projects_to_have_test_sdk_and_xunit_packagedependencies() + public void ItMigratesTestProjectsToHaveTestSdkAndXunitPackagedependencies() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -306,7 +326,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_test_projects_to_have_test_sdk_and_xunit_packagedependencies_overwrite_existing_packagedependencies() + public void ItMigratesTestProjectsToHaveTestSdkAndXunitPackagedependenciesOverwriteExistingPackagedependencies() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -348,7 +368,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_migrates_test_projects_to_have_test_sdk_and_mstest_packagedependencies() + public void ItMigratesTestProjectsToHaveTestSdkAndMstestPackagedependencies() { var mockProj = RunPackageDependenciesRuleOnPj(@" { @@ -408,7 +428,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } } }")] - public void It_migrates_library_and_does_not_double_netstandard_ref(string pjContent) + public void ItMigratesLibraryAndDoesNotDoubleNetstandardRef(string pjContent) { var mockProj = RunPackageDependenciesRuleOnPj(pjContent); diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/TemporaryProjectFileRuleRunner.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/TemporaryProjectFileRuleRunner.cs index f223ffe68..f574e26a6 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/TemporaryProjectFileRuleRunner.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/TemporaryProjectFileRuleRunner.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Linq; using Microsoft.Build.Construction; using Microsoft.DotNet.ProjectJsonMigration.Rules; using Microsoft.DotNet.Internal.ProjectModel; @@ -8,28 +9,48 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests { internal class TemporaryProjectFileRuleRunner { - public static ProjectRootElement RunRules(IEnumerable rules, string projectJson, - string testDirectory, ProjectRootElement xproj=null) + public static ProjectRootElement RunRules( + IEnumerable rules, + string projectJson, + string testDirectory, + ProjectRootElement xproj=null) { - var projectContext = GenerateProjectContextFromString(testDirectory, projectJson); - return RunMigrationRulesOnGeneratedProject(rules, projectContext, testDirectory, xproj); + var projectContexts = GenerateProjectContextsFromString(testDirectory, projectJson); + return RunMigrationRulesOnGeneratedProject(rules, projectContexts, testDirectory, xproj); } - private static ProjectContext GenerateProjectContextFromString(string projectDirectory, string json) + private static IEnumerable GenerateProjectContextsFromString( + string projectDirectory, + string json) { var testPj = new ProjectJsonBuilder(null) .FromStringBase(json) .SaveToDisk(projectDirectory); - return ProjectContext.Create(testPj, FrameworkConstants.CommonFrameworks.NetCoreApp10); + var projectContexts = ProjectContext.CreateContextForEachFramework(projectDirectory); + + if (projectContexts.Count() == 0) + { + projectContexts = new [] + { + ProjectContext.Create(testPj, FrameworkConstants.CommonFrameworks.NetCoreApp10) + }; + } + + return projectContexts; } - private static ProjectRootElement RunMigrationRulesOnGeneratedProject(IEnumerable rules, - ProjectContext projectContext, string testDirectory, ProjectRootElement xproj) + private static ProjectRootElement RunMigrationRulesOnGeneratedProject( + IEnumerable rules, + IEnumerable projectContexts, + string testDirectory, + ProjectRootElement xproj) { var project = ProjectRootElement.Create(); var testSettings = MigrationSettings.CreateMigrationSettingsTestHook(testDirectory, testDirectory, project); - var testInputs = new MigrationRuleInputs(new[] {projectContext}, project, + var testInputs = new MigrationRuleInputs( + projectContexts, + project, project.AddItemGroup(), project.AddPropertyGroup(), xproj); From d31d5d2f2d20a169ae6edf87a1989c3cfcfdf669 Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Thu, 5 Jan 2017 00:46:48 +0530 Subject: [PATCH 40/94] Updated doc for -- --- src/dotnet/commands/dotnet-test/LocalizableStrings.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dotnet/commands/dotnet-test/LocalizableStrings.cs b/src/dotnet/commands/dotnet-test/LocalizableStrings.cs index 0a1ed1d70..0f69a5cc8 100644 --- a/src/dotnet/commands/dotnet-test/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-test/LocalizableStrings.cs @@ -53,6 +53,7 @@ public const string CmdNoBuildDescription = @"Do not build project before testing."; - public const string RunSettingsArgsHelpText = @"Any extra options that should be passed to MSBuild or adapter. See 'dotnet msbuild -h' and 'dotnet vstest --help' for available options."; + public const string RunSettingsArgsHelpText = @"Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory=""C:\users\user\desktop\Results Directory"" MSTest.DeploymentEnabled=false"; } } From a4dcff9ea81d85c7e08046847803edae5752559d Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 4 Jan 2017 12:25:48 -0800 Subject: [PATCH 41/94] Addressing code review comments. --- .../MigrationRuleInputs.cs | 2 ++ .../MigratePackageDependenciesAndToolsRule.cs | 2 +- .../Rules/MigrateScriptsRule.cs | 2 +- .../Rules/MigrateTFMRule.cs | 28 +++++++++---------- ...enThatIWantToMigratePackageDependencies.cs | 2 +- 5 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/MigrationRuleInputs.cs b/src/Microsoft.DotNet.ProjectJsonMigration/MigrationRuleInputs.cs index 5d69da274..2041cf758 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/MigrationRuleInputs.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/MigrationRuleInputs.cs @@ -28,6 +28,8 @@ namespace Microsoft.DotNet.ProjectJsonMigration } } + public bool IsMultiTFM => ProjectContexts.Count() > 1; + public MigrationRuleInputs( IEnumerable projectContexts, ProjectRootElement outputMSBuildProject, diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs index cff6fc91a..3bfa3c356 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigratePackageDependenciesAndToolsRule.cs @@ -63,7 +63,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules MigrateImports( migrationRuleInputs.CommonPropertyGroup, targetFramework, - migrationRuleInputs.ProjectContexts.Count() > 1); + migrationRuleInputs.IsMultiTFM); MigrateDependencies( project, diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs index d245fd7c7..789a05c69 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateScriptsRule.cs @@ -32,7 +32,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules csproj, scriptSet.Value, scriptSet.Key, - migrationRuleInputs.ProjectContexts.Count() > 1); + migrationRuleInputs.IsMultiTFM); } } diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs index dbeaf4c02..566d82cdd 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs @@ -34,20 +34,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules CleanExistingProperties(csproj); CleanExistingPackageReferences(csproj); - if(migrationRuleInputs.ProjectContexts.Count() == 1) - { - _transformApplicator.Execute( - FrameworkTransform.Transform( - migrationRuleInputs.ProjectContexts.Single().TargetFramework), - propertyGroup, - mergeExisting: true); - _transformApplicator.Execute( - FrameworkRuntimeIdentifiersTransform.Transform( - migrationRuleInputs.ProjectContexts.Single()), - propertyGroup, - mergeExisting: true); - } - else + if(migrationRuleInputs.IsMultiTFM) { _transformApplicator.Execute( FrameworksTransform.Transform( @@ -65,6 +52,19 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules propertyGroup, mergeExisting: true); } + else + { + _transformApplicator.Execute( + FrameworkTransform.Transform( + migrationRuleInputs.ProjectContexts.Single().TargetFramework), + propertyGroup, + mergeExisting: true); + _transformApplicator.Execute( + FrameworkRuntimeIdentifiersTransform.Transform( + migrationRuleInputs.ProjectContexts.Single()), + propertyGroup, + mergeExisting: true); + } } private void CleanExistingProperties(ProjectRootElement csproj) diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs index 722cd7e14..d8549bcb7 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigratePackageDependencies.cs @@ -201,7 +201,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void ItDoesNotConditionToPackageTargetFallBackWhenMigratingASingleTFM() + public void ItDoesNotAddConditionToPackageTargetFallBackWhenMigratingASingleTFM() { var importPropertyName = "PackageTargetFallback"; From 44ad9ec2c7b0f7128a21db7e0beaca92018820a6 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 4 Jan 2017 14:18:44 -0800 Subject: [PATCH 42/94] Removing -- separator from dotnet publish task. Dotnet publish nor any other command uses -- as a paramater separator for msbuild params. --- build_projects/dotnet-cli-build/DotNetPublish.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_projects/dotnet-cli-build/DotNetPublish.cs b/build_projects/dotnet-cli-build/DotNetPublish.cs index ed01ac543..8fbb88cbc 100644 --- a/build_projects/dotnet-cli-build/DotNetPublish.cs +++ b/build_projects/dotnet-cli-build/DotNetPublish.cs @@ -77,7 +77,7 @@ namespace Microsoft.DotNet.Cli.Build { if (!string.IsNullOrEmpty(MSBuildArgs)) { - return $"-- {MSBuildArgs}"; + return $"{MSBuildArgs}"; } return null; From a461cfbb2b73201ae3d3dbc0f27e7a33f5e81850 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Wed, 4 Jan 2017 18:48:14 -0800 Subject: [PATCH 43/94] Adding dotnet remove package sub command --- src/dotnet/commands/dotnet-remove/Program.cs | 2 + .../LocalizableStrings.cs | 17 +++++ .../dotnet-remove-package/Program.cs | 75 +++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs diff --git a/src/dotnet/commands/dotnet-remove/Program.cs b/src/dotnet/commands/dotnet-remove/Program.cs index 48706a88a..a6fc65c53 100644 --- a/src/dotnet/commands/dotnet-remove/Program.cs +++ b/src/dotnet/commands/dotnet-remove/Program.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using Microsoft.DotNet.Cli; +using Microsoft.DotNet.Tools.Remove.PackageReference; using Microsoft.DotNet.Tools.Remove.ProjectFromSolution; using Microsoft.DotNet.Tools.Remove.ProjectToProjectReference; @@ -18,6 +19,7 @@ namespace Microsoft.DotNet.Tools.Remove { RemoveProjectFromSolutionCommand.Create, RemoveProjectToProjectReferenceCommand.Create, + RemovePackageReferenceCommand.Create }; public static int Run(string[] args) diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs new file mode 100644 index 000000000..d8f7e45a2 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs @@ -0,0 +1,17 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace Microsoft.DotNet.Tools.Remove.PackageReference +{ + internal class LocalizableStrings + { + public const string AppFullName = ".NET Remove Package reference Command"; + + public const string AppDescription = "Command to remove package reference"; + + public const string AppHelpText = "Package references to remove"; + + public const string SpecifyExactlyOnePackageReference = "Please specify one package reference to remove"; + + } +} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs new file mode 100644 index 000000000..bd3d33c32 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs @@ -0,0 +1,75 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Text; +using Microsoft.Build.Evaluation; +using Microsoft.DotNet.Cli; +using Microsoft.DotNet.Cli.CommandLine; +using Microsoft.DotNet.Cli.Utils; +using Microsoft.DotNet.Tools.Common; +using Microsoft.DotNet.Tools.MSBuild; +using Microsoft.DotNet.Tools.NuGet; +using NuGet.Frameworks; + +namespace Microsoft.DotNet.Tools.Remove.PackageReference +{ + internal class RemovePackageReferenceCommand : DotNetSubCommandBase + { + + public static DotNetSubCommandBase Create() + { + var command = new RemovePackageReferenceCommand + { + Name = "package", + FullName = LocalizableStrings.AppFullName, + Description = LocalizableStrings.AppDescription, + HandleRemainingArguments = true, + ArgumentSeparatorHelpText = LocalizableStrings.AppHelpText, + }; + + command.HelpOption("-h|--help"); + + return command; + } + + public override int Run(string fileOrDirectory) + { + if (RemainingArguments.Count != 1) + { + throw new GracefulException(LocalizableStrings.SpecifyExactlyOnePackageReference); + } + + var projectFilePath = string.Empty; + + if (!File.Exists(fileOrDirectory)) + { + projectFilePath = MsbuildProject.GetProjectFileFromDirectory(fileOrDirectory).FullName; + } + else + { + projectFilePath = fileOrDirectory; + } + + var result = NuGetCommand.Run(TransformArgs(RemainingArguments.First(), projectFilePath)); + + return result; + } + + private string[] TransformArgs(string packageId, string projectFilePath) + { + return new string[]{ + "package", + "remove", + "--package", + packageId, + "--project", + projectFilePath + }; + } + } +} \ No newline at end of file From d0151a6111bd64eaece20bc729f9935a2618ab45 Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Wed, 4 Jan 2017 18:32:09 -1000 Subject: [PATCH 44/94] Add/remove solution items based on directory structure (#5197) * WIP support solution folders for dotnet add and remove * Add/remove solution folders based on directory hierarchy * Fix tests * Disable the solution building tests * Address PR comments * Fix a build break due to a new tool version used in the build * Create SlnProjectExtensions and SlnProjectCollectionExtensions per PR comments --- .../App.csproj | 19 ++ .../TestAppWithSlnAndCsprojInSubDir/App.sln | 34 +++ .../Program.cs | 10 + .../src/Lib/Lib.csproj | 16 ++ .../src/Lib/Library.cs | 12 ++ .../App.csproj | 12 ++ .../App.sln | 62 ++++++ .../Program.cs | 10 + .../src/Lib/Lib.csproj | 16 ++ .../src/Lib/Library.cs | 12 ++ .../App.csproj | 12 ++ .../App.sln | 53 +++++ .../Program.cs | 10 + .../src/Lib/Lib.csproj | 16 ++ .../src/Lib/Library.cs | 12 ++ .../ProjectTypeGuids.cs | 1 + src/dotnet/SlnProjectCollectionExtensions.cs | 43 ++++ src/dotnet/SlnProjectExtensions.cs | 28 +++ .../dotnet-add/dotnet-add-proj/Program.cs | 36 ++++ .../dotnet-remove-proj/Program.cs | 42 ++++ .../GivenDotnetAddProj.cs | 196 ++++++++++++++---- .../GivenThatIWantToMigrateSolutions.cs | 13 +- .../GivenDotnetRemoveProj.cs | 138 +++++++++++- 23 files changed, 757 insertions(+), 46 deletions(-) create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.sln create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Lib.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Library.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.sln create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Lib.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Library.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.sln create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Lib.csproj create mode 100644 TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Library.cs create mode 100644 src/dotnet/SlnProjectCollectionExtensions.cs create mode 100644 src/dotnet/SlnProjectExtensions.cs diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj new file mode 100644 index 000000000..a957f128c --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj @@ -0,0 +1,19 @@ + + + Exe + netcoreapp1.0 + + + + + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.sln b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.sln new file mode 100644 index 000000000..7bd8cded0 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.sln @@ -0,0 +1,34 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "App", "App.csproj", "{7072A694-548F-4CAE-A58F-12D257D5F486}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/Program.cs b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/Program.cs new file mode 100644 index 000000000..abb853a4a --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/Program.cs @@ -0,0 +1,10 @@ +using System; + +class Program +{ + static void Main(string[] args) + { + Console.WriteLine("Hello from the main app"); + Console.WriteLine(Lib.Library.GetMessage()); + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Lib.csproj new file mode 100644 index 000000000..aacaac752 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Lib.csproj @@ -0,0 +1,16 @@ + + + + netstandard1.4 + {84A45D44-B677-492D-A6DA-B3A71135AB8E} + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Library.cs b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Library.cs new file mode 100644 index 000000000..205c42a01 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/src/Lib/Library.cs @@ -0,0 +1,12 @@ +using System; + +namespace Lib +{ + public class Library + { + public static string GetMessage() + { + return "Message from Lib"; + } + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj new file mode 100644 index 000000000..c5617ba4b --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj @@ -0,0 +1,12 @@ + + + Exe + netcoreapp1.0 + + + + + + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.sln b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.sln new file mode 100644 index 000000000..b00300a34 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.sln @@ -0,0 +1,62 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "App", "App.csproj", "{7072A694-548F-4CAE-A58F-12D257D5F486}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{7B86CE74-F620-4B32-99FE-82D40F8D6BF2}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{EAB71280-AF32-4531-8703-43CDBA261AA3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lib", "src\Lib\Lib.csproj", "{84A45D44-B677-492D-A6DA-B3A71135AB8E}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NotLastProjInSrc", "NotLastProjInSrc", "{1C5EE322-7073-4298-A077-B7816B1CE15F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NotLastProjInSrc", "src\NotLastProjInSrc\NotLastProjInSrc.csproj", "{96E9FA7D-FE59-4866-AE1E-F9EC2BB2FC67}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x64.ActiveCfg = Debug|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x64.Build.0 = Debug|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x86.ActiveCfg = Debug|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x86.Build.0 = Debug|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|Any CPU.Build.0 = Release|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x64.ActiveCfg = Release|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x64.Build.0 = Release|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x86.ActiveCfg = Release|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {EAB71280-AF32-4531-8703-43CDBA261AA3} = {7B86CE74-F620-4B32-99FE-82D40F8D6BF2} + {84A45D44-B677-492D-A6DA-B3A71135AB8E} = {EAB71280-AF32-4531-8703-43CDBA261AA3} + {1C5EE322-7073-4298-A077-B7816B1CE15F} = {7B86CE74-F620-4B32-99FE-82D40F8D6BF2} + {96E9FA7D-FE59-4866-AE1E-F9EC2BB2FC67} = {1C5EE322-7073-4298-A077-B7816B1CE15F} + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/Program.cs b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/Program.cs new file mode 100644 index 000000000..abb853a4a --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/Program.cs @@ -0,0 +1,10 @@ +using System; + +class Program +{ + static void Main(string[] args) + { + Console.WriteLine("Hello from the main app"); + Console.WriteLine(Lib.Library.GetMessage()); + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Lib.csproj new file mode 100644 index 000000000..aacaac752 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Lib.csproj @@ -0,0 +1,16 @@ + + + + netstandard1.4 + {84A45D44-B677-492D-A6DA-B3A71135AB8E} + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Library.cs b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Library.cs new file mode 100644 index 000000000..205c42a01 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/src/Lib/Library.cs @@ -0,0 +1,12 @@ +using System; + +namespace Lib +{ + public class Library + { + public static string GetMessage() + { + return "Message from Lib"; + } + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj new file mode 100644 index 000000000..c5617ba4b --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj @@ -0,0 +1,12 @@ + + + Exe + netcoreapp1.0 + + + + + + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.sln b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.sln new file mode 100644 index 000000000..ac77ad340 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.sln @@ -0,0 +1,53 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "App", "App.csproj", "{7072A694-548F-4CAE-A58F-12D257D5F486}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{7B86CE74-F620-4B32-99FE-82D40F8D6BF2}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{EAB71280-AF32-4531-8703-43CDBA261AA3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lib", "src\Lib\Lib.csproj", "{84A45D44-B677-492D-A6DA-B3A71135AB8E}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x64.ActiveCfg = Debug|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x64.Build.0 = Debug|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x86.ActiveCfg = Debug|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x86.Build.0 = Debug|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|Any CPU.Build.0 = Release|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x64.ActiveCfg = Release|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x64.Build.0 = Release|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x86.ActiveCfg = Release|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {EAB71280-AF32-4531-8703-43CDBA261AA3} = {7B86CE74-F620-4B32-99FE-82D40F8D6BF2} + {84A45D44-B677-492D-A6DA-B3A71135AB8E} = {EAB71280-AF32-4531-8703-43CDBA261AA3} + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/Program.cs b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/Program.cs new file mode 100644 index 000000000..abb853a4a --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/Program.cs @@ -0,0 +1,10 @@ +using System; + +class Program +{ + static void Main(string[] args) + { + Console.WriteLine("Hello from the main app"); + Console.WriteLine(Lib.Library.GetMessage()); + } +} diff --git a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Lib.csproj new file mode 100644 index 000000000..aacaac752 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Lib.csproj @@ -0,0 +1,16 @@ + + + + netstandard1.4 + {84A45D44-B677-492D-A6DA-B3A71135AB8E} + + + + + + + + + + + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Library.cs b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Library.cs new file mode 100644 index 000000000..205c42a01 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/src/Lib/Library.cs @@ -0,0 +1,12 @@ +using System; + +namespace Lib +{ + public class Library + { + public static string GetMessage() + { + return "Message from Lib"; + } + } +} diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs b/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs index 71d7798df..723c5f4f1 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs @@ -7,5 +7,6 @@ namespace Microsoft.DotNet.Cli.Sln.Internal { public const string CPSProjectTypeGuid = "{13B669BE-BB05-4DDF-9536-439F39A36129}"; public const string CSharpProjectTypeGuid = "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}"; + public const string SolutionFolderGuid = "{2150E333-8FDC-42A3-9474-1A3956D46DE8}"; } } diff --git a/src/dotnet/SlnProjectCollectionExtensions.cs b/src/dotnet/SlnProjectCollectionExtensions.cs new file mode 100644 index 000000000..1e964f775 --- /dev/null +++ b/src/dotnet/SlnProjectCollectionExtensions.cs @@ -0,0 +1,43 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.DotNet.Cli.Sln.Internal; +using System.Collections.Generic; +using System.IO; +using System.Linq; + +namespace Microsoft.DotNet.Tools.Common +{ + public static class SlnProjectCollectionExtensions + { + public static HashSet GetReferencedSolutionFolders(this SlnProjectCollection projects) + { + var referencedSolutionFolders = new HashSet(); + + var solutionFolderProjects = projects + .Where(p => p.TypeGuid == ProjectTypeGuids.SolutionFolderGuid) + .ToList(); + + if (solutionFolderProjects.Any()) + { + var nonSolutionFolderProjects = projects + .Where(p => p.TypeGuid != ProjectTypeGuids.SolutionFolderGuid) + .ToList(); + + foreach (var project in nonSolutionFolderProjects) + { + var solutionFolders = project.GetSolutionFoldersFromProject(); + foreach (var solutionFolder in solutionFolders) + { + if (!referencedSolutionFolders.Contains(solutionFolder)) + { + referencedSolutionFolders.Add(solutionFolder); + } + } + } + } + + return referencedSolutionFolders; + } + } +} diff --git a/src/dotnet/SlnProjectExtensions.cs b/src/dotnet/SlnProjectExtensions.cs new file mode 100644 index 000000000..14f730329 --- /dev/null +++ b/src/dotnet/SlnProjectExtensions.cs @@ -0,0 +1,28 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.DotNet.Cli.Sln.Internal; +using System.Collections.Generic; +using System.IO; +using System.Linq; + +namespace Microsoft.DotNet.Tools.Common +{ + public static class SlnProjectExtensions + { + public static IList GetSolutionFoldersFromProject(this SlnProject project) + { + var currentDirString = $".{Path.DirectorySeparatorChar}"; + + var directoryPath = Path.GetDirectoryName(project.FilePath); + if (directoryPath.StartsWith(currentDirString)) + { + directoryPath = directoryPath.Substring(currentDirString.Length); + } + + return directoryPath.StartsWith("..") + ? new List() + : new List(directoryPath.Split(Path.DirectorySeparatorChar)); + } + } +} diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs index 858bc2a90..f6a57db28 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs @@ -106,6 +106,8 @@ namespace Microsoft.DotNet.Tools.Add.ProjectToSolution AddDefaultBuildConfigurations(slnFile, slnProject); + AddSolutionFolders(slnFile, slnProject); + slnFile.Projects.Add(slnProject); Reporter.Output.WriteLine( @@ -168,5 +170,39 @@ namespace Microsoft.DotNet.Tools.Add.ProjectToSolution } } } + + private void AddSolutionFolders(SlnFile slnFile, SlnProject slnProject) + { + var solutionFolders = slnProject.GetSolutionFoldersFromProject(); + + if (solutionFolders.Any()) + { + var nestedProjectsSection = slnFile.Sections.GetOrCreateSection( + "NestedProjects", + SlnSectionType.PreProcess); + + string parentDirGuid = null; + foreach (var dir in solutionFolders) + { + var solutionFolder = new SlnProject + { + Id = Guid.NewGuid().ToString("B").ToUpper(), + TypeGuid = ProjectTypeGuids.SolutionFolderGuid, + Name = dir, + FilePath = dir + }; + + slnFile.Projects.Add(solutionFolder); + + if (parentDirGuid != null) + { + nestedProjectsSection.Properties[solutionFolder.Id] = parentDirGuid; + } + parentDirGuid = solutionFolder.Id; + } + + nestedProjectsSection.Properties[slnProject.Id] = parentDirGuid; + } + } } } diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs index 719c585a8..5fca7d695 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/Program.cs @@ -6,6 +6,7 @@ using Microsoft.DotNet.Cli.Sln.Internal; using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.Tools.Common; using System; +using System.Collections.Generic; using System.IO; using System.Linq; @@ -51,6 +52,8 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectFromSolution RemoveEmptyConfigurationSections(slnFile); + RemoveEmptySolutionFolders(slnFile); + if (slnChanged) { slnFile.Write(); @@ -82,6 +85,15 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectFromSolution { slnFile.ProjectConfigurationsSection.Remove(buildConfigsToRemove); } + + var nestedProjectsSection = slnFile.Sections.GetSection( + "NestedProjects", + SlnSectionType.PreProcess); + if (nestedProjectsSection != null && nestedProjectsSection.Properties.ContainsKey(slnProject.Id)) + { + nestedProjectsSection.Properties.Remove(slnProject.Id); + } + slnFile.Projects.Remove(slnProject); Reporter.Output.WriteLine( string.Format(CommonLocalizableStrings.ProjectReferenceRemoved, slnProject.FilePath)); @@ -110,5 +122,35 @@ namespace Microsoft.DotNet.Tools.Remove.ProjectFromSolution } } } + + private void RemoveEmptySolutionFolders(SlnFile slnFile) + { + var referencedSolutionFolders = slnFile.Projects.GetReferencedSolutionFolders(); + + var solutionFolderProjects = slnFile.Projects + .Where(p => p.TypeGuid == ProjectTypeGuids.SolutionFolderGuid) + .ToList(); + + if (solutionFolderProjects.Any()) + { + var nestedProjectsSection = slnFile.Sections.GetSection( + "NestedProjects", + SlnSectionType.PreProcess); + + foreach (var solutionFolderProject in solutionFolderProjects) + { + if (!referencedSolutionFolders.Contains(solutionFolderProject.Name)) + { + slnFile.Projects.Remove(solutionFolderProject); + nestedProjectsSection.Properties.Remove(solutionFolderProject.Id); + } + } + + if (nestedProjectsSection.IsEmpty) + { + slnFile.Sections.Remove(nestedProjectsSection); + } + } + } } } diff --git a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs index ce804eaf8..1428292e2 100644 --- a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs +++ b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs @@ -35,7 +35,9 @@ VisualStudioVersion = 15.0.26006.2 MinimumVisualStudioVersion = 10.0.40219.1 Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App\App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" EndProject -Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""Lib\Lib.csproj"", ""__PROJECTGUID__"" +Project(""{2150E333-8FDC-42A3-9474-1A3956D46DE8}"") = ""Lib"", ""Lib"", ""__LIB_FOLDER_GUID__"" +EndProject +Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""Lib\Lib.csproj"", ""__LIB_PROJECT_GUID__"" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -59,22 +61,25 @@ Global {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 - __PROJECTGUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU - __PROJECTGUID__.Debug|Any CPU.Build.0 = Debug|Any CPU - __PROJECTGUID__.Debug|x64.ActiveCfg = Debug|x64 - __PROJECTGUID__.Debug|x64.Build.0 = Debug|x64 - __PROJECTGUID__.Debug|x86.ActiveCfg = Debug|x86 - __PROJECTGUID__.Debug|x86.Build.0 = Debug|x86 - __PROJECTGUID__.Release|Any CPU.ActiveCfg = Release|Any CPU - __PROJECTGUID__.Release|Any CPU.Build.0 = Release|Any CPU - __PROJECTGUID__.Release|x64.ActiveCfg = Release|x64 - __PROJECTGUID__.Release|x64.Build.0 = Release|x64 - __PROJECTGUID__.Release|x86.ActiveCfg = Release|x86 - __PROJECTGUID__.Release|x86.Build.0 = Release|x86 + __LIB_PROJECT_GUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU + __LIB_PROJECT_GUID__.Debug|Any CPU.Build.0 = Debug|Any CPU + __LIB_PROJECT_GUID__.Debug|x64.ActiveCfg = Debug|x64 + __LIB_PROJECT_GUID__.Debug|x64.Build.0 = Debug|x64 + __LIB_PROJECT_GUID__.Debug|x86.ActiveCfg = Debug|x86 + __LIB_PROJECT_GUID__.Debug|x86.Build.0 = Debug|x86 + __LIB_PROJECT_GUID__.Release|Any CPU.ActiveCfg = Release|Any CPU + __LIB_PROJECT_GUID__.Release|Any CPU.Build.0 = Release|Any CPU + __LIB_PROJECT_GUID__.Release|x64.ActiveCfg = Release|x64 + __LIB_PROJECT_GUID__.Release|x64.Build.0 = Release|x64 + __LIB_PROJECT_GUID__.Release|x86.ActiveCfg = Release|x86 + __LIB_PROJECT_GUID__.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + __LIB_PROJECT_GUID__ = __LIB_FOLDER_GUID__ + EndGlobalSection EndGlobal "; @@ -83,7 +88,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.26006.2 MinimumVisualStudioVersion = 10.0.40219.1 -Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""Lib\Lib.csproj"", ""__PROJECTGUID__"" +Project(""{2150E333-8FDC-42A3-9474-1A3956D46DE8}"") = ""Lib"", ""Lib"", ""__LIB_FOLDER_GUID__"" +EndProject +Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""Lib\Lib.csproj"", ""__LIB_PROJECT_GUID__"" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -95,18 +102,79 @@ Global Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - __PROJECTGUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU - __PROJECTGUID__.Debug|Any CPU.Build.0 = Debug|Any CPU - __PROJECTGUID__.Debug|x64.ActiveCfg = Debug|x64 - __PROJECTGUID__.Debug|x64.Build.0 = Debug|x64 - __PROJECTGUID__.Debug|x86.ActiveCfg = Debug|x86 - __PROJECTGUID__.Debug|x86.Build.0 = Debug|x86 - __PROJECTGUID__.Release|Any CPU.ActiveCfg = Release|Any CPU - __PROJECTGUID__.Release|Any CPU.Build.0 = Release|Any CPU - __PROJECTGUID__.Release|x64.ActiveCfg = Release|x64 - __PROJECTGUID__.Release|x64.Build.0 = Release|x64 - __PROJECTGUID__.Release|x86.ActiveCfg = Release|x86 - __PROJECTGUID__.Release|x86.Build.0 = Release|x86 + __LIB_PROJECT_GUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU + __LIB_PROJECT_GUID__.Debug|Any CPU.Build.0 = Debug|Any CPU + __LIB_PROJECT_GUID__.Debug|x64.ActiveCfg = Debug|x64 + __LIB_PROJECT_GUID__.Debug|x64.Build.0 = Debug|x64 + __LIB_PROJECT_GUID__.Debug|x86.ActiveCfg = Debug|x86 + __LIB_PROJECT_GUID__.Debug|x86.Build.0 = Debug|x86 + __LIB_PROJECT_GUID__.Release|Any CPU.ActiveCfg = Release|Any CPU + __LIB_PROJECT_GUID__.Release|Any CPU.Build.0 = Release|Any CPU + __LIB_PROJECT_GUID__.Release|x64.ActiveCfg = Release|x64 + __LIB_PROJECT_GUID__.Release|x64.Build.0 = Release|x64 + __LIB_PROJECT_GUID__.Release|x86.ActiveCfg = Release|x86 + __LIB_PROJECT_GUID__.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + __LIB_PROJECT_GUID__ = __LIB_FOLDER_GUID__ + EndGlobalSection +EndGlobal +"; + + private const string ExpectedSlnFileAfterAddingNestedProj = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +Project(""{2150E333-8FDC-42A3-9474-1A3956D46DE8}"") = ""src"", ""src"", ""__SRC_FOLDER_GUID__"" +EndProject +Project(""{2150E333-8FDC-42A3-9474-1A3956D46DE8}"") = ""Lib"", ""Lib"", ""__LIB_FOLDER_GUID__"" +EndProject +Project(""{13B669BE-BB05-4DDF-9536-439F39A36129}"") = ""Lib"", ""src\Lib\Lib.csproj"", ""__LIB_PROJECT_GUID__"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + __LIB_PROJECT_GUID__.Debug|Any CPU.ActiveCfg = Debug|Any CPU + __LIB_PROJECT_GUID__.Debug|Any CPU.Build.0 = Debug|Any CPU + __LIB_PROJECT_GUID__.Debug|x64.ActiveCfg = Debug|x64 + __LIB_PROJECT_GUID__.Debug|x64.Build.0 = Debug|x64 + __LIB_PROJECT_GUID__.Debug|x86.ActiveCfg = Debug|x86 + __LIB_PROJECT_GUID__.Debug|x86.Build.0 = Debug|x86 + __LIB_PROJECT_GUID__.Release|Any CPU.ActiveCfg = Release|Any CPU + __LIB_PROJECT_GUID__.Release|Any CPU.Build.0 = Release|Any CPU + __LIB_PROJECT_GUID__.Release|x64.ActiveCfg = Release|x64 + __LIB_PROJECT_GUID__.Release|x64.Build.0 = Release|x64 + __LIB_PROJECT_GUID__.Release|x86.ActiveCfg = Release|x86 + __LIB_PROJECT_GUID__.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + __LIB_FOLDER_GUID__ = __SRC_FOLDER_GUID__ + __LIB_PROJECT_GUID__ = __LIB_FOLDER_GUID__ EndGlobalSection EndGlobal "; @@ -253,6 +321,28 @@ EndGlobal cmd.StdOut.Should().BeVisuallyEquivalentTo(HelpText); } + [Fact] + public void WhenNestedProjectIsAddedSolutionFoldersAreCreated() + { + var projectDirectory = TestAssets + .Get("TestAppWithSlnAndCsprojInSubDir") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var projectToAdd = Path.Combine("src", "Lib", "Lib.csproj"); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"add App.sln project {projectToAdd}"); + cmd.Should().Pass(); + + var slnPath = Path.Combine(projectDirectory, "App.sln"); + var expectedSlnContents = GetExpectedSlnContents(slnPath, ExpectedSlnFileAfterAddingNestedProj); + File.ReadAllText(slnPath) + .Should().BeVisuallyEquivalentTo(expectedSlnContents); + } + [Theory] [InlineData("TestAppWithSlnAndCsprojFiles", ExpectedSlnFileAfterAddingLibProj, "")] [InlineData("TestAppWithSlnAndCsprojProjectGuidFiles", ExpectedSlnFileAfterAddingLibProj, "{84A45D44-B677-492D-A6DA-B3A71135AB8E}")] @@ -277,19 +367,11 @@ EndGlobal var slnPath = Path.Combine(projectDirectory, "App.sln"); - if (string.IsNullOrEmpty(expectedProjectGuid)) - { - var slnFile = SlnFile.Read(slnPath); - var matchingProjects = slnFile.Projects - .Where((p) => p.Name == "Lib") - .ToList(); + var expectedSlnContents = GetExpectedSlnContents( + slnPath, + expectedSlnContentsTemplate, + expectedProjectGuid); - matchingProjects.Count.Should().Be(1); - var slnProject = matchingProjects[0]; - expectedProjectGuid = slnProject.Id; - } - - var expectedSlnContents = expectedSlnContentsTemplate.Replace("__PROJECTGUID__", expectedProjectGuid); File.ReadAllText(slnPath) .Should().BeVisuallyEquivalentTo(expectedSlnContents); } @@ -317,7 +399,7 @@ EndGlobal cmd.StdErr.Should().BeEmpty(); } - //ISSUE: https://github.com/dotnet/sdk/issues/545 + //ISSUE: https://github.com/dotnet/cli/issues/5205 //[Theory] //[InlineData("TestAppWithSlnAndCsprojFiles")] //[InlineData("TestAppWithSlnAndCsprojProjectGuidFiles")] @@ -410,5 +492,41 @@ EndGlobal File.ReadAllText(slnFullPath) .Should().BeVisuallyEquivalentTo(contentBefore); } + + private string GetExpectedSlnContents( + string slnPath, + string slnTemplate, + string expectedLibProjectGuid = null) + { + var slnFile = SlnFile.Read(slnPath); + + if (string.IsNullOrEmpty(expectedLibProjectGuid)) + { + var matchingProjects = slnFile.Projects + .Where((p) => p.FilePath.EndsWith("Lib.csproj")) + .ToList(); + + matchingProjects.Count.Should().Be(1); + var slnProject = matchingProjects[0]; + expectedLibProjectGuid = slnProject.Id; + } + var slnContents = slnTemplate.Replace("__LIB_PROJECT_GUID__", expectedLibProjectGuid); + + var matchingLibFolder = slnFile.Projects + .Where((p) => p.FilePath == "Lib") + .ToList(); + matchingLibFolder.Count.Should().Be(1); + slnContents = slnContents.Replace("__LIB_FOLDER_GUID__", matchingLibFolder[0].Id); + + var matchingSrcFolder = slnFile.Projects + .Where((p) => p.FilePath == "src") + .ToList(); + if (matchingSrcFolder.Count == 1) + { + slnContents = slnContents.Replace("__SRC_FOLDER_GUID__", matchingSrcFolder[0].Id); + } + + return slnContents; + } } } diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs index 37620c979..f54fc2b98 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs @@ -60,24 +60,27 @@ namespace Microsoft.DotNet.Migration.Tests .Execute($"restore \"{solutionRelPath}\"") .Should().Pass(); - //ISSUE: https://github.com/dotnet/sdk/issues/545 + //ISSUE: https://github.com/dotnet/cli/issues/5205 //new DotnetCommand() // .WithWorkingDirectory(projectDirectory) // .Execute($"build \"{solutionRelPath}\"") // .Should().Pass(); SlnFile slnFile = SlnFile.Read(Path.Combine(projectDirectory.FullName, solutionRelPath)); - slnFile.Projects.Count.Should().Be(3); + var nonSolutionFolderProjects = slnFile.Projects + .Where(p => p.TypeGuid != ProjectTypeGuids.SolutionFolderGuid); - var slnProject = slnFile.Projects.Where((p) => p.Name == "TestApp").Single(); + nonSolutionFolderProjects.Count().Should().Be(3); + + var slnProject = nonSolutionFolderProjects.Where((p) => p.Name == "TestApp").Single(); slnProject.TypeGuid.Should().Be(ProjectTypeGuids.CSharpProjectTypeGuid); slnProject.FilePath.Should().Be("TestApp.csproj"); - slnProject = slnFile.Projects.Where((p) => p.Name == "TestLibrary").Single(); + slnProject = nonSolutionFolderProjects.Where((p) => p.Name == "TestLibrary").Single(); slnProject.TypeGuid.Should().Be(ProjectTypeGuids.CSharpProjectTypeGuid); slnProject.FilePath.Should().Be(Path.Combine("..", "TestLibrary", "TestLibrary.csproj")); - slnProject = slnFile.Projects.Where((p) => p.Name == "subdir").Single(); + slnProject = nonSolutionFolderProjects.Where((p) => p.Name == "subdir").Single(); slnProject.TypeGuid.Should().Be(subdirProjectTypeGuid); slnProject.FilePath.Should().Be(Path.Combine("src", "subdir", "subdir.csproj")); } diff --git a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs index 208d5df58..74eebdd0e 100644 --- a/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs +++ b/test/dotnet-remove-proj.Tests/GivenDotnetRemoveProj.cs @@ -67,6 +67,97 @@ VisualStudioVersion = 15.0.26006.2 MinimumVisualStudioVersion = 10.0.40219.1 Global EndGlobal +"; + + private const string ExpectedSlnContentsAfterRemoveNestedProj = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +Project(""{2150E333-8FDC-42A3-9474-1A3956D46DE8}"") = ""src"", ""src"", ""{7B86CE74-F620-4B32-99FE-82D40F8D6BF2}"" +EndProject +Project(""{2150E333-8FDC-42A3-9474-1A3956D46DE8}"") = ""Lib"", ""Lib"", ""{EAB71280-AF32-4531-8703-43CDBA261AA3}"" +EndProject +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""Lib"", ""src\Lib\Lib.csproj"", ""{84A45D44-B677-492D-A6DA-B3A71135AB8E}"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x64.ActiveCfg = Debug|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x64.Build.0 = Debug|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x86.ActiveCfg = Debug|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Debug|x86.Build.0 = Debug|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|Any CPU.Build.0 = Release|Any CPU + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x64.ActiveCfg = Release|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x64.Build.0 = Release|x64 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x86.ActiveCfg = Release|x86 + {84A45D44-B677-492D-A6DA-B3A71135AB8E}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {EAB71280-AF32-4531-8703-43CDBA261AA3} = {7B86CE74-F620-4B32-99FE-82D40F8D6BF2} + {84A45D44-B677-492D-A6DA-B3A71135AB8E} = {EAB71280-AF32-4531-8703-43CDBA261AA3} + EndGlobalSection +EndGlobal +"; + + private const string ExpectedSlnContentsAfterRemoveLastNestedProj = @" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Project(""{9A19103F-16F7-4668-BE54-9A1E7A4F7556}"") = ""App"", ""App.csproj"", ""{7072A694-548F-4CAE-A58F-12D257D5F486}"" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.ActiveCfg = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x64.Build.0 = Debug|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.ActiveCfg = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Debug|x86.Build.0 = Debug|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|Any CPU.Build.0 = Release|Any CPU + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.ActiveCfg = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x64.Build.0 = Release|x64 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.ActiveCfg = Release|x86 + {7072A694-548F-4CAE-A58F-12D257D5F486}.Release|x86.Build.0 = Release|x86 + EndGlobalSection +EndGlobal "; [Theory] @@ -341,8 +432,7 @@ Project reference `idontexisteither.csproj` could not be found."; .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemove); } - //ISSUE: https://github.com/dotnet/sdk/issues/545 - //[Fact] + [Fact] public void WhenReferenceIsRemovedSlnBuilds() { var projectDirectory = TestAssets @@ -408,5 +498,49 @@ Project reference `idontexisteither.csproj` could not be found."; File.ReadAllText(solutionPath) .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemoveAllProjects); } + + [Fact] + public void WhenNestedProjectIsRemovedItsSolutionFoldersAreRemoved() + { + var projectDirectory = TestAssets + .Get("TestAppWithSlnAndCsprojInSubDirToRemove") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var solutionPath = Path.Combine(projectDirectory, "App.sln"); + + var projectToRemove = Path.Combine("src", "NotLastProjInSrc", "NotLastProjInSrc.csproj"); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); + cmd.Should().Pass(); + + File.ReadAllText(solutionPath) + .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemoveNestedProj); + } + + [Fact] + public void WhenFinalNestedProjectIsRemovedSolutionFoldersAreRemoved() + { + var projectDirectory = TestAssets + .Get("TestAppWithSlnAndLastCsprojInSubDirToRemove") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var solutionPath = Path.Combine(projectDirectory, "App.sln"); + + var projectToRemove = Path.Combine("src", "Lib", "Lib.csproj"); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"remove project {projectToRemove}"); + cmd.Should().Pass(); + + File.ReadAllText(solutionPath) + .Should().BeVisuallyEquivalentTo(ExpectedSlnContentsAfterRemoveLastNestedProj); + } } } From a80e8fa636114c6973ded280e499bc604944ec2e Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Wed, 4 Jan 2017 18:17:25 -0600 Subject: [PATCH 45/94] Update Microsoft.NETCore.App to 1.0.3. --- .../DesktopTestProjects/AppWithProjTool2Fx/App.csproj | 2 +- .../AppWithNonExistingToolDependency.csproj | 2 +- .../EmptyItemGroup/EmptyItemGroup.csproj | 2 +- .../DotnetAddP2PProjects/Lib/Lib.csproj | 2 +- .../DotnetAddP2PProjects/MoreThanOne/a.csproj | 2 +- .../DotnetAddP2PProjects/MoreThanOne/b.csproj | 2 +- .../Net452AndNetCoreApp10Lib.csproj | 2 +- .../DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj | 2 +- .../DotnetAddP2PProjects/ValidRef/ValidRef.csproj | 2 +- .../WithDoubledRef/WithDoubledRef.csproj | 2 +- .../WithExistingRefCondOnItem.csproj | 2 +- .../WithExistingRefCondWhitespaces.csproj | 2 +- .../WithRefCondNonUniform/WithRefCondNonUniform.csproj | 2 +- .../WithRefNoCondNonUniform.csproj | 2 +- .../AppWithDepOnTool/AppWithDepOnTool.csproj | 2 +- .../ToolWithRandomPackageName.csproj | 2 +- .../ToolWithOutputName/ToolWithOutputName.csproj | 2 +- .../dotnet-dependency-context-test.csproj | 2 +- .../dotnet-dependency-tool-invoker.csproj | 2 +- .../dotnet-desktop-and-portable.csproj | 2 +- .../dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj | 2 +- .../dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj | 2 +- .../dotnet-portable/dotnet-portable.csproj | 2 +- .../AppWithDepOnToolWithOutputName.csproj | 2 +- .../AppWithDirectAndToolDep.csproj | 2 +- .../AppWithDirectDep/AppWithDirectDep.csproj | 2 +- .../AppWithDirectDepWithOutputName.csproj | 2 +- .../MSBuildAppWithMultipleFrameworksAndTools.csproj | 2 +- .../AppWithToolDependency/AppWithToolDependency.csproj | 2 +- .../DependencyContextFromTool.csproj | 2 +- .../MSBuildAppWithMultipleFrameworks.csproj | 2 +- .../MSBuildAppWithMultipleFrameworksAndTools.csproj | 2 +- .../TestProjects/MSBuildTestApp/MSBuildTestApp.csproj | 2 +- .../SingleTargetApp/SingleTargetApp.csproj | 2 +- .../SingleTargetP0/SingleTargetP0.csproj | 2 +- .../SingleTargetP1/SingleTargetP1.csproj | 2 +- .../SingleTargetP2/SingleTargetP2.csproj | 2 +- .../TwoTargetApp/TwoTargetApp.csproj | 2 +- .../TwoTargetGraph/TwoTargetP0/TwoTargetP0.csproj | 2 +- .../TwoTargetGraph/TwoTargetP1/TwoTargetP1.csproj | 2 +- .../TwoTargetGraph/TwoTargetP2/TwoTargetP2.csproj | 2 +- .../TwoTargetLargeP0/TwoTargetLargeP0.csproj | 2 +- .../TwoTargetLargeP1/TwoTargetLargeP1.csproj | 2 +- .../TwoTargetLargeP2/TwoTargetLargeP2.csproj | 2 +- .../TwoTargetLargeP3/TwoTargetLargeP3.csproj | 2 +- .../TwoTargetLargeP4/TwoTargetLargeP4.csproj | 2 +- .../TwoTargetLargeP5/TwoTargetLargeP5.csproj | 2 +- .../TwoTargetLargeP6/TwoTargetLargeP6.csproj | 2 +- .../TestProjects/TestAppSimple/TestAppSimple.csproj | 2 +- .../TestProjects/TestAppWithEmptySln/App/App.csproj | 2 +- .../TestAppWithMultipleSlnFiles/App/App.csproj | 2 +- .../TestAppWithProjDepTool.csproj | 2 +- .../TestAppWithSlnAndCsprojFiles/App/App.csproj | 2 +- .../App/App.csproj | 2 +- .../TestAppWithSlnAndCsprojToRemove/App/App.csproj | 2 +- .../App/App.csproj | 2 +- .../App/App.csproj | 2 +- .../VSTestDesktopAndNetCore.csproj | 2 +- .../VSTestDotNetCore/VSTestDotNetCore.csproj | 2 +- .../VSTestXunitDesktopAndNetCore.csproj | 2 +- .../VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj | 2 +- build.proj | 6 +++--- build/Microsoft.DotNet.Cli.Test.targets | 10 +++++----- build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets | 4 ++-- build/package/Microsoft.DotNet.Cli.Installer.DEB.proj | 2 +- .../package/Microsoft.DotNet.Cli.Installer.MSI.targets | 2 +- build/package/Microsoft.DotNet.Cli.Nupkg.targets | 4 ++-- src/dotnet-archive/dotnet-archive.csproj | 2 +- .../dotnet-new/CSharp_Console/$projectName$.csproj | 2 +- .../dotnet-new/CSharp_Mstest/$projectName$.csproj | 2 +- .../dotnet-new/CSharp_Web/$projectName$.csproj | 2 +- .../dotnet-new/CSharp_Xunittest/$projectName$.csproj | 2 +- .../dotnet-new/FSharp_Console/$projectName$.fsproj | 2 +- .../dotnet-new/FSharp_Mstest/$projectName$.fsproj | 2 +- .../dotnet-new/FSharp_Web/$projectName$.fsproj | 2 +- .../dotnet-new/FSharp_Xunittest/$projectName$.fsproj | 2 +- src/dotnet/dotnet.csproj | 2 +- src/redist/redist.csproj | 2 +- src/tool_csc/tool_csc.csproj | 2 +- src/tool_msbuild/tool_msbuild.csproj | 2 +- src/tool_nuget/tool_nuget.csproj | 2 +- .../ArgumentForwardingTests.csproj | 2 +- test/ArgumentsReflector/ArgumentsReflector.csproj | 2 +- test/EndToEnd/EndToEnd.csproj | 2 +- test/Kestrel.Tests/Kestrel.Tests.csproj | 2 +- .../Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj | 2 +- .../Microsoft.DotNet.Cli.Utils.Tests.csproj | 2 +- .../Microsoft.DotNet.Configurer.UnitTests.csproj | 2 +- .../Microsoft.DotNet.ProjectJsonMigration.Tests.csproj | 2 +- test/Performance/Performance.csproj | 2 +- test/crossgen.Tests/crossgen.Tests.csproj | 2 +- test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj | 2 +- .../dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj | 2 +- test/dotnet-build.Tests/dotnet-build.Tests.csproj | 2 +- test/dotnet-help.Tests/dotnet-help.Tests.csproj | 2 +- .../dotnet-list-p2ps.Tests.csproj | 2 +- .../dotnet-list-proj.Tests.csproj | 2 +- test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj | 2 +- test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj | 2 +- test/dotnet-new.Tests/dotnet-new.Tests.csproj | 2 +- .../dotnet-nuget.UnitTests.csproj | 2 +- test/dotnet-pack.Tests/dotnet-pack.Tests.csproj | 2 +- test/dotnet-publish.Tests/dotnet-publish.Tests.csproj | 2 +- .../dotnet-remove-p2p.Tests.csproj | 2 +- .../dotnet-remove-proj.Tests.csproj | 2 +- test/dotnet-restore.Tests/dotnet-restore.Tests.csproj | 2 +- test/dotnet-run.Tests/dotnet-run.Tests.csproj | 2 +- test/dotnet.Tests/dotnet.Tests.csproj | 2 +- tools/Archiver/Archiver.csproj | 2 +- .../MigrationDefaultsConstructor.csproj | 2 +- 110 files changed, 118 insertions(+), 118 deletions(-) diff --git a/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj b/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj index aef9570d5..18f187327 100644 --- a/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj +++ b/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj @@ -17,7 +17,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj b/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj index 9223824fb..52a2e1bb3 100644 --- a/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj +++ b/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj @@ -11,7 +11,7 @@ - + diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj index 399f34fad..14444c540 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj index f85cb9afa..06bd0d84e 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj index 5b2be1164..8f4d18661 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj index 5b2be1164..8f4d18661 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj index 4e7f7d2ef..8775ff282 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj index ad9097b82..e8974ba66 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj index f85cb9afa..06bd0d84e 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj index f79137c35..41130b8fd 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj index ed99bcd13..f686b12f9 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj index 3d8b49b25..494947536 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj index 2678dce5d..d64795816 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj index 36dff975a..13db1518f 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj @@ -9,7 +9,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj index 2185f85a6..5081ad676 100644 --- a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj +++ b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj @@ -12,7 +12,7 @@ - + 1.0.0 diff --git a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj index f7037e0c6..6889d77cc 100644 --- a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj +++ b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj @@ -18,7 +18,7 @@ - + diff --git a/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj b/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj index f9f34d42b..5d5b210a3 100644 --- a/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj +++ b/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj @@ -21,7 +21,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj b/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj index 2b6b7605d..065e1246c 100644 --- a/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj +++ b/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj @@ -22,7 +22,7 @@ - 1.0.1 + 1.0.3 1.0.1-beta-000933 diff --git a/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj b/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj index b6d2acb2c..176cccc02 100644 --- a/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj +++ b/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj @@ -25,7 +25,7 @@ - 1.0.1 + 1.0.3 4.0.0-rc2 diff --git a/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj b/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj index d427fe87f..181c9268c 100644 --- a/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj +++ b/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj @@ -26,7 +26,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj b/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj index 9fca81132..ab11548e0 100644 --- a/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj +++ b/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj @@ -14,7 +14,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj b/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj index 5035b32cb..bad9769b4 100644 --- a/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj +++ b/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj @@ -15,7 +15,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj b/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj index 0028c735d..fcb31219a 100644 --- a/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj +++ b/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj @@ -20,7 +20,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj b/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj index 9faefa503..e34b312d0 100755 --- a/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj +++ b/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj @@ -10,7 +10,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj b/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj index 163a025aa..d19694771 100755 --- a/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj +++ b/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj @@ -10,7 +10,7 @@ - 1.0.1 + 1.0.3 1.0.0 diff --git a/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj b/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj index 46a8840d3..1541e8f30 100755 --- a/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj +++ b/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj @@ -8,7 +8,7 @@ - 1.0.1 + 1.0.3 1.0.0 diff --git a/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj b/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj index 8d84d8fc1..2f8011dee 100755 --- a/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj +++ b/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj @@ -13,7 +13,7 @@ 1.0.0 - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj b/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj index ab0a2179f..51a5fe2ab 100644 --- a/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj +++ b/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj @@ -11,7 +11,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj b/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj index 57c0816ab..44672b914 100755 --- a/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj +++ b/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj @@ -10,7 +10,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj b/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj index c7c7862b4..b9dfef9b9 100755 --- a/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj +++ b/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj @@ -14,7 +14,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj index 00619603c..92df3195d 100644 --- a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj +++ b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj @@ -6,7 +6,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj index ab0a2179f..51a5fe2ab 100644 --- a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj +++ b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj @@ -11,7 +11,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj b/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj index c4c0b0662..9829c68cb 100644 --- a/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj +++ b/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj @@ -11,7 +11,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetApp/SingleTargetApp.csproj b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetApp/SingleTargetApp.csproj index 05d33eae6..ee72a84fa 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetApp/SingleTargetApp.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetApp/SingleTargetApp.csproj @@ -17,7 +17,7 @@ All - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP0/SingleTargetP0.csproj b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP0/SingleTargetP0.csproj index 98515b3a1..4997045cc 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP0/SingleTargetP0.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP0/SingleTargetP0.csproj @@ -21,7 +21,7 @@ All - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP1/SingleTargetP1.csproj b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP1/SingleTargetP1.csproj index 2475962df..e85446e4e 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP1/SingleTargetP1.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP1/SingleTargetP1.csproj @@ -20,7 +20,7 @@ All - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP2/SingleTargetP2.csproj b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP2/SingleTargetP2.csproj index f28ff34eb..37b69a72b 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP2/SingleTargetP2.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/SingleTargetGraph/SingleTargetP2/SingleTargetP2.csproj @@ -17,7 +17,7 @@ All - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetApp/TwoTargetApp.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetApp/TwoTargetApp.csproj index 0cf4073da..6ef51aa6d 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetApp/TwoTargetApp.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetApp/TwoTargetApp.csproj @@ -20,7 +20,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP0/TwoTargetP0.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP0/TwoTargetP0.csproj index b1f110869..a71a9bc5e 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP0/TwoTargetP0.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP0/TwoTargetP0.csproj @@ -23,7 +23,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP1/TwoTargetP1.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP1/TwoTargetP1.csproj index 09d101d53..05206f4df 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP1/TwoTargetP1.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP1/TwoTargetP1.csproj @@ -22,7 +22,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP2/TwoTargetP2.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP2/TwoTargetP2.csproj index 66b693fca..f6c4514e7 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP2/TwoTargetP2.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraph/TwoTargetP2/TwoTargetP2.csproj @@ -19,7 +19,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP0/TwoTargetLargeP0.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP0/TwoTargetLargeP0.csproj index 6ac912f3d..a657879c1 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP0/TwoTargetLargeP0.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP0/TwoTargetLargeP0.csproj @@ -23,7 +23,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP1/TwoTargetLargeP1.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP1/TwoTargetLargeP1.csproj index 3dc97e65b..101cfe3ab 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP1/TwoTargetLargeP1.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP1/TwoTargetLargeP1.csproj @@ -23,7 +23,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP2/TwoTargetLargeP2.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP2/TwoTargetLargeP2.csproj index f2616fc78..a9c50ae5c 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP2/TwoTargetLargeP2.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP2/TwoTargetLargeP2.csproj @@ -23,7 +23,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP3/TwoTargetLargeP3.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP3/TwoTargetLargeP3.csproj index db545abfe..6930893a8 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP3/TwoTargetLargeP3.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP3/TwoTargetLargeP3.csproj @@ -22,7 +22,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP4/TwoTargetLargeP4.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP4/TwoTargetLargeP4.csproj index 46a07e66c..b474c59bb 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP4/TwoTargetLargeP4.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP4/TwoTargetLargeP4.csproj @@ -23,7 +23,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP5/TwoTargetLargeP5.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP5/TwoTargetLargeP5.csproj index 66b693fca..f6c4514e7 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP5/TwoTargetLargeP5.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP5/TwoTargetLargeP5.csproj @@ -19,7 +19,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP6/TwoTargetLargeP6.csproj b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP6/TwoTargetLargeP6.csproj index 66b693fca..f6c4514e7 100755 --- a/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP6/TwoTargetLargeP6.csproj +++ b/TestAssets/TestProjects/PerformanceTestProjects/TwoTargetGraphLarge/TwoTargetLargeP6/TwoTargetLargeP6.csproj @@ -19,7 +19,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj b/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj index 381245f16..e2ebb85cc 100755 --- a/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj +++ b/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj @@ -10,7 +10,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj b/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj index 423ceb827..27e43f08e 100644 --- a/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj @@ -13,7 +13,7 @@ - + diff --git a/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj b/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj index c1313e358..920e2a206 100644 --- a/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj @@ -9,7 +9,7 @@ - + diff --git a/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj b/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj index 4ff85ffd3..5b481ea7e 100644 --- a/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj +++ b/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj @@ -10,7 +10,7 @@ - 1.0.1 + 1.0.3 1.0.0 diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj index 423ceb827..27e43f08e 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj @@ -13,7 +13,7 @@ - + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj index 423ceb827..27e43f08e 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj @@ -13,7 +13,7 @@ - + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj index c1313e358..920e2a206 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj @@ -9,7 +9,7 @@ - + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj index 423ceb827..27e43f08e 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj @@ -13,7 +13,7 @@ - + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/App/App.csproj index 423ceb827..27e43f08e 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/App/App.csproj @@ -13,7 +13,7 @@ - + diff --git a/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj index 9d6dfc1f6..caf2ed4f1 100644 --- a/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj @@ -15,7 +15,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj b/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj index b711c874d..f6738bb9b 100644 --- a/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj +++ b/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj @@ -11,7 +11,7 @@ - 1.0.1 + 1.0.3 1.0.6-preview diff --git a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj index 803d5f877..6be4c03f1 100644 --- a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj @@ -17,7 +17,7 @@ - 1.0.1 + 1.0.3 diff --git a/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj index 2bda46e52..a4db5ef95 100644 --- a/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj @@ -12,7 +12,7 @@ - 1.0.1 + 1.0.3 $(CLI_TestPlatform_Version) diff --git a/build.proj b/build.proj index e087c34c0..7dbf63c95 100644 --- a/build.proj +++ b/build.proj @@ -21,12 +21,12 @@ preview Microsoft.NETCore.App - 1.0.1 + 1.0.3 1.0.1 1.0.1 - 1.0.4 - 1.0.4 + 1.0.5 + 1.0.5 .exe diff --git a/build/Microsoft.DotNet.Cli.Test.targets b/build/Microsoft.DotNet.Cli.Test.targets index eb9e98c36..71a4ecd59 100644 --- a/build/Microsoft.DotNet.Cli.Test.targets +++ b/build/Microsoft.DotNet.Cli.Test.targets @@ -42,7 +42,7 @@ TestProject=%(TestProjects.ProjectPath); TestProjectName=%(TestProjects.OutputName); TestResultXmlDir=$(TestResultXmlDir); - ToolPath=$(Stage0Directory); + ToolPath=$(Stage2Directory); WorkingDirectory=%(TestProjects.ProjectDir) @@ -79,7 +79,7 @@ Outputs="%(TestProjects.BuildOutput)"> @@ -91,7 +91,7 @@ Outputs="@(RestoreTestsInputs->'%(RelativeDir)/obj/project.assets.json');@(RestoreTestsInputs->'%(RelativeDir)/obj/%(Filename).csproj.nuget.g.props');@(RestoreTestsInputs->'%(RelativeDir)/obj/%(Filename).csproj.nuget.g.targets')"> - @@ -217,7 +217,7 @@ @@ -231,7 +231,7 @@ + ToolPath="$(Stage2Directory)" /> - - + + ToolPath="$(Stage2Directory)" /> diff --git a/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets b/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets index e1f6ba617..f80aa83e8 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets +++ b/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets @@ -144,7 +144,7 @@ + -DotnetDir '$(Stage2Directory)'" /> @@ -36,7 +36,7 @@ - diff --git a/src/dotnet-archive/dotnet-archive.csproj b/src/dotnet-archive/dotnet-archive.csproj index 101c64e89..e14f0a3fa 100644 --- a/src/dotnet-archive/dotnet-archive.csproj +++ b/src/dotnet-archive/dotnet-archive.csproj @@ -14,7 +14,7 @@ - 1.0.1 + 1.0.3 diff --git a/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj index f9139840a..17afcf83e 100755 --- a/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj @@ -11,7 +11,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj index b87b9550d..fb82ed249 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj @@ -11,7 +11,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Web/$projectName$.csproj index 8aca574b2..034c3490b 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Web/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Web/$projectName$.csproj @@ -10,7 +10,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj index cd806133a..e04d58dd5 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj @@ -11,7 +11,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj index eb5b0c1da..525b81f9c 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj @@ -12,7 +12,7 @@ - + All diff --git a/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj index 5b14517c9..2f9bd9e51 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj @@ -11,7 +11,7 @@ - + diff --git a/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj index 797f4f0d9..e95a6c0a1 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj @@ -27,7 +27,7 @@ - + All diff --git a/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj index ff3b4ca7d..de838f1e6 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj @@ -11,7 +11,7 @@ - + diff --git a/src/dotnet/dotnet.csproj b/src/dotnet/dotnet.csproj index 10339746a..7654b9a38 100755 --- a/src/dotnet/dotnet.csproj +++ b/src/dotnet/dotnet.csproj @@ -42,7 +42,7 @@ 2.0.0 - 1.0.1 + 1.0.3 4.0.0 diff --git a/src/redist/redist.csproj b/src/redist/redist.csproj index b73b2aee8..22810658e 100644 --- a/src/redist/redist.csproj +++ b/src/redist/redist.csproj @@ -15,7 +15,7 @@ - 1.0.1 + 1.0.3 $(CLI_MSBuild_Version) diff --git a/src/tool_csc/tool_csc.csproj b/src/tool_csc/tool_csc.csproj index 08fc40508..8ada39b0e 100644 --- a/src/tool_csc/tool_csc.csproj +++ b/src/tool_csc/tool_csc.csproj @@ -7,7 +7,7 @@ - 1.0.1 + 1.0.3 2.0.0-beta6-60922-08 diff --git a/src/tool_msbuild/tool_msbuild.csproj b/src/tool_msbuild/tool_msbuild.csproj index 9eeaa366b..a879226f0 100644 --- a/src/tool_msbuild/tool_msbuild.csproj +++ b/src/tool_msbuild/tool_msbuild.csproj @@ -7,7 +7,7 @@ - 1.0.1 + 1.0.3 $(CLI_MSBuild_Version) diff --git a/src/tool_nuget/tool_nuget.csproj b/src/tool_nuget/tool_nuget.csproj index db1f16b22..afc588439 100644 --- a/src/tool_nuget/tool_nuget.csproj +++ b/src/tool_nuget/tool_nuget.csproj @@ -7,7 +7,7 @@ - 1.0.1 + 1.0.3 4.0.0-rc2 diff --git a/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj b/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj index a59c161ef..d2471e407 100644 --- a/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj +++ b/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj @@ -39,7 +39,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/ArgumentsReflector/ArgumentsReflector.csproj b/test/ArgumentsReflector/ArgumentsReflector.csproj index 77d8b33eb..7921cdee9 100644 --- a/test/ArgumentsReflector/ArgumentsReflector.csproj +++ b/test/ArgumentsReflector/ArgumentsReflector.csproj @@ -19,7 +19,7 @@ - 1.0.1 + 1.0.3 diff --git a/test/EndToEnd/EndToEnd.csproj b/test/EndToEnd/EndToEnd.csproj index 3612761ac..693653e42 100644 --- a/test/EndToEnd/EndToEnd.csproj +++ b/test/EndToEnd/EndToEnd.csproj @@ -43,7 +43,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/Kestrel.Tests/Kestrel.Tests.csproj b/test/Kestrel.Tests/Kestrel.Tests.csproj index 10b8021a2..bade7e9cd 100644 --- a/test/Kestrel.Tests/Kestrel.Tests.csproj +++ b/test/Kestrel.Tests/Kestrel.Tests.csproj @@ -39,7 +39,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj index 2fcc463e6..eeb446dee 100644 --- a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj @@ -26,7 +26,7 @@ - 1.0.1 + 1.0.3 $(CLI_TestPlatform_Version) diff --git a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj index f6a081999..255a95a24 100644 --- a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj @@ -52,7 +52,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.0.0 diff --git a/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj b/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj index daf0aebd4..f88c05b31 100644 --- a/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj +++ b/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj @@ -46,7 +46,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.0.0 diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj index 1ab92fd69..9d4ebd0bc 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj @@ -47,7 +47,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 2.2.0-beta4-build3444 diff --git a/test/Performance/Performance.csproj b/test/Performance/Performance.csproj index 86d10b7a4..3c515acba 100644 --- a/test/Performance/Performance.csproj +++ b/test/Performance/Performance.csproj @@ -39,7 +39,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/crossgen.Tests/crossgen.Tests.csproj b/test/crossgen.Tests/crossgen.Tests.csproj index 4f6f56599..c04561820 100644 --- a/test/crossgen.Tests/crossgen.Tests.csproj +++ b/test/crossgen.Tests/crossgen.Tests.csproj @@ -39,7 +39,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 2.2.0-beta4-build3444 diff --git a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj index 545a42239..3e87ee398 100644 --- a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj +++ b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj @@ -40,7 +40,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj b/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj index c643e2a85..12e181939 100644 --- a/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj +++ b/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj @@ -27,7 +27,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 2.2.0-beta4-build3444 diff --git a/test/dotnet-build.Tests/dotnet-build.Tests.csproj b/test/dotnet-build.Tests/dotnet-build.Tests.csproj index a5e1c6cf1..339bc0332 100644 --- a/test/dotnet-build.Tests/dotnet-build.Tests.csproj +++ b/test/dotnet-build.Tests/dotnet-build.Tests.csproj @@ -41,7 +41,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-help.Tests/dotnet-help.Tests.csproj b/test/dotnet-help.Tests/dotnet-help.Tests.csproj index 4a5297ea4..c66e28432 100644 --- a/test/dotnet-help.Tests/dotnet-help.Tests.csproj +++ b/test/dotnet-help.Tests/dotnet-help.Tests.csproj @@ -44,7 +44,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 $(CLI_MSBuild_Version) diff --git a/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj b/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj index c1d57e9ce..7f08643a8 100644 --- a/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj +++ b/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj @@ -40,7 +40,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj b/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj index 85a50f101..685f02273 100644 --- a/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj +++ b/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj @@ -28,7 +28,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 2.2.0-beta4-build3444 diff --git a/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj b/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj index ecd7d24b4..b8c4b4ff5 100644 --- a/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj +++ b/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj @@ -51,7 +51,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 2.2.0-beta4-build3444 diff --git a/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj b/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj index 13ee09e88..d3165f9aa 100644 --- a/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj +++ b/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj @@ -52,7 +52,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-new.Tests/dotnet-new.Tests.csproj b/test/dotnet-new.Tests/dotnet-new.Tests.csproj index 83a0c7150..805d1fa89 100644 --- a/test/dotnet-new.Tests/dotnet-new.Tests.csproj +++ b/test/dotnet-new.Tests/dotnet-new.Tests.csproj @@ -52,7 +52,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 $(CLI_MSBuild_Version) diff --git a/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj b/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj index 1f85d86da..ddc8257ac 100644 --- a/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj +++ b/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj @@ -52,7 +52,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj b/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj index c93afadff..ed70f9f45 100644 --- a/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj +++ b/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj @@ -43,7 +43,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj b/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj index e4221253c..0fdafc4a6 100644 --- a/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj +++ b/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj @@ -45,7 +45,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj index 48fc32042..9384eccbc 100644 --- a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj +++ b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj @@ -40,7 +40,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj b/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj index dffe716ab..19b7209ec 100644 --- a/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj +++ b/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj @@ -28,7 +28,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 2.2.0-beta4-build3444 diff --git a/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj b/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj index f03b8b454..24250de83 100644 --- a/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj +++ b/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj @@ -52,7 +52,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 $(CLI_MSBuild_Version) diff --git a/test/dotnet-run.Tests/dotnet-run.Tests.csproj b/test/dotnet-run.Tests/dotnet-run.Tests.csproj index 9226bd175..1162f74c6 100644 --- a/test/dotnet-run.Tests/dotnet-run.Tests.csproj +++ b/test/dotnet-run.Tests/dotnet-run.Tests.csproj @@ -41,7 +41,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/test/dotnet.Tests/dotnet.Tests.csproj b/test/dotnet.Tests/dotnet.Tests.csproj index 662528f18..0ac5f2a59 100644 --- a/test/dotnet.Tests/dotnet.Tests.csproj +++ b/test/dotnet.Tests/dotnet.Tests.csproj @@ -63,7 +63,7 @@ 2.2.0-beta4-build1194 - 1.0.1 + 1.0.3 4.1.1 diff --git a/tools/Archiver/Archiver.csproj b/tools/Archiver/Archiver.csproj index 9a0987367..3d673f7ac 100644 --- a/tools/Archiver/Archiver.csproj +++ b/tools/Archiver/Archiver.csproj @@ -15,7 +15,7 @@ - 1.0.1 + 1.0.3 diff --git a/tools/MigrationDefaultsConstructor/MigrationDefaultsConstructor.csproj b/tools/MigrationDefaultsConstructor/MigrationDefaultsConstructor.csproj index 254e14aaa..c801a1d11 100644 --- a/tools/MigrationDefaultsConstructor/MigrationDefaultsConstructor.csproj +++ b/tools/MigrationDefaultsConstructor/MigrationDefaultsConstructor.csproj @@ -13,7 +13,7 @@ - 1.0.1 + 1.0.3 $(CLI_MSBuild_Version) From 75786cd59a91470e9629b01b9fc2e93e3a37343f Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 09:43:02 -0600 Subject: [PATCH 46/94] Fixing It_adds_fx_version_as_a_param_when_the_tool_has_the_prefercliruntime_file test to expect 1.0.3. --- .../GivenAProjectToolsCommandResolver.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/Microsoft.DotNet.Cli.Utils.Tests/GivenAProjectToolsCommandResolver.cs b/test/Microsoft.DotNet.Cli.Utils.Tests/GivenAProjectToolsCommandResolver.cs index 64cf91492..26640ab59 100644 --- a/test/Microsoft.DotNet.Cli.Utils.Tests/GivenAProjectToolsCommandResolver.cs +++ b/test/Microsoft.DotNet.Cli.Utils.Tests/GivenAProjectToolsCommandResolver.cs @@ -282,7 +282,7 @@ namespace Microsoft.DotNet.Tests result.Should().NotBeNull(); - result.Args.Should().Contain("--fx-version 1.0.1"); + result.Args.Should().Contain("--fx-version 1.0.3"); } [Fact] From a4dbe61fe632582a227246074905acf5cb09172a Mon Sep 17 00:00:00 2001 From: Harsh Jain Date: Fri, 6 Jan 2017 01:12:26 +0530 Subject: [PATCH 47/94] Addressed PR feedback. --- src/dotnet/commands/dotnet-test/Program.cs | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/src/dotnet/commands/dotnet-test/Program.cs b/src/dotnet/commands/dotnet-test/Program.cs index 665fbe9d2..89d0c3595 100644 --- a/src/dotnet/commands/dotnet-test/Program.cs +++ b/src/dotnet/commands/dotnet-test/Program.cs @@ -283,7 +283,12 @@ namespace Microsoft.DotNet.Tools.Test private static string GetSemiColonEsacpedstring(string arg) { - return string.IsNullOrEmpty(arg) ? arg : arg.Replace(";", "%3b"); + if (arg.IndexOf(";") != -1) + { + return arg.Replace(";", "%3b"); + } + + return arg; } private static string[] GetSemiColonEscapedArgs(List args) @@ -293,16 +298,7 @@ namespace Microsoft.DotNet.Tools.Test foreach (string arg in args) { - if (arg.IndexOf(";") != -1) - { - array[counter] = arg.Replace(";", "%3b"); - } - else - { - array[counter] = arg; - } - - counter++; + array[counter++] = GetSemiColonEsacpedstring(arg); } return array; From 69e963669f0d468607978d1103797608ca8b88f8 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 11:46:02 -0800 Subject: [PATCH 48/94] Adding Release to the sdk defined constants so that we don't emit it during migration anymore. --- .../sdkdefaults.json | 2 +- .../GivenThatIWantToMigrateConfigurations.cs | 80 +++++++++++++++---- 2 files changed, 66 insertions(+), 16 deletions(-) diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/sdkdefaults.json b/src/Microsoft.DotNet.ProjectJsonMigration/sdkdefaults.json index 6ee921230..1cf03a483 100755 --- a/src/Microsoft.DotNet.ProjectJsonMigration/sdkdefaults.json +++ b/src/Microsoft.DotNet.ProjectJsonMigration/sdkdefaults.json @@ -128,7 +128,7 @@ }, { "Name": "DefineConstants", - "Value": "TRACE", + "Value": "RELEASE;TRACE", "Condition": "", "ParentCondition": " '$(Configuration)' == 'Release' " }, diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateConfigurations.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateConfigurations.cs index a287d7961..4c5f5ca7f 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateConfigurations.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateConfigurations.cs @@ -17,7 +17,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests public class GivenThatIWantToMigrateConfigurations : TestBase { [Fact] - public void Configuration_buildOptions_produce_expected_properties_in_a_group_with_a_condition() + public void ConfigurationBuildOptionsProduceExpectedPropertiesInAGroupWithACondition() { var mockProj = RunConfigurationsRuleOnPj(@" { @@ -40,7 +40,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Frameworks_buildOptions_produce_expected_properties_in_a_group_with_a_condition() + public void FrameworksBuildOptionsProduceExpectedPropertiesInAGroupWithACondition() { var mockProj = RunConfigurationsRuleOnPj(@" { @@ -63,7 +63,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void It_does_not_add_a_define_for_the_framework() + public void ItDoesNotAddADefineForTheFramework() { var mockProj = RunConfigurationsRuleOnPj(@" { @@ -74,11 +74,53 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests }"); mockProj.Properties.Count( - prop => prop.Name == "DefineConstants" && prop.Value.Contains("NETCOREAPP1_0")).Should().Be(0); + prop => prop.Name == "DefineConstants" && prop.Value.Contains("NETCOREAPP10")).Should().Be(0); } [Fact] - public void Configuration_buildOptions_properties_are_not_written_when_they_overlap_with_buildOptions() + public void ItDoesNotAddADefineForReleaseConfiguration() + { + var mockProj = RunRulesOnPj(@" + { + ""frameworks"": { + ""netcoreapp1.0"": { + } + } + }", + new IMigrationRule[] + { + new AddDefaultsToProjectRule(), + new MigrateConfigurationsRule(), + new RemoveDefaultsFromProjectRule() + }); + + mockProj.Properties.Count( + prop => prop.Name == "DefineConstants" && prop.Value.Contains("Release")).Should().Be(0); + } + + [Fact] + public void ItDoesNotAddADefineForDebugConfiguration() + { + var mockProj = RunRulesOnPj(@" + { + ""frameworks"": { + ""netcoreapp1.0"": { + } + } + }", + new IMigrationRule[] + { + new AddDefaultsToProjectRule(), + new MigrateConfigurationsRule(), + new RemoveDefaultsFromProjectRule() + }); + + mockProj.Properties.Count( + prop => prop.Name == "DefineConstants" && prop.Value.Contains("Debug")).Should().Be(0); + } + + [Fact] + public void ConfigurationBuildOptionsPropertiesAreNotWrittenWhenTheyOverlapWithBuildOptions() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -108,7 +150,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Configuration_buildOptions_includes_and_Remove_are_written_when_they_differ_from_base_buildOptions() + public void ConfigurationBuildOptionsIncludesAndRemoveAreWrittenWhenTheyDifferFromBaseBuildOptions() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -156,7 +198,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Configuration_buildOptions_which_have_different_excludes_than_buildOptions_overwrites() + public void ConfigurationBuildOptionsWhichHaveDifferentExcludesThanBuildOptionsOverwrites() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -216,7 +258,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Configuration_buildOptions_which_have_mappings_to_directory_add_link_metadata_with_item_metadata() + public void ConfigurationBuildOptionsWhichHaveMappingsToDirectoryAddLinkMetadataWithItemMetadata() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -272,7 +314,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Configuration_buildOptions_which_have_mappings_overlapping_with_includes_in_same_configuration_merged_items_have_Link_metadata() + public void ConfigurationBuildOptionsWhichHaveMappingsOverlappingWithIncludesInSameConfigurationMergedItemsHaveLinkMetadata() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -340,7 +382,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Configuration_buildOptions_which_have_mappings_overlapping_with_includes_in_root_buildoptions_has_remove() + public void ConfigurationBuildOptionsWhichHaveMappingsOverlappingWithIncludesInRootBuildoptionsHasRemove() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -403,7 +445,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void Configuration_buildOptions_which_have_mappings_overlapping_with_includes_in_same_configuration_and_root_buildOptions_have_removes_and_Link_metadata_and_encompassed_items_are_merged() + public void ConfigurationBuildOptionsWhichHaveMappingsOverlappingWithIncludesInSameConfigurationAndRootBuildOptionsHaveRemovesAndLinkMetadataAndEncompassedItemsAreMerged() { var mockProj = RunConfigurationsAndBuildOptionsRuleOnPj(@" { @@ -486,17 +528,25 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests private ProjectRootElement RunConfigurationsRuleOnPj(string s, string testDirectory = null) { testDirectory = testDirectory ?? Temp.CreateDirectory().Path; - return TemporaryProjectFileRuleRunner.RunRules(new[] {new MigrateConfigurationsRule()}, s, testDirectory); + return RunRulesOnPj(s, new[] { new MigrateConfigurationsRule() }, testDirectory); } private ProjectRootElement RunConfigurationsAndBuildOptionsRuleOnPj(string s, string testDirectory = null) { - testDirectory = testDirectory ?? Temp.CreateDirectory().Path; - return TemporaryProjectFileRuleRunner.RunRules(new IMigrationRule[] + return RunRulesOnPj( + s, + new IMigrationRule[] { new MigrateBuildOptionsRule(), new MigrateConfigurationsRule() - }, s, testDirectory); + }, + testDirectory); + } + + private ProjectRootElement RunRulesOnPj(string s, IMigrationRule[] migrationRules, string testDirectory = null) + { + testDirectory = testDirectory ?? Temp.CreateDirectory().Path; + return TemporaryProjectFileRuleRunner.RunRules(migrationRules, s, testDirectory); } } } From 3a4e23e373fde992abbdaf6df8ddfa3ed50885f5 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 4 Jan 2017 14:17:43 -0800 Subject: [PATCH 49/94] Updating the SDK to an SDK that includes globing for source and resources implicitly. --- .../AppWithProjTool2Fx/App.csproj | 6 +- .../AppWithRedirectsAndConfig.csproj | 3 - .../AppWithRedirectsNoConfig.csproj | 3 - .../LibWithProjTool2Fx/Lib.csproj | 6 +- .../AppWithNonExistingToolDependency.csproj | 5 - .../EmptyItemGroup/EmptyItemGroup.csproj | 5 +- .../DotnetAddP2PProjects/Lib/Lib.csproj | 5 +- .../DotnetAddP2PProjects/MoreThanOne/a.csproj | 4 - .../DotnetAddP2PProjects/MoreThanOne/b.csproj | 4 - .../Net452AndNetCoreApp10Lib.csproj | 4 - .../Net45Lib/Net45Lib.csproj | 4 - .../ValidRef/ValidRef.csproj | 4 - .../WithDoubledRef/WithDoubledRef.csproj | 4 - .../WithExistingRefCondOnItem.csproj | 4 - .../WithExistingRefCondWhitespaces.csproj | 4 - .../WithRefCondNonUniform.csproj | 4 - .../WithRefNoCondNonUniform.csproj | 4 - .../TestApp/Existing.csproj | 5 - ...ectWithUnresolvedPlatformDependency.csproj | 5 - .../AppWithDepOnTool/AppWithDepOnTool.csproj | 5 - .../ToolWithRandomPackageName.csproj | 2 - .../AppWithDepOnToolWithOutputName.csproj | 6 +- .../AppWithDirectAndToolDep.csproj | 6 +- .../AppWithDirectDep/AppWithDirectDep.csproj | 6 +- .../AppWithDirectDepWithOutputName.csproj | 6 +- ...ldAppWithMultipleFrameworksAndTools.csproj | 4 - .../AppWithToolDependency.csproj | 6 +- .../DependencyContextFromTool.csproj | 6 +- .../InvalidSolution/Lib/Lib.csproj | 4 - .../MyLibrary.csproj | 6 +- .../MSBuildAppWithMultipleFrameworks.csproj | 4 - ...ldAppWithMultipleFrameworksAndTools.csproj | 4 - .../MSBuildTestApp/MSBuildTestApp.csproj | 4 - .../CsprojLibrary1/CsprojLibrary1.csproj | 2 - .../CsprojLibrary2/CsprojLibrary2.csproj | 2 - .../CsprojLibrary3/CsprojLibrary3.csproj | 2 - .../TestAppSimple/TestAppSimple.csproj | 5 - .../TestAppWithEmptySln/App/App.csproj | 4 - .../TestAppWithEmptySln/Lib/Lib.csproj | 4 - .../App/App.csproj | 4 - .../TestAppWithProjDepTool.csproj | 4 - .../App/App.csproj | 4 - .../Lib/Lib.csproj | 4 - .../App/App.csproj | 4 - .../Lib/Lib.csproj | 4 - .../App/App.csproj | 4 - .../Lib/Lib.csproj | 4 - .../App/App.csproj | 4 - .../Lib/Lib.csproj | 4 - .../Lib/Lib.csproj | 4 - .../TestLibraryWithConfiguration.csproj | 6 +- .../VSTestDesktopAndNetCore.csproj | 4 - .../VSTestDotNetCore/VSTestDotNetCore.csproj | 4 - .../VSTestXunitDesktopAndNetCore.csproj | 4 - .../VSTestXunitDotNetCore.csproj | 5 - ...rosoft.DotNet.Cli.DependencyVersions.props | 4 +- .../Rules/MigrateBuildOptionsRule.cs | 91 ++++--------------- .../CSharp_Console/$projectName$.csproj | 5 - .../CSharp_Lib/$projectName$.csproj | 5 - .../CSharp_Mstest/$projectName$.csproj | 5 - .../CSharp_Xunittest/$projectName$.csproj | 5 - .../FSharp_Console/$projectName$.fsproj | 1 + .../FSharp_Lib/$projectName$.fsproj | 1 + .../FSharp_Mstest/$projectName$.fsproj | 1 + .../FSharp_Web/$projectName$.fsproj | 1 + .../FSharp_Xunittest/$projectName$.fsproj | 1 + .../GivenThatIWantToMigrateBuildOptions.cs | 24 +++-- 67 files changed, 55 insertions(+), 327 deletions(-) diff --git a/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj b/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj index 18f187327..a5487baba 100644 --- a/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj +++ b/TestAssets/DesktopTestProjects/AppWithProjTool2Fx/App.csproj @@ -5,11 +5,7 @@ $(PackageTargetFallback);portable-net45+win8;dnxcore50 win7-x64;win7-x86;osx.10.10-x64;osx.10.11-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;centos.7-x64;rhel.7.2-x64;debian.8-x64;fedora.23-x64;opensuse.13.2-x64 - - - - - + 1.0.0-* diff --git a/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsAndConfig/AppWithRedirectsAndConfig.csproj b/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsAndConfig/AppWithRedirectsAndConfig.csproj index caa3e334c..35f2ba2b2 100644 --- a/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsAndConfig/AppWithRedirectsAndConfig.csproj +++ b/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsAndConfig/AppWithRedirectsAndConfig.csproj @@ -7,10 +7,7 @@ - - - diff --git a/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsNoConfig/AppWithRedirectsNoConfig.csproj b/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsNoConfig/AppWithRedirectsNoConfig.csproj index 41d5e98eb..dd8d8b537 100644 --- a/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsNoConfig/AppWithRedirectsNoConfig.csproj +++ b/TestAssets/DesktopTestProjects/BindingRedirectSample/AppWithRedirectsNoConfig/AppWithRedirectsNoConfig.csproj @@ -7,10 +7,7 @@ - - - diff --git a/TestAssets/DesktopTestProjects/LibWithProjTool2Fx/Lib.csproj b/TestAssets/DesktopTestProjects/LibWithProjTool2Fx/Lib.csproj index 3a0dc74db..e621006e9 100644 --- a/TestAssets/DesktopTestProjects/LibWithProjTool2Fx/Lib.csproj +++ b/TestAssets/DesktopTestProjects/LibWithProjTool2Fx/Lib.csproj @@ -4,11 +4,7 @@ Library $(PackageTargetFallback);portable-net45+win8;dnxcore50;netcoreapp1.0 - - - - - + 1.0.0-* diff --git a/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj b/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj index 52a2e1bb3..f36c1bf2b 100644 --- a/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj +++ b/TestAssets/NonRestoredTestProjects/AppWithNonExistingToolDependency/AppWithNonExistingToolDependency.csproj @@ -5,11 +5,6 @@ netcoreapp1.0 - - - - - diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj index 14444c540..5815b4190 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/EmptyItemGroup/EmptyItemGroup.csproj @@ -3,10 +3,7 @@ Library net451;netcoreapp1.0 - - - - + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj index 06bd0d84e..51f727a05 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Lib/Lib.csproj @@ -3,10 +3,7 @@ Library net451;netcoreapp1.0;netstandard1.4 - - - - + 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj index 8f4d18661..a7277eb65 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/a.csproj @@ -3,10 +3,6 @@ Library netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj index 8f4d18661..a7277eb65 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/MoreThanOne/b.csproj @@ -3,10 +3,6 @@ Library netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj index 8775ff282..6e627ad42 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net452AndNetCoreApp10Lib/Net452AndNetCoreApp10Lib.csproj @@ -3,10 +3,6 @@ Library net452;netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj index e8974ba66..96073b2c7 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/Net45Lib/Net45Lib.csproj @@ -3,10 +3,6 @@ Library net45 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj index 06bd0d84e..044fe40ef 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/ValidRef/ValidRef.csproj @@ -3,10 +3,6 @@ Library net451;netcoreapp1.0;netstandard1.4 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj index 41130b8fd..09b0759f1 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithDoubledRef/WithDoubledRef.csproj @@ -3,10 +3,6 @@ Library net451;netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj index f686b12f9..0464c2816 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondOnItem/WithExistingRefCondOnItem.csproj @@ -3,10 +3,6 @@ Library net451;netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj index 494947536..949805ccc 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithExistingRefCondWhitespaces/WithExistingRefCondWhitespaces.csproj @@ -3,10 +3,6 @@ Library net451;netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj index d64795816..ebf9b12ee 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefCondNonUniform/WithRefCondNonUniform.csproj @@ -3,10 +3,6 @@ Library net451;netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj index 13db1518f..370bc5873 100644 --- a/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj +++ b/TestAssets/NonRestoredTestProjects/DotnetAddP2PProjects/WithRefNoCondNonUniform/WithRefNoCondNonUniform.csproj @@ -3,10 +3,6 @@ Library net451;netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/Existing.csproj b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/Existing.csproj index 322e07f8d..2f78a7e02 100644 --- a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/Existing.csproj +++ b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestApp/Existing.csproj @@ -4,11 +4,6 @@ netstandard1.4 - - - - - diff --git a/TestAssets/NonRestoredTestProjects/TestProjectWithUnresolvedPlatformDependency/TestProjectWithUnresolvedPlatformDependency.csproj b/TestAssets/NonRestoredTestProjects/TestProjectWithUnresolvedPlatformDependency/TestProjectWithUnresolvedPlatformDependency.csproj index 7ad98ec11..890428162 100755 --- a/TestAssets/NonRestoredTestProjects/TestProjectWithUnresolvedPlatformDependency/TestProjectWithUnresolvedPlatformDependency.csproj +++ b/TestAssets/NonRestoredTestProjects/TestProjectWithUnresolvedPlatformDependency/TestProjectWithUnresolvedPlatformDependency.csproj @@ -4,11 +4,6 @@ Exe $(PackageTargetFallback);dnxcore50 - - - - - 1.0.0 diff --git a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj index 5081ad676..de60f199d 100644 --- a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj +++ b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/AppWithDepOnTool/AppWithDepOnTool.csproj @@ -6,11 +6,6 @@ random-name - - - - - diff --git a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj index 6889d77cc..f62a21477 100644 --- a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj +++ b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj @@ -9,8 +9,6 @@ - - true lib\$(TargetFramework) diff --git a/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj b/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj index e34b312d0..1c2ecdf95 100755 --- a/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj +++ b/TestAssets/TestProjects/AppWithDepOnToolWithOutputName/AppWithDepOnToolWithOutputName.csproj @@ -3,11 +3,7 @@ netcoreapp1.0 Exe - - - - - + 1.0.3 diff --git a/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj b/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj index d19694771..fe4c0e02c 100755 --- a/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj +++ b/TestAssets/TestProjects/AppWithDirectAndToolDep/AppWithDirectAndToolDep.csproj @@ -3,11 +3,7 @@ netcoreapp1.0 Exe - - - - - + 1.0.3 diff --git a/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj b/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj index 1541e8f30..bbfb9be11 100755 --- a/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj +++ b/TestAssets/TestProjects/AppWithDirectDep/AppWithDirectDep.csproj @@ -14,11 +14,7 @@ 1.0.0 - - - - - + $(DefineConstants);RELEASE;TRACE true diff --git a/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj b/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj index 2f8011dee..877cce870 100755 --- a/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj +++ b/TestAssets/TestProjects/AppWithDirectDepWithOutputName/AppWithDirectDepWithOutputName.csproj @@ -3,11 +3,7 @@ netcoreapp1.0 Exe - - - - - + 1.0.0 diff --git a/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj b/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj index 51a5fe2ab..8c58766c2 100644 --- a/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj +++ b/TestAssets/TestProjects/AppWithMultipleFxAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj @@ -21,8 +21,4 @@ - - - - \ No newline at end of file diff --git a/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj b/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj index 44672b914..a31d87934 100755 --- a/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj +++ b/TestAssets/TestProjects/AppWithToolDependency/AppWithToolDependency.csproj @@ -3,11 +3,7 @@ netcoreapp1.0 Exe - - - - - + 1.0.3 diff --git a/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj b/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj index b9dfef9b9..6a76893df 100755 --- a/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj +++ b/TestAssets/TestProjects/DependencyContextFromTool/DependencyContextFromTool.csproj @@ -7,11 +7,7 @@ false $(PackageTargetFallback);dnxcore50;portable-net45+win8 - - - - - + 1.0.3 diff --git a/TestAssets/TestProjects/InvalidSolution/Lib/Lib.csproj b/TestAssets/TestProjects/InvalidSolution/Lib/Lib.csproj index f47b49f65..9f8bcbb51 100644 --- a/TestAssets/TestProjects/InvalidSolution/Lib/Lib.csproj +++ b/TestAssets/TestProjects/InvalidSolution/Lib/Lib.csproj @@ -4,10 +4,6 @@ netstandard1.4 - - - - diff --git a/TestAssets/TestProjects/LibraryWithOutputAssemblyName/MyLibrary.csproj b/TestAssets/TestProjects/LibraryWithOutputAssemblyName/MyLibrary.csproj index 411f7c65b..529d3f399 100755 --- a/TestAssets/TestProjects/LibraryWithOutputAssemblyName/MyLibrary.csproj +++ b/TestAssets/TestProjects/LibraryWithOutputAssemblyName/MyLibrary.csproj @@ -2,11 +2,7 @@ netstandard1.5 - - - - - + 1.6.0 diff --git a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj index 92df3195d..1125a1669 100644 --- a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj +++ b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworks/MSBuildAppWithMultipleFrameworks.csproj @@ -10,8 +10,4 @@ - - - - \ No newline at end of file diff --git a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj index 51a5fe2ab..8c58766c2 100644 --- a/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj +++ b/TestAssets/TestProjects/MSBuildAppWithMultipleFrameworksAndTools/MSBuildAppWithMultipleFrameworksAndTools.csproj @@ -21,8 +21,4 @@ - - - - \ No newline at end of file diff --git a/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj b/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj index 9829c68cb..9713f8d67 100644 --- a/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj +++ b/TestAssets/TestProjects/MSBuildTestApp/MSBuildTestApp.csproj @@ -5,10 +5,6 @@ win7-x64;win7-x86;osx.10.10-x64;osx.10.11-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;centos.7-x64;rhel.7.2-x64;debian.8-x64;fedora.23-x64;opensuse.13.2-x64 - - - - 1.0.3 diff --git a/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary1/CsprojLibrary1.csproj b/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary1/CsprojLibrary1.csproj index 06471fc11..90ed848e5 100644 --- a/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary1/CsprojLibrary1.csproj +++ b/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary1/CsprojLibrary1.csproj @@ -7,8 +7,6 @@ - - diff --git a/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary2/CsprojLibrary2.csproj b/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary2/CsprojLibrary2.csproj index 06471fc11..90ed848e5 100644 --- a/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary2/CsprojLibrary2.csproj +++ b/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary2/CsprojLibrary2.csproj @@ -7,8 +7,6 @@ - - diff --git a/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary3/CsprojLibrary3.csproj b/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary3/CsprojLibrary3.csproj index 06471fc11..90ed848e5 100644 --- a/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary3/CsprojLibrary3.csproj +++ b/TestAssets/TestProjects/TestAppDependencyGraph/CsprojLibrary3/CsprojLibrary3.csproj @@ -7,8 +7,6 @@ - - diff --git a/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj b/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj index e2ebb85cc..365778100 100755 --- a/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj +++ b/TestAssets/TestProjects/TestAppSimple/TestAppSimple.csproj @@ -3,11 +3,6 @@ netcoreapp1.0 Exe - - - - - 1.0.3 diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj b/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj index 27e43f08e..dbec1b003 100644 --- a/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithEmptySln/App/App.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - diff --git a/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj index f47b49f65..9f8bcbb51 100644 --- a/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj +++ b/TestAssets/TestProjects/TestAppWithEmptySln/Lib/Lib.csproj @@ -4,10 +4,6 @@ netstandard1.4 - - - - diff --git a/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj b/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj index 920e2a206..5ea4163e5 100644 --- a/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithMultipleSlnFiles/App/App.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - diff --git a/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj b/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj index 5b481ea7e..f252d7975 100644 --- a/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj +++ b/TestAssets/TestProjects/TestAppWithProjDepTool/TestAppWithProjDepTool.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj index 27e43f08e..dbec1b003 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/App/App.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/Lib/Lib.csproj index f47b49f65..9f8bcbb51 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/Lib/Lib.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojFiles/Lib/Lib.csproj @@ -4,10 +4,6 @@ netstandard1.4 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj index 27e43f08e..dbec1b003 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/App/App.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/Lib/Lib.csproj index aacaac752..4a0fd46d5 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/Lib/Lib.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojProjectGuidFiles/Lib/Lib.csproj @@ -5,10 +5,6 @@ {84A45D44-B677-492D-A6DA-B3A71135AB8E} - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj index 920e2a206..5ea4163e5 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/App/App.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj index f47b49f65..9f8bcbb51 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojToRemove/Lib/Lib.csproj @@ -4,10 +4,6 @@ netstandard1.4 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj index 27e43f08e..dbec1b003 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/App/App.csproj @@ -4,10 +4,6 @@ netcoreapp1.0 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/Lib/Lib.csproj index f47b49f65..9f8bcbb51 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/Lib/Lib.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndDuplicateProjectReferences/Lib/Lib.csproj @@ -4,10 +4,6 @@ netstandard1.4 - - - - diff --git a/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/Lib/Lib.csproj b/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/Lib/Lib.csproj index f47b49f65..9f8bcbb51 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/Lib/Lib.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndExistingCsprojReferences/Lib/Lib.csproj @@ -4,10 +4,6 @@ netstandard1.4 - - - - diff --git a/TestAssets/TestProjects/TestLibraryWithConfiguration/TestLibraryWithConfiguration.csproj b/TestAssets/TestProjects/TestLibraryWithConfiguration/TestLibraryWithConfiguration.csproj index f922f23b3..4924ce508 100755 --- a/TestAssets/TestProjects/TestLibraryWithConfiguration/TestLibraryWithConfiguration.csproj +++ b/TestAssets/TestProjects/TestLibraryWithConfiguration/TestLibraryWithConfiguration.csproj @@ -4,11 +4,7 @@ $(NoWarn);CS1591 true - - - - - + 1.6.0 diff --git a/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj index caf2ed4f1..7c765ff51 100644 --- a/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestDesktopAndNetCore/VSTestDesktopAndNetCore.csproj @@ -9,10 +9,6 @@ DESKTOP;$(DefineConstants) - - - - 1.0.3 diff --git a/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj b/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj index f6738bb9b..97230db7a 100644 --- a/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj +++ b/TestAssets/TestProjects/VSTestDotNetCore/VSTestDotNetCore.csproj @@ -5,10 +5,6 @@ netcoreapp1.0 - - - - 1.0.3 diff --git a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj index 6be4c03f1..758ab76c2 100644 --- a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj @@ -11,10 +11,6 @@ DESKTOP;$(DefineConstants) - - - - 1.0.3 diff --git a/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj index a4db5ef95..491c84b0b 100644 --- a/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDotNetCore/VSTestXunitDotNetCore.csproj @@ -5,11 +5,6 @@ netcoreapp1.0 - - - - - 1.0.3 diff --git a/build/Microsoft.DotNet.Cli.DependencyVersions.props b/build/Microsoft.DotNet.Cli.DependencyVersions.props index b5f1c45df..5f758a72e 100644 --- a/build/Microsoft.DotNet.Cli.DependencyVersions.props +++ b/build/Microsoft.DotNet.Cli.DependencyVersions.props @@ -2,8 +2,8 @@ 15.1.0-preview-000458-02 - 1.0.0-alpha-20161230-1 - 1.0.0-alpha-20161205-1-154 + 1.0.0-alpha-20170104-3 + 1.0.0-alpha-20170104-1-189 15.0.0-preview-20161227-02 diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs index f5e54155e..88a404e25 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs @@ -111,10 +111,10 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules compilerOptions => compilerOptions.OutputName != null); private IncludeContextTransform CompileFilesTransform => - new IncludeContextTransform("Compile", transformMappings: false); + new IncludeContextTransform("Compile", false, ic => ic != null); private IncludeContextTransform EmbedFilesTransform => - new IncludeContextTransform("EmbeddedResource", transformMappings: false); + new IncludeContextTransform("EmbeddedResource", false, ic => ic != null); private IncludeContextTransform CopyToOutputFilesTransform => new IncludeContextTransform("Content", transformMappings: true) @@ -139,11 +139,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules private Func>CompileFilesTransformExecute => (compilerOptions, projectDirectory, projectType) => - CompileFilesTransform.Transform(GetCompileIncludeContext(compilerOptions, projectDirectory)); + CompileFilesTransform.Transform(compilerOptions.CompileInclude); private Func> EmbedFilesTransformExecute => (compilerOptions, projectDirectory, projectType) => - EmbedFilesTransform.Transform(GetEmbedIncludeContext(compilerOptions, projectDirectory)); + EmbedFilesTransform.Transform(GetEmbedIncludeContext(compilerOptions)); private Func> CopyToOutputFilesTransformExecute => (compilerOptions, projectDirectory, projectType) => @@ -298,12 +298,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules var configurationOutput = includeContextTransformExecute(configurationCompilerOptions, projectDirectory, projectType); - configurationOutput = RemoveDefaultCompileAndEmbeddedResourceForWebProjects( - configurationOutput, - projectType, - csproj); - transformApplicator.Execute(configurationOutput, itemGroup, mergeExisting: true); + if (configurationOutput != null) + { + transformApplicator.Execute(configurationOutput, itemGroup, mergeExisting: true); + } } } @@ -353,39 +352,17 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules foreach (var includeContextTransformExecute in _includeContextTransformExecutes) { var transform = includeContextTransformExecute(compilerOptions, projectDirectory, projectType); - - transform = RemoveDefaultCompileAndEmbeddedResourceForWebProjects( - transform, - projectType, - csproj); - transformApplicator.Execute( - transform, - itemGroup, - mergeExisting: true); + if (transform != null) + { + transformApplicator.Execute( + transform, + itemGroup, + mergeExisting: true); + } } } - private IEnumerable RemoveDefaultCompileAndEmbeddedResourceForWebProjects( - IEnumerable transform, - ProjectType projectType, - ProjectRootElement csproj) - { - if(projectType == ProjectType.Web) - { - var itemsToRemove = transform.Where(p => - p != null && - p.Include.Contains("**\\*") && - (p.ItemType == "Compile" || p.ItemType == "EmbeddedResource")); - - CleanExistingItems(csproj, new [] {"Compile", "EmbeddedResource"}); - - transform = transform.Where(p => !itemsToRemove.Contains(p)); - } - - return transform; - } - private void CleanExistingProperties(ProjectRootElement csproj) { var existingPropertiesToRemove = new [] {"OutputType", "TargetExt"}; @@ -401,43 +378,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules } } - private void CleanExistingItems(ProjectRootElement csproj, IEnumerable itemsToRemove) + private IncludeContext GetEmbedIncludeContext(CommonCompilerOptions compilerOptions) { - foreach (var itemName in itemsToRemove) - { - var items = csproj.Items.Where(i => i.ItemType == itemName); + var embedIncludeContext = compilerOptions.EmbedInclude; - foreach (var item in items) - { - item.Parent.RemoveChild(item); - } - } - } - - private IncludeContext GetCompileIncludeContext(CommonCompilerOptions compilerOptions, string projectDirectory) - { - // Defaults from src/Microsoft.DotNet.ProjectModel/ProjectReader.cs #L596 - return compilerOptions.CompileInclude ?? - new IncludeContext( - projectDirectory, - "compile", - new JObject(), - ProjectFilesCollection.DefaultCompileBuiltInPatterns, - DefaultEmptyExcludeOption); - } - - private IncludeContext GetEmbedIncludeContext(CommonCompilerOptions compilerOptions, string projectDirectory) - { - // Defaults from src/Microsoft.DotNet.ProjectModel/ProjectReader.cs #L602 - var embedIncludeContext = compilerOptions.EmbedInclude ?? - new IncludeContext( - projectDirectory, - "embed", - new JObject(), - ProjectFilesCollection.DefaultResourcesBuiltInPatterns, - DefaultEmptyExcludeOption); - - embedIncludeContext.BuiltInsExclude.Add("@(EmbeddedResource)"); + embedIncludeContext?.BuiltInsExclude.Add("@(EmbeddedResource)"); return embedIncludeContext; } diff --git a/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj index 17afcf83e..0161faaf7 100755 --- a/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Console/$projectName$.csproj @@ -5,11 +5,6 @@ netcoreapp1.0 - - - - - diff --git a/src/dotnet/commands/dotnet-new/CSharp_Lib/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Lib/$projectName$.csproj index 322e07f8d..2f78a7e02 100755 --- a/src/dotnet/commands/dotnet-new/CSharp_Lib/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Lib/$projectName$.csproj @@ -4,11 +4,6 @@ netstandard1.4 - - - - - diff --git a/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj index fb82ed249..2882e5f0a 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Mstest/$projectName$.csproj @@ -5,11 +5,6 @@ netcoreapp1.0 - - - - - diff --git a/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj index e04d58dd5..c84c426ce 100644 --- a/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj +++ b/src/dotnet/commands/dotnet-new/CSharp_Xunittest/$projectName$.csproj @@ -5,11 +5,6 @@ netcoreapp1.0 - - - - - diff --git a/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj index 525b81f9c..a564e5fd1 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Console/$projectName$.fsproj @@ -4,6 +4,7 @@ Exe netcoreapp1.0 1.0.0-alpha + false diff --git a/src/dotnet/commands/dotnet-new/FSharp_Lib/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Lib/$projectName$.fsproj index f12243115..28b8ccebe 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Lib/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Lib/$projectName$.fsproj @@ -3,6 +3,7 @@ netstandard1.6 1.0.0-alpha + false diff --git a/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj index 2f9bd9e51..265b668a0 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Mstest/$projectName$.fsproj @@ -3,6 +3,7 @@ Exe netcoreapp1.0 + false diff --git a/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj index e95a6c0a1..622dabb4d 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Web/$projectName$.fsproj @@ -4,6 +4,7 @@ Exe netcoreapp1.0 true + false diff --git a/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj b/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj index de838f1e6..35db92034 100644 --- a/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj +++ b/src/dotnet/commands/dotnet-new/FSharp_Xunittest/$projectName$.fsproj @@ -3,6 +3,7 @@ Exe netcoreapp1.0 + false diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateBuildOptions.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateBuildOptions.cs index 193c9fe12..81d245811 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateBuildOptions.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateBuildOptions.cs @@ -49,18 +49,14 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void MigratingEmptyBuildOptionsPopulatesOnlyCompileAndEmbeddedResource() + public void MigratingEmptyBuildOptionsGeneratesAnEmptyCSProj() { var mockProj = RunBuildOptionsRuleOnPj(@" { ""buildOptions"": { } }"); - mockProj.Items.Count().Should().Be(2); - mockProj.Items.First(i => i.ItemType == "Compile").Include.Should().Be(@"**\*.cs"); - mockProj.Items.First(i => i.ItemType == "Compile").Exclude.Should().BeEmpty(); - mockProj.Items.First(i => i.ItemType == "EmbeddedResource").Include.Should().Be(@"compiler\resources\**\*;**\*.resx"); - mockProj.Items.First(i => i.ItemType == "EmbeddedResource").Exclude.Should().Be("@(EmbeddedResource)"); + mockProj.Items.Count().Should().Be(0); } [Fact] @@ -84,6 +80,22 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Items.Count().Should().Be(0); } + [Fact] + public void MigratingConsoleProjectWithoutCustomSourcesOrResourcesDoesNotEmitCompileAndEmbeddedResource() + { + var mockProj = RunBuildOptionsRuleOnPj(@" + { + ""buildOptions"": { + ""emitEntryPoint"": true + }, + ""frameworks"": { + ""netcoreapp1.0"": {} + } + }"); + + mockProj.Items.Count().Should().Be(0); + } + public void MigratingOutputNamePopulatesAssemblyName() { var mockProj = RunBuildOptionsRuleOnPj(@" From 92ee4aac26d8a8b5bb33b698d4b45d1baf968b00 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Wed, 4 Jan 2017 22:13:19 -0800 Subject: [PATCH 50/94] Pinning the CLI version because once this goes in, the next stage0 won't allow for having compile in the csprojs. We will have to update the CLI ones. --- run-build.ps1 | 4 ++-- run-build.sh | 4 ++-- test/dotnet-vstest.Tests/VSTestTests.cs | 7 ++++++- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/run-build.ps1 b/run-build.ps1 index 6e8150c7a..947356f63 100644 --- a/run-build.ps1 +++ b/run-build.ps1 @@ -103,8 +103,8 @@ if ($LastExitCode -ne 0) # install the post-PJnistic stage0 $dotnetInstallPath = Join-Path $toolsLocalPath "dotnet-install.ps1" -Write-Host "$dotnetInstallPath -Version ""latest"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" -Invoke-Expression "$dotnetInstallPath -Version ""latest"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" +Write-Host "$dotnetInstallPath -Version ""1.0.0-preview5-004384"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" +Invoke-Expression "$dotnetInstallPath -Version ""1.0.0-preview5-004384"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" if ($LastExitCode -ne 0) { Write-Output "The .NET CLI installation failed with exit code $LastExitCode" diff --git a/run-build.sh b/run-build.sh index 459e55019..d1c1450d0 100755 --- a/run-build.sh +++ b/run-build.sh @@ -163,8 +163,8 @@ if [ $? != 0 ]; then fi # now execute the script -echo "installing CLI: $dotnetInstallPath --version \"latest\" --install-dir $DOTNET_INSTALL_DIR --architecture \"$ARCHITECTURE\"" -$dotnetInstallPath --version "latest" --install-dir $DOTNET_INSTALL_DIR --architecture "$ARCHITECTURE" +echo "installing CLI: $dotnetInstallPath --version \"1.0.0-preview5-004384\" --install-dir $DOTNET_INSTALL_DIR --architecture \"$ARCHITECTURE\"" +$dotnetInstallPath --version "1.0.0-preview5-004384" --install-dir $DOTNET_INSTALL_DIR --architecture "$ARCHITECTURE" if [ $? != 0 ]; then echo "run-build: Error: Boot-strapping post-PJ stage0 with exit code $?." >&2 exit $? diff --git a/test/dotnet-vstest.Tests/VSTestTests.cs b/test/dotnet-vstest.Tests/VSTestTests.cs index 8a9a28eb3..f6787432a 100644 --- a/test/dotnet-vstest.Tests/VSTestTests.cs +++ b/test/dotnet-vstest.Tests/VSTestTests.cs @@ -19,12 +19,17 @@ namespace Microsoft.DotNet.Cli.VSTest.Tests var testAppName = "VSTestDotNetCore"; var testRoot = TestAssets.Get(testAppName) .CreateInstance() + .WithSourceFiles() .WithRestoreFiles() - .WithBuildFiles() .Root; var configuration = Environment.GetEnvironmentVariable("CONFIGURATION") ?? "Debug"; + new BuildCommand() + .WithWorkingDirectory(testRoot) + .Execute() + .Should().Pass(); + var outputDll = testRoot .GetDirectory("bin", configuration, "netcoreapp1.0") .GetFile($"{testAppName}.dll"); From 3b69588db25f68c7041c0a8cd4be117fbe538a87 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 09:32:20 -0800 Subject: [PATCH 51/94] Picking up the latest SDK and adding back some named parameters to MigrateBuildOptionsRule for clarity. Updating the tool project to use BuiltProjectOutputGroupOutput instead of content because of SDK issue https://github.com/dotnet/sdk/issues/588 --- .../ToolWithRandomPackageName.csproj | 7 +++---- build/Microsoft.DotNet.Cli.DependencyVersions.props | 2 +- .../Rules/MigrateBuildOptionsRule.cs | 4 ++-- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj index f62a21477..592c7bfcb 100644 --- a/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj +++ b/TestAssets/NonRestoredTestProjects/ToolWithRandomPackageName/ToolWithRandomPackageName/ToolWithRandomPackageName.csproj @@ -9,10 +9,9 @@ - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + diff --git a/build/Microsoft.DotNet.Cli.DependencyVersions.props b/build/Microsoft.DotNet.Cli.DependencyVersions.props index 5f758a72e..4cf2278de 100644 --- a/build/Microsoft.DotNet.Cli.DependencyVersions.props +++ b/build/Microsoft.DotNet.Cli.DependencyVersions.props @@ -2,7 +2,7 @@ 15.1.0-preview-000458-02 - 1.0.0-alpha-20170104-3 + 1.0.0-alpha-20170105-1 1.0.0-alpha-20170104-1-189 15.0.0-preview-20161227-02 diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs index 88a404e25..bd6e5ad1d 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateBuildOptionsRule.cs @@ -111,10 +111,10 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules compilerOptions => compilerOptions.OutputName != null); private IncludeContextTransform CompileFilesTransform => - new IncludeContextTransform("Compile", false, ic => ic != null); + new IncludeContextTransform("Compile", transformMappings: false, condition: ic => ic != null); private IncludeContextTransform EmbedFilesTransform => - new IncludeContextTransform("EmbeddedResource", false, ic => ic != null); + new IncludeContextTransform("EmbeddedResource", transformMappings: false, condition: ic => ic != null); private IncludeContextTransform CopyToOutputFilesTransform => new IncludeContextTransform("Content", transformMappings: true) From 205244fb8aa57d84762ea77e5a933ba0a2b1c555 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 12:23:29 -0800 Subject: [PATCH 52/94] Fixing failing test and making it work with the new SDK --- .../VSTestXunitDesktopAndNetCore.csproj | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj index 758ab76c2..1795bb8cf 100644 --- a/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj +++ b/TestAssets/TestProjects/VSTestXunitDesktopAndNetCore/VSTestXunitDesktopAndNetCore.csproj @@ -1,10 +1,11 @@ - - + Exe net46;netcoreapp1.0 + win7-x86 + win7-x86 @@ -17,12 +18,7 @@ - - - - 1.0.0-alpha-20161026-2 - All - + $(CLI_TestPlatform_Version) @@ -33,6 +29,4 @@ 2.2.0-beta4-build1194 - - From 72cd3d7c43496540aacf7affac8007ddbc46c700 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 12:40:23 -0800 Subject: [PATCH 53/94] Pinning stage0 to latest and reverting build scripts to use stage0 for now. --- build/Microsoft.DotNet.Cli.Test.targets | 10 +++++----- build/compile/Microsoft.DotNet.Cli.LzmaArchive.targets | 4 ++-- build/package/Microsoft.DotNet.Cli.Installer.DEB.proj | 2 +- .../package/Microsoft.DotNet.Cli.Installer.MSI.targets | 2 +- build/package/Microsoft.DotNet.Cli.Nupkg.targets | 4 ++-- run-build.ps1 | 4 ++-- run-build.sh | 4 ++-- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/build/Microsoft.DotNet.Cli.Test.targets b/build/Microsoft.DotNet.Cli.Test.targets index 71a4ecd59..eb9e98c36 100644 --- a/build/Microsoft.DotNet.Cli.Test.targets +++ b/build/Microsoft.DotNet.Cli.Test.targets @@ -42,7 +42,7 @@ TestProject=%(TestProjects.ProjectPath); TestProjectName=%(TestProjects.OutputName); TestResultXmlDir=$(TestResultXmlDir); - ToolPath=$(Stage2Directory); + ToolPath=$(Stage0Directory); WorkingDirectory=%(TestProjects.ProjectDir) @@ -79,7 +79,7 @@ Outputs="%(TestProjects.BuildOutput)"> @@ -91,7 +91,7 @@ Outputs="@(RestoreTestsInputs->'%(RelativeDir)/obj/project.assets.json');@(RestoreTestsInputs->'%(RelativeDir)/obj/%(Filename).csproj.nuget.g.props');@(RestoreTestsInputs->'%(RelativeDir)/obj/%(Filename).csproj.nuget.g.targets')"> - @@ -217,7 +217,7 @@ @@ -231,7 +231,7 @@ + ToolPath="$(Stage0Directory)" /> - - + + ToolPath="$(Stage0Directory)" /> diff --git a/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets b/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets index f80aa83e8..e1f6ba617 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets +++ b/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets @@ -144,7 +144,7 @@ + -DotnetDir '$(Stage0Directory)'" /> @@ -36,7 +36,7 @@ - diff --git a/run-build.ps1 b/run-build.ps1 index 947356f63..8b70746ed 100644 --- a/run-build.ps1 +++ b/run-build.ps1 @@ -103,8 +103,8 @@ if ($LastExitCode -ne 0) # install the post-PJnistic stage0 $dotnetInstallPath = Join-Path $toolsLocalPath "dotnet-install.ps1" -Write-Host "$dotnetInstallPath -Version ""1.0.0-preview5-004384"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" -Invoke-Expression "$dotnetInstallPath -Version ""1.0.0-preview5-004384"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" +Write-Host "$dotnetInstallPath -Version ""1.0.0-preview5-004392"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" +Invoke-Expression "$dotnetInstallPath -Version ""1.0.0-preview5-004392"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" if ($LastExitCode -ne 0) { Write-Output "The .NET CLI installation failed with exit code $LastExitCode" diff --git a/run-build.sh b/run-build.sh index d1c1450d0..553393b83 100755 --- a/run-build.sh +++ b/run-build.sh @@ -163,8 +163,8 @@ if [ $? != 0 ]; then fi # now execute the script -echo "installing CLI: $dotnetInstallPath --version \"1.0.0-preview5-004384\" --install-dir $DOTNET_INSTALL_DIR --architecture \"$ARCHITECTURE\"" -$dotnetInstallPath --version "1.0.0-preview5-004384" --install-dir $DOTNET_INSTALL_DIR --architecture "$ARCHITECTURE" +echo "installing CLI: $dotnetInstallPath --version \"1.0.0-preview5-004392\" --install-dir $DOTNET_INSTALL_DIR --architecture \"$ARCHITECTURE\"" +$dotnetInstallPath --version "1.0.0-preview5-004392" --install-dir $DOTNET_INSTALL_DIR --architecture "$ARCHITECTURE" if [ $? != 0 ]; then echo "run-build: Error: Boot-strapping post-PJ stage0 with exit code $?." >&2 exit $? From e5e11c19c252cc7d7d8c5771605cae3eb4bc98aa Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 14:07:03 -0600 Subject: [PATCH 54/94] Download and extract shared framework 1.1. This initial change gets 1.1 into the archive installers. Still need to bring it into the native installers as well. --- build/Microsoft.DotNet.Cli.Prepare.targets | 76 +++++++++++++++++-- .../TarGzFileExtractToDirectory.cs | 6 -- .../ZipFileExtractToDirectory.cs | 32 ++++++-- 3 files changed, 96 insertions(+), 18 deletions(-) diff --git a/build/Microsoft.DotNet.Cli.Prepare.targets b/build/Microsoft.DotNet.Cli.Prepare.targets index c8b6886f0..a39977cb8 100644 --- a/build/Microsoft.DotNet.Cli.Prepare.targets +++ b/build/Microsoft.DotNet.Cli.Prepare.targets @@ -130,9 +130,10 @@ - https://dotnetcli.azureedge.net/dotnet/$(CoreSetupChannel) - $(CoreSetupBlobRootUrl)/Binaries/$(SharedFrameworkVersion) - $(CoreSetupBlobRootUrl)/Installers + https://dotnetcli.azureedge.net/dotnet/ + $(CoreSetupBlobRootUrl)$(CoreSetupChannel) + $(CoreSetupBlobRootUrlWithChannel)/Binaries/$(SharedFrameworkVersion) + $(CoreSetupBlobRootUrlWithChannel)/Installers $(IntermediateDirectory)/coreSetupDownload/$(SharedFrameworkVersion) $(CoreSetupDownloadDirectory)/combinedSharedHostAndFrameworkArchive @@ -166,11 +167,74 @@ + + + + release/1.1.0 + 1.1.0 + 1.1.0 + 1.1.0 + + $(CoreSetupBlobRootUrl)$(AdditionalCoreSetupChannel) + $(AdditionalCoreSetupBlobRootUrlWithChannel)/Binaries/$(AdditionalSharedFrameworkVersion) + $(AdditionalCoreSetupBlobRootUrlWithChannel)/Installers + $(IntermediateDirectory)/coreSetupDownload/$(AdditionalSharedFrameworkVersion) + $(AdditionalCoreSetupDownloadDirectory)/combinedSharedHostAndFrameworkArchive + + + dotnet-host-$(ProductMonikerRid).$(AdditionalSharedHostVersion)$(InstallerExtension) + $(PackagesDirectory)/$(AdditionalDownloadedSharedHostInstallerFileName) + + dotnet-hostfxr-$(ProductMonikerRid).$(AdditionalHostFxrVersion)$(InstallerExtension) + $(PackagesDirectory)/$(AdditionalDownloadedHostFxrInstallerFileName) + + dotnet-sharedframework-$(ProductMonikerRid).$(AdditionalSharedFrameworkVersion)$(InstallerExtension) + $(PackagesDirectory)/$(AdditionalDownloadedSharedFrameworkInstallerFileName) + + dotnet-$(ProductMonikerRid).$(AdditionalSharedFrameworkVersion)$(ArchiveExtension) + + + + <_DownloadAndExtractItem Include="AdditionalCombinedSharedHostAndFrameworkArchive" + Condition="!Exists('$(AdditionalCombinedSharedHostAndFrameworkArchive)')"> + $(AdditionalSharedFrameworkArchiveBlobRootUrl)/$(AdditionalCombinedFrameworkHostCompressedFileName) + $(AdditionalCombinedSharedHostAndFrameworkArchive) + $(SharedFrameworkPublishDirectory) + + False + + + <_DownloadAndExtractItem Include="AdditionalDownloadedSharedFrameworkInstallerFile" + Condition="!Exists('$(AdditionalDownloadedSharedFrameworkInstallerFile)') And '$(InstallerExtension)' != ''"> + $(AdditionalCoreSetupInstallerBlobRootUrl)/$(AdditionalSharedFrameworkVersion)/$(AdditionalDownloadedSharedFrameworkInstallerFileName) + $(AdditionalDownloadedSharedFrameworkInstallerFile) + + + + <_DownloadAndExtractItem Include="AdditionalDownloadedSharedHostInstallerFile" + Condition="!Exists('$(AdditionalDownloadedSharedHostInstallerFile)') And '$(InstallerExtension)' != ''"> + $(AdditionalCoreSetupInstallerBlobRootUrl)/$(AdditionalSharedHostVersion)/$(AdditionalDownloadedSharedHostInstallerFileName) + $(AdditionalDownloadedSharedHostInstallerFile) + + + + <_DownloadAndExtractItem Include="AdditionalDownloadedHostFxrInstallerFile" + Condition="!Exists('$(AdditionalDownloadedHostFxrInstallerFile)') And '$(InstallerExtension)' != ''"> + $(AdditionalCoreSetupInstallerBlobRootUrl)/$(AdditionalHostFxrVersion)/$(AdditionalDownloadedHostFxrInstallerFileName) + $(AdditionalDownloadedHostFxrInstallerFile) + + + + + %(_DownloadAndExtractItem.OverwriteDestination) + True + + @@ -178,12 +242,12 @@ + OverwriteDestination="$(OverwriteExtractionDestination)" /> + OverwriteDestination="$(OverwriteExtractionDestination)" /> - diff --git a/build_projects/dotnet-cli-build/TarGzFileExtractToDirectory.cs b/build_projects/dotnet-cli-build/TarGzFileExtractToDirectory.cs index b2575a22e..f5d70b9a7 100644 --- a/build_projects/dotnet-cli-build/TarGzFileExtractToDirectory.cs +++ b/build_projects/dotnet-cli-build/TarGzFileExtractToDirectory.cs @@ -42,12 +42,6 @@ namespace Microsoft.DotNet.Build.Tasks Log.LogMessage(MessageImportance.Low, "'{0}' already exists, trying to delete before unzipping...", DestinationDirectory); Directory.Delete(DestinationDirectory, recursive: true); } - else - { - Log.LogWarning("'{0}' already exists. Did you forget to set '{1}' to true?", DestinationDirectory, nameof(OverwriteDestination)); - - retVal = false; - } } if (!File.Exists(SourceArchive)) diff --git a/build_projects/dotnet-cli-build/ZipFileExtractToDirectory.cs b/build_projects/dotnet-cli-build/ZipFileExtractToDirectory.cs index a17baf99a..aa78823f9 100644 --- a/build_projects/dotnet-cli-build/ZipFileExtractToDirectory.cs +++ b/build_projects/dotnet-cli-build/ZipFileExtractToDirectory.cs @@ -25,7 +25,7 @@ namespace Microsoft.DotNet.Build.Tasks public string DestinationDirectory { get; set; } /// - /// Indicates if the destination archive should be overwritten if it already exists. + /// Indicates if the destination directory should be cleaned if it already exists. /// public bool OverwriteDestination { get; set; } @@ -40,17 +40,37 @@ namespace Microsoft.DotNet.Build.Tasks Log.LogMessage(MessageImportance.Low, "'{0}' already exists, trying to delete before unzipping...", DestinationDirectory); Directory.Delete(DestinationDirectory, recursive: true); } - else - { - Log.LogWarning("'{0}' already exists. Did you forget to set '{1}' to true?", DestinationDirectory, nameof(OverwriteDestination)); - } } Log.LogMessage(MessageImportance.High, "Decompressing '{0}' into '{1}'...", SourceArchive, DestinationDirectory); if (!Directory.Exists(Path.GetDirectoryName(DestinationDirectory))) Directory.CreateDirectory(Path.GetDirectoryName(DestinationDirectory)); - ZipFile.ExtractToDirectory(SourceArchive, DestinationDirectory); + // match tar default behavior to overwrite by default + // Replace this code with ZipFile.ExtractToDirectory when https://github.com/dotnet/corefx/pull/14806 is available + using (ZipArchive archive = ZipFile.Open(SourceArchive, ZipArchiveMode.Read)) + { + DirectoryInfo di = Directory.CreateDirectory(DestinationDirectory); + string destinationDirectoryFullPath = di.FullName; + + foreach (ZipArchiveEntry entry in archive.Entries) + { + string fileDestinationPath = Path.GetFullPath(Path.Combine(destinationDirectoryFullPath, entry.FullName)); + + if (Path.GetFileName(fileDestinationPath).Length == 0) + { + // If it is a directory: + Directory.CreateDirectory(fileDestinationPath); + } + else + { + // If it is a file: + // Create containing directory: + Directory.CreateDirectory(Path.GetDirectoryName(fileDestinationPath)); + entry.ExtractToFile(fileDestinationPath, overwrite: true); + } + } + } } catch (Exception e) { From c331dc3b9716b9c6a96cbc5a0167c93cb262797d Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Thu, 5 Jan 2017 13:05:36 -0800 Subject: [PATCH 55/94] Preparing for dotnet remove PR --- .../dotnet-remove-package/Program.cs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs index bd3d33c32..b63b058e2 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/Program.cs @@ -1,12 +1,6 @@ // Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.IO; -using System.Linq; -using System.Text; using Microsoft.Build.Evaluation; using Microsoft.DotNet.Cli; using Microsoft.DotNet.Cli.CommandLine; @@ -15,6 +9,12 @@ using Microsoft.DotNet.Tools.Common; using Microsoft.DotNet.Tools.MSBuild; using Microsoft.DotNet.Tools.NuGet; using NuGet.Frameworks; +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Text; namespace Microsoft.DotNet.Tools.Remove.PackageReference { @@ -55,7 +55,8 @@ namespace Microsoft.DotNet.Tools.Remove.PackageReference projectFilePath = fileOrDirectory; } - var result = NuGetCommand.Run(TransformArgs(RemainingArguments.First(), projectFilePath)); + var packageToRemove = RemainingArguments.First(); + var result = NuGetCommand.Run(TransformArgs(packageToRemove, projectFilePath)); return result; } From 63669d5129f7c68175eefd29bc11a283d16f181f Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 15:39:35 -0600 Subject: [PATCH 56/94] MSI support for installing shared fx 1.1. --- build/Microsoft.DotNet.Cli.Prepare.targets | 38 ++++++++++--------- ...Microsoft.DotNet.Cli.Installer.MSI.targets | 3 ++ packaging/windows/clisdk/bundle.wxs | 9 +++++ packaging/windows/clisdk/generatebundle.ps1 | 6 +++ 4 files changed, 39 insertions(+), 17 deletions(-) diff --git a/build/Microsoft.DotNet.Cli.Prepare.targets b/build/Microsoft.DotNet.Cli.Prepare.targets index a39977cb8..7bb6235ad 100644 --- a/build/Microsoft.DotNet.Cli.Prepare.targets +++ b/build/Microsoft.DotNet.Cli.Prepare.targets @@ -124,6 +124,27 @@ dotnet-$(ProductMonikerRid).$(SharedFrameworkVersion)$(ArchiveExtension) + + + release/1.1.0 + 1.1.0 + 1.1.0 + 1.1.0 + + + dotnet-host-$(ProductMonikerRid).$(AdditionalSharedHostVersion)$(InstallerExtension) + $(PackagesDirectory)/$(AdditionalDownloadedSharedHostInstallerFileName) + + dotnet-hostfxr-$(ProductMonikerRid).$(AdditionalHostFxrVersion)$(InstallerExtension) + $(PackagesDirectory)/$(AdditionalDownloadedHostFxrInstallerFileName) + + dotnet-sharedframework-$(ProductMonikerRid).$(AdditionalSharedFrameworkVersion)$(InstallerExtension) + $(PackagesDirectory)/$(AdditionalDownloadedSharedFrameworkInstallerFileName) + + dotnet-$(ProductMonikerRid).$(AdditionalSharedFrameworkVersion)$(ArchiveExtension) + + + @@ -170,28 +191,11 @@ - release/1.1.0 - 1.1.0 - 1.1.0 - 1.1.0 - $(CoreSetupBlobRootUrl)$(AdditionalCoreSetupChannel) $(AdditionalCoreSetupBlobRootUrlWithChannel)/Binaries/$(AdditionalSharedFrameworkVersion) $(AdditionalCoreSetupBlobRootUrlWithChannel)/Installers $(IntermediateDirectory)/coreSetupDownload/$(AdditionalSharedFrameworkVersion) $(AdditionalCoreSetupDownloadDirectory)/combinedSharedHostAndFrameworkArchive - - - dotnet-host-$(ProductMonikerRid).$(AdditionalSharedHostVersion)$(InstallerExtension) - $(PackagesDirectory)/$(AdditionalDownloadedSharedHostInstallerFileName) - - dotnet-hostfxr-$(ProductMonikerRid).$(AdditionalHostFxrVersion)$(InstallerExtension) - $(PackagesDirectory)/$(AdditionalDownloadedHostFxrInstallerFileName) - - dotnet-sharedframework-$(ProductMonikerRid).$(AdditionalSharedFrameworkVersion)$(InstallerExtension) - $(PackagesDirectory)/$(AdditionalDownloadedSharedFrameworkInstallerFileName) - - dotnet-$(ProductMonikerRid).$(AdditionalSharedFrameworkVersion)$(ArchiveExtension) diff --git a/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets b/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets index f80aa83e8..e963fecff 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets +++ b/build/package/Microsoft.DotNet.Cli.Installer.MSI.targets @@ -111,6 +111,9 @@ '$(DownloadedSharedFrameworkInstallerFile)' '$(DownloadedHostFxrInstallerFile)' '$(DownloadedSharedHostInstallerFile)' + '$(AdditionalDownloadedSharedFrameworkInstallerFile)' + '$(AdditionalDownloadedHostFxrInstallerFile)' + '$(AdditionalDownloadedSharedHostInstallerFile)' '$(CombinedFrameworkSdkHostInstallerFile)' '$(WixRoot)' '$(SdkBrandName)' diff --git a/packaging/windows/clisdk/bundle.wxs b/packaging/windows/clisdk/bundle.wxs index 1ab894dd5..e4a4fd084 100644 --- a/packaging/windows/clisdk/bundle.wxs +++ b/packaging/windows/clisdk/bundle.wxs @@ -55,6 +55,15 @@ + + + + + + + + + diff --git a/packaging/windows/clisdk/generatebundle.ps1 b/packaging/windows/clisdk/generatebundle.ps1 index c0a32947f..baeeb5281 100644 --- a/packaging/windows/clisdk/generatebundle.ps1 +++ b/packaging/windows/clisdk/generatebundle.ps1 @@ -6,6 +6,9 @@ param( [Parameter(Mandatory=$true)][string]$SharedFxMSIFile, [Parameter(Mandatory=$true)][string]$HostFxrMSIFile, [Parameter(Mandatory=$true)][string]$SharedHostMSIFile, + [Parameter(Mandatory=$true)][string]$AdditionalSharedFxMSIFile, + [Parameter(Mandatory=$true)][string]$AdditionalHostFxrMSIFile, + [Parameter(Mandatory=$true)][string]$AdditionalSharedHostMSIFile, [Parameter(Mandatory=$true)][string]$DotnetBundleOutput, [Parameter(Mandatory=$true)][string]$WixRoot, [Parameter(Mandatory=$true)][string]$ProductMoniker, @@ -39,6 +42,9 @@ function RunCandleForBundle -dSharedFXMsiSourcePath="$SharedFxMSIFile" ` -dHostFXRMsiSourcePath="$HostFxrMSIFile" ` -dSharedHostMsiSourcePath="$SharedHostMSIFile" ` + -dAdditionalSharedFXMsiSourcePath="$AdditionalSharedFxMSIFile" ` + -dAdditionalHostFXRMsiSourcePath="$AdditionalHostFxrMSIFile" ` + -dAdditionalSharedHostMsiSourcePath="$AdditionalSharedHostMSIFile" ` -arch "$Architecture" ` -ext WixBalExtension.dll ` -ext WixUtilExtension.dll ` From f8de8d5a809ba0ee7755884051956a0a3c25653e Mon Sep 17 00:00:00 2001 From: Justin Goshi Date: Thu, 5 Jan 2017 12:04:57 -1000 Subject: [PATCH 57/94] dotnet add uses ProjectTypeGuid or DefaultProjectTypeGuid (#5218) * dotnet add uses ProjectTypeGuid or DefaultProjectTypeGuid * Create ProjectInstanceExtensions per PR comments --- .../TestLibrary/project.json | 9 +- .../TestLibrary/project.json | 9 +- .../SlnFileWithNoProjectReferences.sln | 18 +++ .../App.sln | 18 +++ .../CSharpProject/App.config | 6 + .../CSharpProject/CSharpProject.csproj | 52 ++++++++ .../CSharpProject/Program.cs | 15 +++ .../CSharpProject/Properties/AssemblyInfo.cs | 36 ++++++ .../App.sln | 18 +++ .../FSharpProject/App.config | 6 + .../FSharpProject/AssemblyInfo.fs | 41 ++++++ .../FSharpProject/FSharpProject.fsproj | 81 ++++++++++++ .../FSharpProject/Program.fs | 7 ++ .../FSharpProject/packages.config | 4 + .../App.sln | 18 +++ .../UnknownProject/UnknownProject.unknownproj | 5 + .../App.sln | 18 +++ .../UnknownProject/UnknownProject.unknownproj | 6 + .../App.sln | 18 +++ .../UnknownProject/UnknownProject.unknownproj | 6 + .../App.sln | 18 +++ .../VBProject/App.config | 6 + .../VBProject/Module1.vb | 7 ++ .../My Project/Application.Designer.vb | 13 ++ .../VBProject/My Project/Application.myapp | 10 ++ .../VBProject/My Project/AssemblyInfo.vb | 35 ++++++ .../My Project/Resources.Designer.vb | 62 ++++++++++ .../VBProject/My Project/Resources.resx | 117 ++++++++++++++++++ .../VBProject/My Project/Settings.Designer.vb | 73 +++++++++++ .../VBProject/My Project/Settings.settings | 7 ++ .../VBProject/VBProject.vbproj | 109 ++++++++++++++++ .../ProjectTypeGuids.cs | 1 - src/dotnet/CommonLocalizableStrings.cs | 1 + src/dotnet/ProjectInstanceExtensions.cs | 48 +++++++ .../dotnet-add/dotnet-add-proj/Program.cs | 51 +++----- .../GivenDotnetAddProj.cs | 60 +++++++++ .../GivenThatIWantToMigrateSolutions.cs | 15 ++- 37 files changed, 964 insertions(+), 60 deletions(-) create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/App.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/App.config create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/CSharpProject.csproj create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Program.cs create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Properties/AssemblyInfo.cs create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/App.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/App.config create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/AssemblyInfo.fs create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/FSharpProject.fsproj create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/Program.fs create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/packages.config create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/App.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/UnknownProject/UnknownProject.unknownproj create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/App.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/UnknownProject/UnknownProject.unknownproj create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/App.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/UnknownProject/UnknownProject.unknownproj create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/App.sln create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/App.config create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/Module1.vb create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.Designer.vb create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.myapp create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/AssemblyInfo.vb create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.Designer.vb create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.resx create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.Designer.vb create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.settings create mode 100644 TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/VBProject.vbproj create mode 100644 src/dotnet/ProjectInstanceExtensions.cs diff --git a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestLibrary/project.json b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestLibrary/project.json index bdf53dd6e..032754312 100644 --- a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestLibrary/project.json +++ b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefs/TestLibrary/project.json @@ -1,13 +1,6 @@ { "version": "1.0.0-*", - "buildOptions": { - "nowarn": [ - "CS1591" - ], - "additionalArguments": [ - "-highentropyva+" - ] - },"dependencies": { + "dependencies": { "NETStandard.Library": "1.6.0" }, "frameworks": { diff --git a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestLibrary/project.json b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestLibrary/project.json index bdf53dd6e..032754312 100644 --- a/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestLibrary/project.json +++ b/TestAssets/NonRestoredTestProjects/PJAppWithSlnAndXprojRefsAndUnrelatedCsproj/TestLibrary/project.json @@ -1,13 +1,6 @@ { "version": "1.0.0-*", - "buildOptions": { - "nowarn": [ - "CS1591" - ], - "additionalArguments": [ - "-highentropyva+" - ] - },"dependencies": { + "dependencies": { "NETStandard.Library": "1.6.0" }, "frameworks": { diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferences/SlnFileWithNoProjectReferences.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/App.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/App.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/App.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/App.config b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/App.config new file mode 100644 index 000000000..88fa4027b --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/CSharpProject.csproj b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/CSharpProject.csproj new file mode 100644 index 000000000..2b11fd5a7 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/CSharpProject.csproj @@ -0,0 +1,52 @@ + + + + + Debug + AnyCPU + {AE23AD01-99E0-446F-A5F6-16ADBDD0D1E5} + Exe + CSharpProject + CSharpProject + v4.5.2 + 512 + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Program.cs b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Program.cs new file mode 100644 index 000000000..0760ae741 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Program.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace CSharpProject +{ + class Program + { + static void Main(string[] args) + { + } + } +} diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Properties/AssemblyInfo.cs b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..9dc33d763 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndCSharpProject/CSharpProject/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("CSharpProject")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("CSharpProject")] +[assembly: AssemblyCopyright("Copyright © 2016")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("ae23ad01-99e0-446f-a5f6-16adbdd0d1e5")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/App.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/App.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/App.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/App.config b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/App.config new file mode 100644 index 000000000..88fa4027b --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/AssemblyInfo.fs b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/AssemblyInfo.fs new file mode 100644 index 000000000..d8b2c37d6 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/AssemblyInfo.fs @@ -0,0 +1,41 @@ +namespace FSharpProject.AssemblyInfo + +open System.Reflection +open System.Runtime.CompilerServices +open System.Runtime.InteropServices + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[] +[] +[] +[] +[] +[] +[] +[] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [] +[] +[] + +do + () \ No newline at end of file diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/FSharpProject.fsproj b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/FSharpProject.fsproj new file mode 100644 index 000000000..cad8d59ce --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/FSharpProject.fsproj @@ -0,0 +1,81 @@ + + + + + Debug + AnyCPU + 2.0 + 52161bb2-18bf-4304-87e7-8d7f0c98ccf3 + Exe + FSharpProject + FSharpProject + v4.5.2 + true + 4.4.1.0 + FSharpProject + + + true + full + false + false + bin\$(Configuration)\ + DEBUG;TRACE + 3 + AnyCPU + bin\$(Configuration)\$(AssemblyName).XML + true + + + pdbonly + true + true + bin\$(Configuration)\ + TRACE + 3 + AnyCPU + bin\$(Configuration)\$(AssemblyName).XML + true + + + 11 + + + + + $(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets + + + + + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets + + + + + + + + + + + + + + True + + + + + + ..\packages\System.ValueTuple.4.0.0-rc3-24212-01\lib\netstandard1.1\System.ValueTuple.dll + + + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/Program.fs b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/Program.fs new file mode 100644 index 000000000..2bcf7f989 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/Program.fs @@ -0,0 +1,7 @@ +// Learn more about F# at http://fsharp.org +// See the 'F# Tutorial' project for more help. + +[] +let main argv = + printfn "%A" argv + 0 // return an integer exit code diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/packages.config b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/packages.config new file mode 100644 index 000000000..2688d2baf --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndFSharpProject/FSharpProject/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/App.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/App.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/App.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/UnknownProject/UnknownProject.unknownproj b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/UnknownProject/UnknownProject.unknownproj new file mode 100644 index 000000000..8b39c56a6 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProject/UnknownProject/UnknownProject.unknownproj @@ -0,0 +1,5 @@ + + + + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/App.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/App.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/App.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/UnknownProject/UnknownProject.unknownproj b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/UnknownProject/UnknownProject.unknownproj new file mode 100644 index 000000000..c5e694360 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids/UnknownProject/UnknownProject.unknownproj @@ -0,0 +1,6 @@ + + + + {20E2F8CC-55AA-4705-B10F-7ABA6F107ECE};{130159A9-F047-44B3-88CF-0CF7F02ED50F} + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/App.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/App.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/App.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/UnknownProject/UnknownProject.unknownproj b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/UnknownProject/UnknownProject.unknownproj new file mode 100644 index 000000000..2615598f1 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid/UnknownProject/UnknownProject.unknownproj @@ -0,0 +1,6 @@ + + + + {130159A9-F047-44B3-88CF-0CF7F02ED50F} + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/App.sln b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/App.sln new file mode 100644 index 000000000..5b61df887 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/App.sln @@ -0,0 +1,18 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26006.2 +MinimumVisualStudioVersion = 10.0.40219.1 +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/App.config b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/App.config new file mode 100644 index 000000000..88fa4027b --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/Module1.vb b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/Module1.vb new file mode 100644 index 000000000..5d7e3a343 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/Module1.vb @@ -0,0 +1,7 @@ +Module Module1 + + Sub Main() + + End Sub + +End Module diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.Designer.vb b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.Designer.vb new file mode 100644 index 000000000..88dd01c78 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.myapp b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.myapp new file mode 100644 index 000000000..e62f1a533 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 2 + true + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/AssemblyInfo.vb b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/AssemblyInfo.vb new file mode 100644 index 000000000..e06141688 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' General Information about an assembly is controlled through the following +' set of attributes. Change these attribute values to modify the information +' associated with an assembly. + +' Review the values of the assembly attributes + + + + + + + + + + +'The following GUID is for the ID of the typelib if this project is exposed to COM + + +' Version information for an assembly consists of the following four values: +' +' Major Version +' Minor Version +' Build Number +' Revision +' +' You can specify all the values or you can default the Build and Revision Numbers +' by using the '*' as shown below: +' + + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.Designer.vb b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.Designer.vb new file mode 100644 index 000000000..7b5d7f7fb --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.Designer.vb @@ -0,0 +1,62 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + ''' + ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("VBProject.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set(ByVal value As Global.System.Globalization.CultureInfo) + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.resx b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.resx new file mode 100644 index 000000000..af7dbebba --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.Designer.vb b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.Designer.vb new file mode 100644 index 000000000..40d08710c --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.VBProject.My.MySettings + Get + Return Global.VBProject.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.settings b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.settings new file mode 100644 index 000000000..85b890b3c --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/VBProject.vbproj b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/VBProject.vbproj new file mode 100644 index 000000000..e383214a4 --- /dev/null +++ b/TestAssets/TestProjects/SlnFileWithNoProjectReferencesAndVBProject/VBProject/VBProject.vbproj @@ -0,0 +1,109 @@ + + + + + Debug + AnyCPU + {399CECC0-BEAD-436F-9D5F-BB50EBD683DF} + Exe + VBProject.Module1 + VBProject + VBProject + 512 + Console + v4.5.2 + true + + + AnyCPU + true + full + true + true + bin\Debug\ + VBProject.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + AnyCPU + pdbonly + false + true + true + bin\Release\ + VBProject.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + + + + + + + + + + + + + + + + + + + + + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs b/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs index 723c5f4f1..547e93eef 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/ProjectTypeGuids.cs @@ -5,7 +5,6 @@ namespace Microsoft.DotNet.Cli.Sln.Internal { public static class ProjectTypeGuids { - public const string CPSProjectTypeGuid = "{13B669BE-BB05-4DDF-9536-439F39A36129}"; public const string CSharpProjectTypeGuid = "{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}"; public const string SolutionFolderGuid = "{2150E333-8FDC-42A3-9474-1A3956D46DE8}"; } diff --git a/src/dotnet/CommonLocalizableStrings.cs b/src/dotnet/CommonLocalizableStrings.cs index 135029829..754df1cdc 100644 --- a/src/dotnet/CommonLocalizableStrings.cs +++ b/src/dotnet/CommonLocalizableStrings.cs @@ -5,6 +5,7 @@ namespace Microsoft.DotNet.Tools { internal class CommonLocalizableStrings { + public const string UnsupportedProjectType = "Unsupported project type. Please check with your sdk provider."; public const string ProjectAlreadyHasAreference = "Project already has a reference to `{0}`."; public const string ProjectReferenceCouldNotBeFound = "Project reference `{0}` could not be found."; public const string ProjectReferenceRemoved = "Project reference `{0}` removed."; diff --git a/src/dotnet/ProjectInstanceExtensions.cs b/src/dotnet/ProjectInstanceExtensions.cs new file mode 100644 index 000000000..4bbcb5247 --- /dev/null +++ b/src/dotnet/ProjectInstanceExtensions.cs @@ -0,0 +1,48 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +using Microsoft.Build.Execution; +using System; +using System.Linq; + +namespace Microsoft.DotNet.Tools.Common +{ + public static class ProjectInstanceExtensions + { + public static string GetProjectId(this ProjectInstance projectInstance) + { + var projectGuidProperty = projectInstance.GetPropertyValue("ProjectGuid"); + var projectGuid = string.IsNullOrEmpty(projectGuidProperty) + ? Guid.NewGuid() + : new Guid(projectGuidProperty); + return projectGuid.ToString("B").ToUpper(); + } + + public static string GetProjectTypeGuid(this ProjectInstance projectInstance) + { + string projectTypeGuid = null; + + var projectTypeGuidProperty = projectInstance.GetPropertyValue("ProjectTypeGuid"); + if (!string.IsNullOrEmpty(projectTypeGuidProperty)) + { + projectTypeGuid = projectTypeGuidProperty.Split(';').Last(); + } + else + { + projectTypeGuid = projectInstance.GetPropertyValue("DefaultProjectTypeGuid"); + } + + if (string.IsNullOrEmpty(projectTypeGuid)) + { + //ISSUE: https://github.com/dotnet/sdk/issues/522 + //The real behavior we want (once DefaultProjectTypeGuid support is in) is to throw + //when we cannot find ProjectTypeGuid or DefaultProjectTypeGuid. But for now we + //need the same behavior we had before this change. + //throw new GracefulException(CommonLocalizableStrings.UnsupportedProjectType); + projectTypeGuid = "{13B669BE-BB05-4DDF-9536-439F39A36129}"; // CPS guid + } + + return projectTypeGuid; + } + } +} diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs b/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs index f6a57db28..07781a1ba 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/Program.cs @@ -3,6 +3,7 @@ using Microsoft.Build.Construction; using Microsoft.Build.Evaluation; +using Microsoft.Build.Execution; using Microsoft.DotNet.Cli; using Microsoft.DotNet.Cli.Sln.Internal; using Microsoft.DotNet.Cli.Utils; @@ -42,15 +43,12 @@ namespace Microsoft.DotNet.Tools.Add.ProjectToSolution } PathUtility.EnsureAllPathsExist(RemainingArguments, CommonLocalizableStrings.ProjectDoesNotExist); - var relativeProjectPaths = RemainingArguments.Select((p) => - PathUtility.GetRelativePath( - PathUtility.EnsureTrailingSlash(slnFile.BaseDirectory), - Path.GetFullPath(p))).ToList(); + var fullProjectPaths = RemainingArguments.Select((p) => Path.GetFullPath(p)).ToList(); int preAddProjectCount = slnFile.Projects.Count; - foreach (var project in relativeProjectPaths) + foreach (var fullProjectPath in fullProjectPaths) { - AddProject(slnFile, project); + AddProject(slnFile, fullProjectPath); } if (slnFile.Projects.Count > preAddProjectCount) @@ -61,47 +59,30 @@ namespace Microsoft.DotNet.Tools.Add.ProjectToSolution return 0; } - private void AddProject(SlnFile slnFile, string projectPath) + private void AddProject(SlnFile slnFile, string fullProjectPath) { - var projectPathNormalized = PathUtility.GetPathWithDirectorySeparator(projectPath); + var relativeProjectPath = PathUtility.GetRelativePath( + PathUtility.EnsureTrailingSlash(slnFile.BaseDirectory), + fullProjectPath); if (slnFile.Projects.Any((p) => - string.Equals(p.FilePath, projectPathNormalized, StringComparison.OrdinalIgnoreCase))) + string.Equals(p.FilePath, relativeProjectPath, StringComparison.OrdinalIgnoreCase))) { Reporter.Output.WriteLine(string.Format( CommonLocalizableStrings.SolutionAlreadyContainsProject, slnFile.FullPath, - projectPath)); + relativeProjectPath)); } else { - string projectGuidString = null; - if (File.Exists(projectPath)) - { - var projectElement = ProjectRootElement.Open( - projectPath, - new ProjectCollection(), - preserveFormatting: true); - - var projectGuidProperty = projectElement.Properties.Where((p) => - string.Equals(p.Name, "ProjectGuid", StringComparison.OrdinalIgnoreCase)).FirstOrDefault(); - - if (projectGuidProperty != null) - { - projectGuidString = projectGuidProperty.Value; - } - } - - var projectGuid = (projectGuidString == null) - ? Guid.NewGuid() - : new Guid(projectGuidString); + var projectInstance = new ProjectInstance(fullProjectPath); var slnProject = new SlnProject { - Id = projectGuid.ToString("B").ToUpper(), - TypeGuid = ProjectTypeGuids.CPSProjectTypeGuid, - Name = Path.GetFileNameWithoutExtension(projectPath), - FilePath = projectPathNormalized + Id = projectInstance.GetProjectId(), + TypeGuid = projectInstance.GetProjectTypeGuid(), + Name = Path.GetFileNameWithoutExtension(relativeProjectPath), + FilePath = relativeProjectPath }; AddDefaultBuildConfigurations(slnFile, slnProject); @@ -111,7 +92,7 @@ namespace Microsoft.DotNet.Tools.Add.ProjectToSolution slnFile.Projects.Add(slnProject); Reporter.Output.WriteLine( - string.Format(CommonLocalizableStrings.ProjectAddedToTheSolution, projectPath)); + string.Format(CommonLocalizableStrings.ProjectAddedToTheSolution, relativeProjectPath)); } } diff --git a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs index 1428292e2..4b012c489 100644 --- a/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs +++ b/test/dotnet-add-proj.Tests/GivenDotnetAddProj.cs @@ -493,6 +493,66 @@ EndGlobal .Should().BeVisuallyEquivalentTo(contentBefore); } + //ISSUE: https://github.com/dotnet/sdk/issues/522 + //[Fact] + public void WhenPassedAnUnknownProjectTypeItFails() + { + var projectDirectory = TestAssets + .Get("SlnFileWithNoProjectReferencesAndUnknownProject") + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var slnFullPath = Path.Combine(projectDirectory, "App.sln"); + var contentBefore = File.ReadAllText(slnFullPath); + + var projectToAdd = Path.Combine("UnknownProject", "UnknownProject.unknownproj"); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"add App.sln project {projectToAdd}"); + cmd.Should().Fail(); + cmd.StdErr.Should().BeVisuallyEquivalentTo("Unsupported project type. Please check with your sdk provider."); + + File.ReadAllText(slnFullPath) + .Should().BeVisuallyEquivalentTo(contentBefore); + } + + [Theory] + //ISSUE: https://github.com/dotnet/sdk/issues/522 + //[InlineData("SlnFileWithNoProjectReferencesAndCSharpProject", "CSharpProject", "CSharpProject.csproj", ProjectTypeGuids.CSharpProjectTypeGuid)] + //[InlineData("SlnFileWithNoProjectReferencesAndFSharpProject", "FSharpProject", "FSharpProject.fsproj", "{F2A71F9B-5D33-465A-A702-920D77279786}")] + //[InlineData("SlnFileWithNoProjectReferencesAndVBProject", "VBProject", "VBProject.vbproj", "{F184B08F-C81C-45F6-A57F-5ABD9991F28F}")] + [InlineData("SlnFileWithNoProjectReferencesAndUnknownProjectWithSingleProjectTypeGuid", "UnknownProject", "UnknownProject.unknownproj", "{130159A9-F047-44B3-88CF-0CF7F02ED50F}")] + [InlineData("SlnFileWithNoProjectReferencesAndUnknownProjectWithMultipleProjectTypeGuids", "UnknownProject", "UnknownProject.unknownproj", "{130159A9-F047-44B3-88CF-0CF7F02ED50F}")] + public void WhenPassedAProjectItAddsCorrectProjectTypeGuid( + string testAsset, + string projectDir, + string projectName, + string expectedTypeGuid) + { + var projectDirectory = TestAssets + .Get(testAsset) + .CreateInstance() + .WithSourceFiles() + .Root + .FullName; + + var projectToAdd = Path.Combine(projectDir, projectName); + var cmd = new DotnetCommand() + .WithWorkingDirectory(projectDirectory) + .ExecuteWithCapturedOutput($"add App.sln project {projectToAdd}"); + cmd.Should().Pass(); + cmd.StdOut.Should().Be($"Project `{projectToAdd}` added to the solution."); + cmd.StdErr.Should().BeEmpty(); + + var slnFile = SlnFile.Read(Path.Combine(projectDirectory, "App.sln")); + var nonSolutionFolderProjects = slnFile.Projects.Where( + p => p.TypeGuid != ProjectTypeGuids.SolutionFolderGuid); + nonSolutionFolderProjects.Count().Should().Be(1); + nonSolutionFolderProjects.Single().TypeGuid.Should().Be(expectedTypeGuid); + } + private string GetExpectedSlnContents( string slnPath, string slnTemplate, diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs index f54fc2b98..08fdfca37 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateSolutions.cs @@ -18,8 +18,7 @@ namespace Microsoft.DotNet.Migration.Tests { MigrateAndBuild( "NonRestoredTestProjects", - "PJAppWithSlnAndXprojRefs", - ProjectTypeGuids.CSharpProjectTypeGuid); + "PJAppWithSlnAndXprojRefs"); } [Fact] @@ -27,8 +26,7 @@ namespace Microsoft.DotNet.Migration.Tests { MigrateAndBuild( "NonRestoredTestProjects", - "PJAppWithSlnAndXprojRefsAndUnrelatedCsproj", - ProjectTypeGuids.CSharpProjectTypeGuid); + "PJAppWithSlnAndXprojRefsAndUnrelatedCsproj"); } [Fact] @@ -36,11 +34,10 @@ namespace Microsoft.DotNet.Migration.Tests { MigrateAndBuild( "NonRestoredTestProjects", - "PJAppWithSlnAndXprojRefThatRefsCsprojWhereSlnDoesNotRefCsproj", - ProjectTypeGuids.CPSProjectTypeGuid); + "PJAppWithSlnAndXprojRefThatRefsCsprojWhereSlnDoesNotRefCsproj"); } - private void MigrateAndBuild(string groupName, string projectName, string subdirProjectTypeGuid) + private void MigrateAndBuild(string groupName, string projectName) { var projectDirectory = TestAssets .Get(groupName, projectName) @@ -81,7 +78,9 @@ namespace Microsoft.DotNet.Migration.Tests slnProject.FilePath.Should().Be(Path.Combine("..", "TestLibrary", "TestLibrary.csproj")); slnProject = nonSolutionFolderProjects.Where((p) => p.Name == "subdir").Single(); - slnProject.TypeGuid.Should().Be(subdirProjectTypeGuid); + //ISSUE: https://github.com/dotnet/sdk/issues/522 + //Once we have that change migrate will always burn in the C# guid + //slnProject.TypeGuid.Should().Be(ProjectTypeGuids.CSharpProjectTypeGuid); slnProject.FilePath.Should().Be(Path.Combine("src", "subdir", "subdir.csproj")); } } From 8334bb643d64d9ef13f976a2f728ebfeebebe476 Mon Sep 17 00:00:00 2001 From: Ankit Mishra Date: Thu, 5 Jan 2017 14:38:13 -0800 Subject: [PATCH 58/94] Fixing strings based on PR comments --- .../dotnet-remove-package/LocalizableStrings.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs index d8f7e45a2..bde80c6ea 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/LocalizableStrings.cs @@ -5,13 +5,13 @@ namespace Microsoft.DotNet.Tools.Remove.PackageReference { internal class LocalizableStrings { - public const string AppFullName = ".NET Remove Package reference Command"; + public const string AppFullName = ".NET Remove Package reference Command."; - public const string AppDescription = "Command to remove package reference"; + public const string AppDescription = "Command to remove package reference."; - public const string AppHelpText = "Package references to remove"; + public const string AppHelpText = "Package reference to remove."; - public const string SpecifyExactlyOnePackageReference = "Please specify one package reference to remove"; + public const string SpecifyExactlyOnePackageReference = "Please specify only one package reference to remove."; } } \ No newline at end of file From ab41acd8f5cbd7ecec4aea6e35dea03075bb8d79 Mon Sep 17 00:00:00 2001 From: Zlatko Knezevic Date: Thu, 5 Jan 2017 12:05:58 -0800 Subject: [PATCH 59/94] Adding strings for dotnet-sln command for LOC Adding strings both in the command folder as well as in the Help command. --- .../commands/dotnet-help/HelpCommand.cs | 1 + .../dotnet-help/LocalizableStrings.cs | 2 ++ .../commands/dotnet-sln/LocalizableStrings.cs | 34 +++++++++++++++++++ ...ivenThatIWantToShowHelpForDotnetCommand.cs | 1 + 4 files changed, 38 insertions(+) create mode 100644 src/dotnet/commands/dotnet-sln/LocalizableStrings.cs diff --git a/src/dotnet/commands/dotnet-help/HelpCommand.cs b/src/dotnet/commands/dotnet-help/HelpCommand.cs index a6e521555..1a14efe6b 100644 --- a/src/dotnet/commands/dotnet-help/HelpCommand.cs +++ b/src/dotnet/commands/dotnet-help/HelpCommand.cs @@ -35,6 +35,7 @@ namespace Microsoft.DotNet.Tools.Help pack {LocalizableStrings.PackDefinition} migrate {LocalizableStrings.MigrateDefinition} clean {LocalizableStrings.CleanDefinition} + sln {LocalizableStrings.SlnDefinition} Project modification commands: add Add items to the project diff --git a/src/dotnet/commands/dotnet-help/LocalizableStrings.cs b/src/dotnet/commands/dotnet-help/LocalizableStrings.cs index 2740d3cf0..d6ba17f6e 100644 --- a/src/dotnet/commands/dotnet-help/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-help/LocalizableStrings.cs @@ -61,5 +61,7 @@ public const string VsTestDefinition = "Runs Microsoft Test Execution Command Line Tool."; public const string CleanDefinition = "Clean build output(s)."; + + public const string SlnDefinition = "Modify solution (SLN) files."; } } diff --git a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs new file mode 100644 index 000000000..e5ccd3cbe --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs @@ -0,0 +1,34 @@ +// Copyright (c) .NET Foundation and contributors. All rights reserved. +// Licensed under the MIT license. See LICENSE file in the project root for full license information. + +namespace Microsoft.DotNet.Tools.Sln +{ + internal class LocalizableStrings + { + public const string AppFullName = ".NET modify solution file(s) command"; + + public const string AppDescription = "Command to add, remove and list projects from the solution (SLN) file."; + + public const string AppHelpText = "Projects to add to the solution."; + + public const string CmdSlnFile = ""; + + public const string CmdSlnFileText = "Solution file to operate on. If not specified, the command will search the current directory for one."; + + public const string AddSubcommandHelpText = "Add a specified project to the solution."; + + public const string RemoveSubcommandHelpText = "Remove the specified project from the solution. The project is not impacted."; + + public const string ListSubcommandHelpText = "List all projects in the solution."; + + public const string CreateSubcommandHelpText = "Create a solution file."; + + public const string MultipleSlnFilesError = "The current directory contains more than one solution file. Please specify the solution file to use."; + + public const string ProjectFileNotFoundError = "The specified project {0} was not found."; + + public const string SolutionFileNotFoundError = "The specified solution file {0} was not found."; + + public const string NoSolutionFileError = "The current directory does not contain a solution file. Please specify a solution file to use."; + } +} diff --git a/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs b/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs index 1c072eaf1..5b487e9cf 100644 --- a/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs +++ b/test/dotnet-help.Tests/GivenThatIWantToShowHelpForDotnetCommand.cs @@ -41,6 +41,7 @@ Commands: pack Creates a NuGet package. migrate Migrates a project.json based project to a msbuild based project. clean Clean build output(s). + sln Modify solution (SLN) files. Project modification commands: add Add items to the project From d14698f1f6f2712cec890a1996aa9c7cf73c7649 Mon Sep 17 00:00:00 2001 From: Piotr Puszkiewicz Date: Thu, 5 Jan 2017 14:56:11 -0800 Subject: [PATCH 60/94] Bump MSBuild Version to 15.1.0-preview-000503-01 (#5199) * Bump MSBuild Version to 15.1.0-preview-000503-01 * tool_csc->tool_roslyn * pull some properties up to dir.props * Move Roslyn to "Roslyn" subdirectory * Fix relative paths in RunCsc.* * Add removal of csc & vbc from deps.json * Revert roslyn to 2.0.0-rc3-61212-03 * netcoreapp -> 1.0.3 --- Microsoft.DotNet.Cli.sln | 2 +- NuGet.Config | 1 + build.proj | 4 +- build/Microsoft.DotNet.Cli.Compile.targets | 31 +++++---- ...rosoft.DotNet.Cli.DependencyVersions.props | 3 +- build/Microsoft.DotNet.Cli.Prepare.targets | 6 -- dir.props | 13 +++- dir.tasks | 3 + ...crosoft.DotNet.ProjectJsonMigration.csproj | 8 +-- .../dotnet-msbuild/MSBuildForwardingApp.cs | 2 +- src/dotnet/dotnet.csproj | 3 - src/redist/redist.csproj | 10 --- src/tool_csc/tool_csc.csproj | 25 -------- src/tool_msbuild/tool_msbuild.csproj | 12 ---- src/{redist => tool_roslyn}/RunCsc.cmd | 2 +- src/{redist => tool_roslyn}/RunCsc.sh | 2 +- src/tool_roslyn/tool_roslyn.csproj | 63 +++++++++++++++++++ 17 files changed, 103 insertions(+), 87 deletions(-) create mode 100644 dir.tasks delete mode 100644 src/tool_csc/tool_csc.csproj rename src/{redist => tool_roslyn}/RunCsc.cmd (82%) rename src/{redist => tool_roslyn}/RunCsc.sh (93%) create mode 100644 src/tool_roslyn/tool_roslyn.csproj diff --git a/Microsoft.DotNet.Cli.sln b/Microsoft.DotNet.Cli.sln index 031417dd4..6f974fa00 100644 --- a/Microsoft.DotNet.Cli.sln +++ b/Microsoft.DotNet.Cli.sln @@ -124,7 +124,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DotNet.TestFramew EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "redist", "src\redist\redist.csproj", "{098D9321-1201-4974-A75E-F58EBCD98ACF}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "tool_csc", "src\tool_csc\tool_csc.csproj", "{A0670C63-BA7A-4C1B-B9A7-1CA26A7F235C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "tool_roslyn", "src\tool_roslyn\tool_roslyn.csproj", "{A0670C63-BA7A-4C1B-B9A7-1CA26A7F235C}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "tool_msbuild", "src\tool_msbuild\tool_msbuild.csproj", "{D82A3246-9831-4024-A9B2-1932EEF3D56F}" EndProject diff --git a/NuGet.Config b/NuGet.Config index 6e43f2b13..baa008de9 100644 --- a/NuGet.Config +++ b/NuGet.Config @@ -5,6 +5,7 @@ + diff --git a/build.proj b/build.proj index 7dbf63c95..8e9fd472e 100644 --- a/build.proj +++ b/build.proj @@ -1,5 +1,6 @@ + @@ -15,9 +16,6 @@ Prepare;Compile;Test;Package;Publish Debug - $(MSBuildThisFileDirectory) - $(RepoRoot)/build_projects/dotnet-cli-build/bin/dotnet-cli-build - $(CLIBuildFileName).dll preview Microsoft.NETCore.App diff --git a/build/Microsoft.DotNet.Cli.Compile.targets b/build/Microsoft.DotNet.Cli.Compile.targets index bdba43bc0..846e2ee3e 100644 --- a/build/Microsoft.DotNet.Cli.Compile.targets +++ b/build/Microsoft.DotNet.Cli.Compile.targets @@ -10,9 +10,8 @@ - - - + + - + + Output="$(SdkOutputDirectory)" + Configuration="$(Configuration)" + VersionSuffix="$(CommitCount)" + ProjectPath="$(SrcDirectory)/redist/redist.csproj" + MSBuildArgs="/p:GenerateRuntimeConfigurationFiles=true" /> + + + @@ -141,13 +147,6 @@ SectionName="runtimeTargets" AssetPath="$(BinaryToCorehostifyRelDir)/%(AssetsToRemoveFromDeps.Identity).exe" /> - - - - - diff --git a/build/Microsoft.DotNet.Cli.DependencyVersions.props b/build/Microsoft.DotNet.Cli.DependencyVersions.props index 4cf2278de..d4e750424 100644 --- a/build/Microsoft.DotNet.Cli.DependencyVersions.props +++ b/build/Microsoft.DotNet.Cli.DependencyVersions.props @@ -1,7 +1,8 @@ - 15.1.0-preview-000458-02 + 15.1.0-preview-000503-01 + 2.0.0-rc3-61212-03 1.0.0-alpha-20170105-1 1.0.0-alpha-20170104-1-189 15.0.0-preview-20161227-02 diff --git a/build/Microsoft.DotNet.Cli.Prepare.targets b/build/Microsoft.DotNet.Cli.Prepare.targets index c8b6886f0..f0f1bc3d5 100644 --- a/build/Microsoft.DotNet.Cli.Prepare.targets +++ b/build/Microsoft.DotNet.Cli.Prepare.targets @@ -23,12 +23,6 @@ - - - - $(NUGET_PACKAGES) - $(RepoRoot)/.nuget/packages - diff --git a/dir.props b/dir.props index 442e1ef65..20897124d 100644 --- a/dir.props +++ b/dir.props @@ -1,3 +1,14 @@ - \ No newline at end of file + + + + $(MSBuildThisFileDirectory) + + $(NUGET_PACKAGES) + $(RepoRoot)/.nuget/packages + + $(RepoRoot)/build_projects/dotnet-cli-build/bin/dotnet-cli-build.dll + + + diff --git a/dir.tasks b/dir.tasks new file mode 100644 index 000000000..aa5f6731b --- /dev/null +++ b/dir.tasks @@ -0,0 +1,3 @@ + + + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj b/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj index 315f5c31d..0d3948e27 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj @@ -18,12 +18,8 @@ - - $(CLI_MSBuild_Version) - - - 2.0.0-beta6-60922-08 - + + $(DefineConstants);RELEASE diff --git a/src/dotnet/commands/dotnet-msbuild/MSBuildForwardingApp.cs b/src/dotnet/commands/dotnet-msbuild/MSBuildForwardingApp.cs index d526200ae..5b5e68232 100644 --- a/src/dotnet/commands/dotnet-msbuild/MSBuildForwardingApp.cs +++ b/src/dotnet/commands/dotnet-msbuild/MSBuildForwardingApp.cs @@ -101,7 +101,7 @@ namespace Microsoft.DotNet.Tools.MSBuild private static string GetRunCscPath() { var scriptExtension = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? ".cmd" : ".sh"; - return Path.Combine(AppContext.BaseDirectory, $"RunCsc{scriptExtension}"); + return Path.Combine(AppContext.BaseDirectory, "Roslyn", $"RunCsc{scriptExtension}"); } } } diff --git a/src/dotnet/dotnet.csproj b/src/dotnet/dotnet.csproj index 7654b9a38..e20521b8a 100755 --- a/src/dotnet/dotnet.csproj +++ b/src/dotnet/dotnet.csproj @@ -69,9 +69,6 @@ $(CLI_MSBuild_Version) - - 2.0.0-beta6-60922-08 - 1.0.1-beta-000933 diff --git a/src/redist/redist.csproj b/src/redist/redist.csproj index 22810658e..c3dfcdf3f 100644 --- a/src/redist/redist.csproj +++ b/src/redist/redist.csproj @@ -7,12 +7,6 @@ true $(PackageTargetFallback);dotnet5.4 - - - PreserveNewest - PreserveNewest - - 1.0.3 @@ -20,9 +14,6 @@ $(CLI_MSBuild_Version) - - 2.0.0-beta6-60922-08 - 4.0.0-rc2 @@ -42,7 +33,6 @@ - diff --git a/src/tool_csc/tool_csc.csproj b/src/tool_csc/tool_csc.csproj deleted file mode 100644 index 8ada39b0e..000000000 --- a/src/tool_csc/tool_csc.csproj +++ /dev/null @@ -1,25 +0,0 @@ - - - - - 1.0.0-preview5 - netcoreapp1.0 - - - - 1.0.3 - - - 2.0.0-beta6-60922-08 - - - 2.0.0-beta6-60922-08 - - - 1.4.0-rc2 - - - - $(DefineConstants);RELEASE - - \ No newline at end of file diff --git a/src/tool_msbuild/tool_msbuild.csproj b/src/tool_msbuild/tool_msbuild.csproj index a879226f0..06fb5ebb0 100644 --- a/src/tool_msbuild/tool_msbuild.csproj +++ b/src/tool_msbuild/tool_msbuild.csproj @@ -12,17 +12,5 @@ $(CLI_MSBuild_Version) - - 2.0.0-beta6-60922-08 - - - 2.0.0-beta6-60922-08 - - - 4.0.0-rc3-24128-00 - - - $(DefineConstants);RELEASE - \ No newline at end of file diff --git a/src/redist/RunCsc.cmd b/src/tool_roslyn/RunCsc.cmd similarity index 82% rename from src/redist/RunCsc.cmd rename to src/tool_roslyn/RunCsc.cmd index 14c66a5e5..7398082b2 100644 --- a/src/redist/RunCsc.cmd +++ b/src/tool_roslyn/RunCsc.cmd @@ -3,4 +3,4 @@ REM Copyright (c) .NET Foundation and contributors. All rights reserved. REM Licensed under the MIT license. See LICENSE file in the project root for full license information. -"%~dp0..\..\dotnet" "%~dp0csc.exe" %* +"%~dp0..\..\..\dotnet" "%~dp0csc.exe" %* diff --git a/src/redist/RunCsc.sh b/src/tool_roslyn/RunCsc.sh similarity index 93% rename from src/redist/RunCsc.sh rename to src/tool_roslyn/RunCsc.sh index 0f7d8f237..47aed63d1 100755 --- a/src/redist/RunCsc.sh +++ b/src/tool_roslyn/RunCsc.sh @@ -14,4 +14,4 @@ while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symli done DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" -"$DIR/../../dotnet" "$DIR/csc.exe" "$@" \ No newline at end of file +"$DIR/../../../dotnet" "$DIR/csc.exe" "$@" diff --git a/src/tool_roslyn/tool_roslyn.csproj b/src/tool_roslyn/tool_roslyn.csproj new file mode 100644 index 000000000..9b9965d49 --- /dev/null +++ b/src/tool_roslyn/tool_roslyn.csproj @@ -0,0 +1,63 @@ + + + + + + 1.0.0-preview5 + netcoreapp1.0 + true + + + + + + + + + + + + PreserveNewest + PreserveNewest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 6106cae066daeed36217c3227c7a0a2960d92d85 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 17:30:08 -0600 Subject: [PATCH 61/94] PKG support for installing shared fx 1.1. --- build/Microsoft.DotNet.Cli.Monikers.props | 12 +++-- ...Microsoft.DotNet.Cli.Installer.PKG.targets | 44 +++++++++++++++++-- packaging/osx/clisdk/Distribution-Template | 15 +++++++ 3 files changed, 63 insertions(+), 8 deletions(-) diff --git a/build/Microsoft.DotNet.Cli.Monikers.props b/build/Microsoft.DotNet.Cli.Monikers.props index 77e685831..f017176a0 100644 --- a/build/Microsoft.DotNet.Cli.Monikers.props +++ b/build/Microsoft.DotNet.Cli.Monikers.props @@ -1,10 +1,14 @@ - Microsoft .NET Core 1.0.1 - SDK Preview 5 - Microsoft .NET Core 1.0.1 - Runtime - Microsoft .NET Core 1.0.0 - Host - Microsoft .NET Core 1.0.0 - Host FX Resolver + Microsoft .NET Core 1.0.3 - SDK Preview 5 + Microsoft .NET Core 1.0.3 - Runtime + Microsoft .NET Core 1.0.1 - Host + Microsoft .NET Core 1.0.1 - Host FX Resolver + + Microsoft .NET Core 1.1.0 - Runtime + Microsoft .NET Core 1.1.0 - Host + Microsoft .NET Core 1.1.0 - Host FX Resolver Microsoft.NETCore.App diff --git a/build/package/Microsoft.DotNet.Cli.Installer.PKG.targets b/build/package/Microsoft.DotNet.Cli.Installer.PKG.targets index 8e4ffd67d..22416f080 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.PKG.targets +++ b/build/package/Microsoft.DotNet.Cli.Installer.PKG.targets @@ -9,12 +9,16 @@ $(InstallerOutputDirectory)/$(ArtifactNameWithVersionCombinedHostHostFxrFrameworkSdk)$(BundleExtension) - com.microsoft.dotnet.sharedhost.component.osx.x64 - com.microsoft.dotnet.hostfxr.component.osx.x64 + com.microsoft.dotnet.sharedhost.$(SharedHostVersion).component.osx.x64 + com.microsoft.dotnet.hostfxr.$(HostFxrVersion).component.osx.x64 com.microsoft.dotnet.sharedframework.$(SharedFrameworkNugetName).$(SharedFrameworkVersion).component.osx.x64 com.microsoft.dotnet.dev.$(SdkVersion).component.osx.x64 com.microsoft.dotnet.dev.$(SdkVersion).osx.x64 + com.microsoft.dotnet.sharedhost.$(AdditionalSharedHostVersion).component.osx.x64 + com.microsoft.dotnet.hostfxr.$(AdditionalHostFxrVersion).component.osx.x64 + com.microsoft.dotnet.sharedframework.$(SharedFrameworkNugetName).$(AdditionalSharedFrameworkVersion).component.osx.x64 + /usr/local/share/dotnet $(RepoRoot)/packaging/osx/clisdk @@ -28,6 +32,10 @@ $(PkgIntermediateDirectory)/$(SharedFrameworkComponentId).pkg $(PkgIntermediateDirectory)/$(SharedHostComponentId).pkg $(PkgIntermediateDirectory)/$(HostFxrComponentId).pkg + + $(PkgIntermediateDirectory)/$(AdditionalSharedFrameworkComponentId).pkg + $(PkgIntermediateDirectory)/$(AdditionalSharedHostComponentId).pkg + $(PkgIntermediateDirectory)/$(AdditionalHostFxrComponentId).pkg @@ -40,6 +48,15 @@ $(HostFxrComponentId) + + $(AdditionalSharedFrameworkComponentId) + + + $(AdditionalSharedHostComponentId) + + + $(AdditionalHostFxrComponentId) + $(SdkComponentId) @@ -58,6 +75,15 @@ $(HostFxrBrandName) + + $(AdditionalSharedFrameworkBrandName) + + + $(AdditionalSharedHostBrandName) + + + $(AdditionalHostFxrBrandName) + @@ -75,6 +101,10 @@ + + + + @@ -103,11 +133,17 @@ SourceFiles="$(SdkInstallerFile); $(DownloadedSharedFrameworkInstallerFile); $(DownloadedHostFxrInstallerFile); - $(DownloadedSharedHostInstallerFile);" + $(DownloadedSharedHostInstallerFile); + $(AdditionalDownloadedSharedFrameworkInstallerFile); + $(AdditionalDownloadedHostFxrInstallerFile); + $(AdditionalDownloadedSharedHostInstallerFile);" DestinationFiles="$(SdkPkgIntermediatePath); $(SharedFrameworkPkgIntermediatePath); $(HostFxrPkgIntermediatePath); - $(SharedHostPkgIntermediatePath);" /> + $(SharedHostPkgIntermediatePath); + $(AdditionalSharedFrameworkPkgIntermediatePath); + $(AdditionalHostFxrPkgIntermediatePath); + $(AdditionalSharedHostPkgIntermediatePath);" /> + + + @@ -28,11 +31,23 @@ + + + + + + + + + {SharedFxComponentId}.pkg {HostFxrComponentId}.pkg {SharedHostComponentId}.pkg + {AdditionalSharedFxComponentId}.pkg + {AdditionalHostFxrComponentId}.pkg + {AdditionalSharedHostComponentId}.pkg {CLISdkComponentId}.pkg From 48ec34e7b40587dffb1ab011bd4b1355440da21b Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 18:06:16 -0600 Subject: [PATCH 62/94] DEB support for installing shared fx 1.1. --- .../Microsoft.DotNet.Cli.Installer.DEB.proj | 10 ++++++++++ .../Microsoft.DotNet.Cli.Installer.DEB.targets | 17 +++++++++-------- packaging/deb/dotnet-debian_config.json | 3 ++- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj b/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj index 3a0054254..8495c10fb 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj +++ b/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj @@ -75,6 +75,9 @@ + + + + + + + @@ -101,6 +108,9 @@ + + + diff --git a/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets b/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets index ea518a6c3..67f78dd08 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets +++ b/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets @@ -42,6 +42,13 @@ dotnet-hostfxr-$(HostFxrDebianPackageVersion) $(HostFxrDebianPackageName.ToLower()) dotnet-host + + $(AdditionalSharedFrameworkVersion) + dotnet-sharedframework-$(SharedFrameworkName)-$(AdditionalSharedFxDebianPackageVersion) + $(AdditionalSharedFxDebianPackageName.ToLower()) + $(AdditionalHostFxrVersion) + dotnet-hostfxr-$(AdditionalHostFxrDebianPackageVersion) + $(AdditionalHostFxrDebianPackageName.ToLower()) @@ -86,14 +93,8 @@ $(SharedFxDebianPackageName) - - $(SharedFrameworkName) - - - $(SharedFrameworkVersion) - - - $(SharedFrameworkBrandName) + + $(AdditionalSharedFxDebianPackageName) $(SdkVersion) diff --git a/packaging/deb/dotnet-debian_config.json b/packaging/deb/dotnet-debian_config.json index 3a33544df..448b56769 100644 --- a/packaging/deb/dotnet-debian_config.json +++ b/packaging/deb/dotnet-debian_config.json @@ -29,6 +29,7 @@ }, "debian_dependencies":{ - "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%" : {} + "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%" : {}, + "%ADDITIONAL_SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%" : {} } } From 1a35ffdb1097293488caeb7e69206ef4003bd8b3 Mon Sep 17 00:00:00 2001 From: Zlatko Knezevic Date: Thu, 5 Jan 2017 16:44:33 -0800 Subject: [PATCH 63/94] Responding to PR feedback --- src/dotnet/CommonLocalizableStrings.cs | 5 +++++ src/dotnet/commands/dotnet-sln/LocalizableStrings.cs | 12 +++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/dotnet/CommonLocalizableStrings.cs b/src/dotnet/CommonLocalizableStrings.cs index 754df1cdc..3798a3936 100644 --- a/src/dotnet/CommonLocalizableStrings.cs +++ b/src/dotnet/CommonLocalizableStrings.cs @@ -155,6 +155,11 @@ namespace Microsoft.DotNet.Tools /// arguments public const string ArgumentsProjectOrSolutionDescription = "The project or solution to operation on. If a file is not specified, the current directory is searched."; + /// sln + public const string ArgumentsProjectDescription = "The project file to operate on. If a file is not specified, the command will search the current directory for one."; + public const string ArgumentsSolutionDescription = "Solution file to operate on. If not specified, the command will search the current directory for one."; + public const string CmdSlnFile = ""; + /// commands public const string CmdFramework = "FRAMEWORK"; diff --git a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs index e5ccd3cbe..5c86e5891 100644 --- a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs @@ -5,22 +5,24 @@ namespace Microsoft.DotNet.Tools.Sln { internal class LocalizableStrings { - public const string AppFullName = ".NET modify solution file(s) command"; + public const string AppFullName = ".NET modify solution file command"; - public const string AppDescription = "Command to add, remove and list projects from the solution (SLN) file."; + public const string AppDescription = "Command to add, remove, and list projects from the solution (SLN) file."; public const string AppHelpText = "Projects to add to the solution."; public const string CmdSlnFile = ""; - - public const string CmdSlnFileText = "Solution file to operate on. If not specified, the command will search the current directory for one."; - + + public const string AddAppFullName = ".NET Add project to a solution file Command"; public const string AddSubcommandHelpText = "Add a specified project to the solution."; + public const string RemoveAppFullName = ".NET Remove project from a solution file Command"; public const string RemoveSubcommandHelpText = "Remove the specified project from the solution. The project is not impacted."; + public const string ListAppFullName = ".NET List project(s) in a solution file Command"; public const string ListSubcommandHelpText = "List all projects in the solution."; + public const string CreateAppFullName = ".NET Create a solution file Command"; public const string CreateSubcommandHelpText = "Create a solution file."; public const string MultipleSlnFilesError = "The current directory contains more than one solution file. Please specify the solution file to use."; From abe7641f032812984f608a8bb5c93e0f161120ec Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 14:01:30 -0800 Subject: [PATCH 64/94] Migration will now pick win7-x86 as the RuntimeIdentifier to be used by Full Framework TFMs when no RIDs exist in the source PJ. This will allow build/publish etc to continue working in csproj without extra RIDs parameters in the command line. --- .../.noautobuild | 0 .../Program.cs | 17 ++++++ .../project.json | 34 +++++++++++ .../.noautobuild | 0 .../Program.cs | 17 ++++++ .../project.json | 29 ++++++++++ .../ProjectContextExtensions.cs | 25 ++++++++ .../Rules/MigrateTFMRule.cs | 58 ++++++++++--------- .../transforms/AddPropertyTransform.cs | 14 +++-- .../Rules/GivenThatIWantToMigrateTFMs.cs | 54 ++++++++++++++++- .../GivenThatIWantToMigrateTestApps.cs | 26 +++++++-- 11 files changed, 238 insertions(+), 36 deletions(-) create mode 100644 TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/.noautobuild create mode 100644 TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json create mode 100644 TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/.noautobuild create mode 100644 TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/Program.cs create mode 100644 TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/project.json diff --git a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/.noautobuild b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/.noautobuild new file mode 100644 index 000000000..e69de29bb diff --git a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/Program.cs b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/Program.cs new file mode 100644 index 000000000..bb536dcc4 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/Program.cs @@ -0,0 +1,17 @@ +using System; +using System.Xml; + +namespace ConsoleApplication +{ + public class Program + { + public static void Main() + { + Console.WriteLine("Hello World!"); +#if NET20 || NET35 || NET45 || NET461 + // Force XmlDocument to be used + var doc = new XmlDocument(); +#endif + } + } +} diff --git a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json new file mode 100644 index 000000000..f2f365fdc --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json @@ -0,0 +1,34 @@ +{ + "version": "1.0.0-*", + "buildOptions": { + "emitEntryPoint": true + }, + "dependencies": {}, + "frameworks": { + "net20": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "net35": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "net40": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "net461": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "netcoreapp1.0": { + "dependencies": { + "Microsoft.NetCore.App": "1.0.1" + } + } + } +} diff --git a/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/.noautobuild b/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/.noautobuild new file mode 100644 index 000000000..e69de29bb diff --git a/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/Program.cs b/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/Program.cs new file mode 100644 index 000000000..bb536dcc4 --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/Program.cs @@ -0,0 +1,17 @@ +using System; +using System.Xml; + +namespace ConsoleApplication +{ + public class Program + { + public static void Main() + { + Console.WriteLine("Hello World!"); +#if NET20 || NET35 || NET45 || NET461 + // Force XmlDocument to be used + var doc = new XmlDocument(); +#endif + } + } +} diff --git a/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/project.json b/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/project.json new file mode 100644 index 000000000..6324ec95a --- /dev/null +++ b/TestAssets/TestProjects/TestAppWithMultipleFullFrameworksOnly/project.json @@ -0,0 +1,29 @@ +{ + "version": "1.0.0-*", + "buildOptions": { + "emitEntryPoint": true + }, + "dependencies": {}, + "frameworks": { + "net20": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "net35": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "net40": { + "frameworkAssemblies": { + "System.Xml": {} + } + }, + "net461": { + "frameworkAssemblies": { + "System.Xml": {} + } + } + } +} diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/ProjectContextExtensions.cs b/src/Microsoft.DotNet.ProjectJsonMigration/ProjectContextExtensions.cs index c0bb37bd5..66a1d7664 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/ProjectContextExtensions.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/ProjectContextExtensions.cs @@ -17,5 +17,30 @@ namespace Microsoft.DotNet.ProjectJsonMigration // _ here is just an arbitrary configuration value so we can obtain the output name return Path.GetFileNameWithoutExtension(projectContext.GetOutputPaths("_").CompilationFiles.Assembly); } + + public static bool HasRuntimes(this IEnumerable projectContexts) + { + return projectContexts.Any(p => p.ProjectFile.Runtimes.Any()); + } + + public static bool HasBothCoreAndFullFrameworkTFMs(this IEnumerable projectContexts) + { + return projectContexts.HasCoreTFM() && projectContexts.HasFullFrameworkTFM(); + } + + public static bool HasCoreTFM(this IEnumerable projectContexts) + { + return projectContexts.Any(p => !p.IsFullFramework()); + } + + public static bool HasFullFrameworkTFM(this IEnumerable projectContexts) + { + return projectContexts.Any(p => p.IsFullFramework()); + } + + public static bool IsFullFramework(this ProjectContext projectContext) + { + return !projectContext.TargetFramework.IsPackageBased; + } } } diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs index 566d82cdd..c8d99e068 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs @@ -41,16 +41,6 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules migrationRuleInputs.ProjectContexts.Select(p => p.TargetFramework)), propertyGroup, mergeExisting: true); - - - var runtimes = string.Join(",", migrationRuleInputs.ProjectContexts.Select(p => p.RuntimeIdentifier)); - Console.WriteLine($"Runtimes = {runtimes}"); - - _transformApplicator.Execute( - FrameworksRuntimeIdentifiersTransform.Transform( - migrationRuleInputs.ProjectContexts), - propertyGroup, - mergeExisting: true); } else { @@ -59,12 +49,16 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules migrationRuleInputs.ProjectContexts.Single().TargetFramework), propertyGroup, mergeExisting: true); - _transformApplicator.Execute( - FrameworkRuntimeIdentifiersTransform.Transform( - migrationRuleInputs.ProjectContexts.Single()), + } + + _transformApplicator.Execute( + RuntimeIdentifiersTransform.Transform(migrationRuleInputs.ProjectContexts), + propertyGroup, + mergeExisting: true); + _transformApplicator.Execute( + RuntimeIdentifierTransform.Transform(migrationRuleInputs.ProjectContexts), propertyGroup, mergeExisting: true); - } } private void CleanExistingProperties(ProjectRootElement csproj) @@ -128,24 +122,36 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules frameworks => string.Join(";", frameworks.Select(f => f.GetShortFolderName())), frameworks => true); - private AddPropertyTransform> FrameworksRuntimeIdentifiersTransform => - new AddPropertyTransform>( - "RuntimeIdentifiers", - projectContexts => RuntimeIdentifiers, - projectContexts => projectContexts.All(p => !p.ProjectFile.Runtimes.Any()) && - projectContexts.Any(p => !p.TargetFramework.IsPackageBased)); - private AddPropertyTransform FrameworkTransform => new AddPropertyTransform( "TargetFramework", framework => framework.GetShortFolderName(), framework => true); - private AddPropertyTransform FrameworkRuntimeIdentifiersTransform => - new AddPropertyTransform( + private AddPropertyTransform> RuntimeIdentifiersTransform => + new AddPropertyTransform>( "RuntimeIdentifiers", - projectContext => RuntimeIdentifiers, - projectContext => !projectContext.ProjectFile.Runtimes.Any() && - !projectContext.TargetFramework.IsPackageBased); + projectContexts => RuntimeIdentifiers, + projectContexts => !projectContexts.HasRuntimes() && + projectContexts.HasBothCoreAndFullFrameworkTFMs()); + + private AddPropertyTransform> RuntimeIdentifierTransform => + new AddPropertyTransform>( + "RuntimeIdentifier", + projectContexts => "win7-x86", + projectContexts => !projectContexts.HasRuntimes() && projectContexts.HasFullFrameworkTFM()) + .WithMSBuildCondition(projectContexts => + { + string msBuildCondition = null; + if (projectContexts.HasBothCoreAndFullFrameworkTFMs()) + { + msBuildCondition = string.Join( + " OR ", + projectContexts.Where(p => p.IsFullFramework()).Select( + p => $"'$(TargetFramework)' == '{p.TargetFramework.GetShortFolderName()}'")); + } + + return $" {msBuildCondition} "; + }); } } diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/transforms/AddPropertyTransform.cs b/src/Microsoft.DotNet.ProjectJsonMigration/transforms/AddPropertyTransform.cs index 6b25fc290..ebeee7691 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/transforms/AddPropertyTransform.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/transforms/AddPropertyTransform.cs @@ -14,7 +14,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms private readonly string _propertyValue; private readonly Func _propertyValueFunc; - private string _msbuildCondition = null; + private Func _msbuildConditionFunc = null; public AddPropertyTransform(string propertyName, string propertyValue, Func condition) : base(condition) @@ -32,7 +32,13 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms public AddPropertyTransform WithMSBuildCondition(string condition) { - _msbuildCondition = condition; + _msbuildConditionFunc = source => condition; + return this; + } + + public AddPropertyTransform WithMSBuildCondition(Func conditionFunc) + { + _msbuildConditionFunc = conditionFunc; return this; } @@ -43,9 +49,9 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Transforms var property = _propertyObjectGenerator.CreatePropertyElement(PropertyName); property.Value = propertyValue; - if (!string.IsNullOrEmpty(_msbuildCondition)) + if (_msbuildConditionFunc != null) { - property.Condition = _msbuildCondition; + property.Condition = _msbuildConditionFunc(source); } return property; diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTFMs.cs b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTFMs.cs index ba6410771..f6658bbf0 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTFMs.cs +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Rules/GivenThatIWantToMigrateTFMs.cs @@ -69,7 +69,7 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests } [Fact] - public void MigratingDesktopTFMsAddsAllRuntimeIdentifiersIfTheProjectDoesNothaveAnyAlready() + public void MigratingCoreAndDesktopTFMsAddsAllRuntimeIdentifiersIfTheProjectDoesNothaveAnyAlready() { var testDirectory = Temp.CreateDirectory().Path; var testPJ = new ProjectJsonBuilder(TestAssetsManager) @@ -93,6 +93,32 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests .Value.Should().Be("win7-x64;win7-x86;osx.10.10-x64;osx.10.11-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;centos.7-x64;rhel.7.2-x64;debian.8-x64;fedora.23-x64;opensuse.13.2-x64"); } + [Fact] + public void MigratingCoreAndDesktopTFMsAddsRuntimeIdentifierWithWin7x86ConditionOnAllFullFrameworksWhenNoRuntimesExistAlready() + { + var testDirectory = Temp.CreateDirectory().Path; + var testPJ = new ProjectJsonBuilder(TestAssetsManager) + .FromTestAssetBase("TestLibraryWithMultipleFrameworks") + .SaveToDisk(testDirectory); + + var projectContexts = ProjectContext.CreateContextForEachFramework(testDirectory); + var mockProj = ProjectRootElement.Create(); + + var migrationSettings = MigrationSettings.CreateMigrationSettingsTestHook(testDirectory, testDirectory, mockProj); + var migrationInputs = new MigrationRuleInputs( + projectContexts, + mockProj, + mockProj.AddItemGroup(), + mockProj.AddPropertyGroup()); + + new MigrateTFMRule().Apply(migrationSettings, migrationInputs); + + mockProj.Properties.Count(p => p.Name == "RuntimeIdentifier").Should().Be(1); + var runtimeIdentifier = mockProj.Properties.First(p => p.Name == "RuntimeIdentifier"); + runtimeIdentifier.Value.Should().Be("win7-x86"); + runtimeIdentifier.Condition.Should().Be(" '$(TargetFramework)' == 'net20' OR '$(TargetFramework)' == 'net35' OR '$(TargetFramework)' == 'net40' OR '$(TargetFramework)' == 'net461' "); + } + [Fact] public void MigrateTFMRuleDoesNotAddRuntimesWhenMigratingDesktopTFMsWithRuntimesAlready() { @@ -117,6 +143,32 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Tests mockProj.Properties.Count(p => p.Name == "RuntimeIdentifiers").Should().Be(0); } + [Fact] + public void MigratingProjectWithFullFrameworkTFMsOnlyAddsARuntimeIdentifierWin7x86WhenNoRuntimesExistAlready() + { + var testDirectory = Temp.CreateDirectory().Path; + var testPJ = new ProjectJsonBuilder(TestAssetsManager) + .FromTestAssetBase("TestAppWithMultipleFullFrameworksOnly") + .SaveToDisk(testDirectory); + + var projectContexts = ProjectContext.CreateContextForEachFramework(testDirectory); + var mockProj = ProjectRootElement.Create(); + + var migrationSettings = + MigrationSettings.CreateMigrationSettingsTestHook(testDirectory, testDirectory, mockProj); + var migrationInputs = new MigrationRuleInputs( + projectContexts, + mockProj, + mockProj.AddItemGroup(), + mockProj.AddPropertyGroup()); + + new MigrateTFMRule().Apply(migrationSettings, migrationInputs); + + mockProj.Properties.Count(p => p.Name == "RuntimeIdentifiers").Should().Be(0); + mockProj.Properties.Where(p => p.Name == "RuntimeIdentifier").Should().HaveCount(1); + mockProj.Properties.Single(p => p.Name == "RuntimeIdentifier").Value.Should().Be("win7-x86"); + } + [Fact] public void MigratingSingleTFMProjectPopulatesTargetFramework() { diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs index d6ded40b4..a3e2b8b18 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs @@ -27,6 +27,26 @@ namespace Microsoft.DotNet.Migration.Tests [InlineData("AppWithAssemblyInfo")] [InlineData("TestAppWithEmbeddedResources")] public void ItMigratesApps(string projectName) + { + var projectDirectory = MigrateApps(projectName); + + VerifyAllMSBuildOutputsRunnable(projectDirectory); + + var outputCsProj = Path.Combine(projectDirectory, projectName + ".csproj"); + var csproj = File.ReadAllText(outputCsProj); + csproj.EndsWith("\n").Should().Be(true); + } + + [WindowsOnlyTheory] + [InlineData("TestAppWithMultipleFrameworksAndRuntimes")] + [InlineData("TestAppWithMultipleFrameworksAndNoRuntimes")] + [InlineData("TestAppWithMultipleFrameworksOnly")] + public void ItMigratesAppsWithFullFramework(string projectName) + { + MigrateApps(projectName); + } + + private string MigrateApps(string projectName) { var projectDirectory = TestAssetsManager.CreateTestInstance(projectName, identifier: projectName) .WithLockFiles() @@ -46,11 +66,7 @@ namespace Microsoft.DotNet.Migration.Tests outputsIdentical.Should().BeTrue(); - VerifyAllMSBuildOutputsRunnable(projectDirectory); - - var outputCsProj = Path.Combine(projectDirectory, projectName + ".csproj"); - var csproj = File.ReadAllText(outputCsProj); - csproj.EndsWith("\n").Should().Be(true); + return projectDirectory; } [Fact] From af56e969f9649a27cdcb2f60627012f950f8b747 Mon Sep 17 00:00:00 2001 From: Zlatko Knezevic Date: Thu, 5 Jan 2017 16:58:12 -0800 Subject: [PATCH 65/94] Responding to PR feedback --- src/dotnet/CommonLocalizableStrings.cs | 1 + src/dotnet/commands/dotnet-sln/LocalizableStrings.cs | 12 +++++------- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/dotnet/CommonLocalizableStrings.cs b/src/dotnet/CommonLocalizableStrings.cs index 3798a3936..98e2cfb29 100644 --- a/src/dotnet/CommonLocalizableStrings.cs +++ b/src/dotnet/CommonLocalizableStrings.cs @@ -159,6 +159,7 @@ namespace Microsoft.DotNet.Tools public const string ArgumentsProjectDescription = "The project file to operate on. If a file is not specified, the command will search the current directory for one."; public const string ArgumentsSolutionDescription = "Solution file to operate on. If not specified, the command will search the current directory for one."; public const string CmdSlnFile = ""; + public const string CmdProjectFile = "" /// commands public const string CmdFramework = "FRAMEWORK"; diff --git a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs index 5c86e5891..5be445925 100644 --- a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs @@ -9,15 +9,13 @@ namespace Microsoft.DotNet.Tools.Sln public const string AppDescription = "Command to add, remove, and list projects from the solution (SLN) file."; - public const string AppHelpText = "Projects to add to the solution."; + public const string AppHelpText = "Projects to add or to remove from the solution."; - public const string CmdSlnFile = ""; - - public const string AddAppFullName = ".NET Add project to a solution file Command"; - public const string AddSubcommandHelpText = "Add a specified project to the solution."; + public const string AddAppFullName = ".NET Add project(s) to a solution file Command"; + public const string AddSubcommandHelpText = "Add a specified project(s) to the solution."; - public const string RemoveAppFullName = ".NET Remove project from a solution file Command"; - public const string RemoveSubcommandHelpText = "Remove the specified project from the solution. The project is not impacted."; + public const string RemoveAppFullName = ".NET Remove project(s) from a solution file Command"; + public const string RemoveSubcommandHelpText = "Remove the specified project(s) from the solution. The project is not impacted."; public const string ListAppFullName = ".NET List project(s) in a solution file Command"; public const string ListSubcommandHelpText = "List all projects in the solution."; From ad3ee1dbb9545915b8ed6c69fa6b56081387ea82 Mon Sep 17 00:00:00 2001 From: Zlatko Knezevic Date: Thu, 5 Jan 2017 17:25:46 -0800 Subject: [PATCH 66/94] Fixing an errant semicolon --- src/dotnet/CommonLocalizableStrings.cs | 2 +- src/dotnet/commands/dotnet-sln/LocalizableStrings.cs | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/src/dotnet/CommonLocalizableStrings.cs b/src/dotnet/CommonLocalizableStrings.cs index 98e2cfb29..191509ab4 100644 --- a/src/dotnet/CommonLocalizableStrings.cs +++ b/src/dotnet/CommonLocalizableStrings.cs @@ -159,7 +159,7 @@ namespace Microsoft.DotNet.Tools public const string ArgumentsProjectDescription = "The project file to operate on. If a file is not specified, the command will search the current directory for one."; public const string ArgumentsSolutionDescription = "Solution file to operate on. If not specified, the command will search the current directory for one."; public const string CmdSlnFile = ""; - public const string CmdProjectFile = "" + public const string CmdProjectFile = ""; /// commands public const string CmdFramework = "FRAMEWORK"; diff --git a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs index 5be445925..29cdf7ec3 100644 --- a/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs +++ b/src/dotnet/commands/dotnet-sln/LocalizableStrings.cs @@ -23,12 +23,5 @@ namespace Microsoft.DotNet.Tools.Sln public const string CreateAppFullName = ".NET Create a solution file Command"; public const string CreateSubcommandHelpText = "Create a solution file."; - public const string MultipleSlnFilesError = "The current directory contains more than one solution file. Please specify the solution file to use."; - - public const string ProjectFileNotFoundError = "The specified project {0} was not found."; - - public const string SolutionFileNotFoundError = "The specified solution file {0} was not found."; - - public const string NoSolutionFileError = "The current directory does not contain a solution file. Please specify a solution file to use."; } } From 80919ddc12ff1ac36baa3c66ad98dea333fd062c Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 21:05:06 -0600 Subject: [PATCH 67/94] Work around MSBuild issue with using %AD at the beginning of an Include. --- build/package/Microsoft.DotNet.Cli.Installer.DEB.targets | 2 +- packaging/deb/dotnet-debian_config.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets b/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets index 67f78dd08..d3d11daf0 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets +++ b/build/package/Microsoft.DotNet.Cli.Installer.DEB.targets @@ -93,7 +93,7 @@ $(SharedFxDebianPackageName) - + $(AdditionalSharedFxDebianPackageName) diff --git a/packaging/deb/dotnet-debian_config.json b/packaging/deb/dotnet-debian_config.json index 448b56769..8aa795ffd 100644 --- a/packaging/deb/dotnet-debian_config.json +++ b/packaging/deb/dotnet-debian_config.json @@ -30,6 +30,6 @@ "debian_dependencies":{ "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%" : {}, - "%ADDITIONAL_SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME%" : {} + "%SHARED_FRAMEWORK_DEBIAN_PACKAGE_NAME_ADDITIONAL%" : {} } } From b41eb43883bb0eb8b63dec3ea6930147130764cc Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 19:44:52 -0800 Subject: [PATCH 68/94] Updating our projects and test assets to work with the latest SDK. --- .../PackageWithFakeNativeDep.csproj | 3 --- .../ToolWithOutputName.csproj | 13 +++---------- .../dotnet-dependency-context-test.csproj | 13 +++---------- .../dotnet-dependency-tool-invoker.csproj | 10 +++------- .../dotnet-desktop-and-portable.csproj | 17 +++-------------- .../dotnet-desktop-binding-redirects.csproj | 6 ------ .../v1/dotnet-hello/dotnet-hello.csproj | 6 ------ .../v2/dotnet-hello/dotnet-hello.csproj | 6 ------ .../dotnet-portable/dotnet-portable.csproj | 13 +++---------- .../dotnet-prefercliruntime.csproj | 12 ++++-------- .../TestAppWithSlnAndCsprojInSubDir/App.csproj | 6 +----- .../App.csproj | 5 +---- .../App.csproj | 6 ++---- .../Microsoft.DotNet.Cli.Build.Framework.csproj | 6 ------ .../dotnet-cli-build/dotnet-cli-build.csproj | 3 --- .../shared-build-targets-utils.csproj | 6 ------ .../update-dependencies.csproj | 6 ------ dir.props | 2 ++ run-build.ps1 | 4 ++-- run-build.sh | 4 ++-- .../Microsoft.DotNet.Archive.csproj | 3 --- .../Microsoft.DotNet.Cli.Sln.Internal.csproj | 4 ---- .../Microsoft.DotNet.Cli.Utils.csproj | 4 +--- .../Microsoft.DotNet.Configurer.csproj | 4 +--- ...Microsoft.DotNet.InternalAbstractions.csproj | 4 +--- ...Microsoft.DotNet.ProjectJsonMigration.csproj | 1 - .../Microsoft.DotNet.TestFramework.csproj | 4 +--- src/dotnet-archive/dotnet-archive.csproj | 1 - src/dotnet/dotnet.csproj | 3 +-- .../ArgumentForwardingTests.csproj | 6 ------ .../ArgumentsReflector.csproj | 3 --- test/EndToEnd/EndToEnd.csproj | 3 --- .../Microsoft.DotNet.Cli.Msi.Tests.csproj | 6 ------ test/Kestrel.Tests/Kestrel.Tests.csproj | 6 ------ ...crosoft.DotNet.Cli.Sln.Internal.Tests.csproj | 5 ----- .../Microsoft.DotNet.Cli.Utils.Tests.csproj | 3 --- ...Microsoft.DotNet.Configurer.UnitTests.csproj | 6 ------ ...oft.DotNet.ProjectJsonMigration.Tests.csproj | 3 --- ...icrosoft.DotNet.Tools.Tests.Utilities.csproj | 5 ----- .../Msbuild.Tests.Utilities.csproj | 5 ----- test/Performance/Performance.csproj | 6 ------ .../binding-redirects.Tests.csproj | 6 ------ test/crossgen.Tests/crossgen.Tests.csproj | 6 ------ .../dotnet-add-p2p.Tests.csproj | 6 +----- .../dotnet-add-proj.Tests.csproj | 3 --- .../dotnet-build.Tests.csproj | 6 ------ test/dotnet-help.Tests/dotnet-help.Tests.csproj | 4 ---- .../dotnet-list-p2ps.Tests.csproj | 6 +----- .../dotnet-list-proj.Tests.csproj | 4 ---- .../dotnet-migrate.Tests.csproj | 3 --- .../dotnet-msbuild.Tests.csproj | 6 ------ test/dotnet-new.Tests/dotnet-new.Tests.csproj | 6 ------ .../dotnet-nuget.UnitTests.csproj | 6 ------ test/dotnet-pack.Tests/dotnet-pack.Tests.csproj | 3 --- .../dotnet-publish.Tests.csproj | 3 --- .../dotnet-remove-p2p.Tests.csproj | 6 +----- .../dotnet-remove-proj.Tests.csproj | 4 ---- .../dotnet-restore.Tests.csproj | 6 ------ test/dotnet-run.Tests/dotnet-run.Tests.csproj | 6 ------ test/dotnet-test.Tests/dotnet-test.Tests.csproj | 6 ------ .../dotnet-vstest.Tests.csproj | 6 ------ test/dotnet.Tests/dotnet.Tests.csproj | 3 --- .../msbuild.IntegrationTests.csproj | 6 ------ 63 files changed, 37 insertions(+), 306 deletions(-) diff --git a/TestAssets/TestPackages/PackageWithFakeNativeDep/PackageWithFakeNativeDep.csproj b/TestAssets/TestPackages/PackageWithFakeNativeDep/PackageWithFakeNativeDep.csproj index 186732e54..6f9d59cfe 100644 --- a/TestAssets/TestPackages/PackageWithFakeNativeDep/PackageWithFakeNativeDep.csproj +++ b/TestAssets/TestPackages/PackageWithFakeNativeDep/PackageWithFakeNativeDep.csproj @@ -6,9 +6,6 @@ - - - runtimes/ true diff --git a/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj b/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj index 5d5b210a3..56cee9233 100644 --- a/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj +++ b/TestAssets/TestPackages/ToolWithOutputName/ToolWithOutputName.csproj @@ -7,16 +7,9 @@ - - - - - - - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + diff --git a/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj b/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj index 065e1246c..241f2d9ce 100644 --- a/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj +++ b/TestAssets/TestPackages/dotnet-dependency-context-test/dotnet-dependency-context-test.csproj @@ -8,16 +8,9 @@ - - - - - - - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + diff --git a/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj b/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj index 176cccc02..a4c7e260e 100644 --- a/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj +++ b/TestAssets/TestPackages/dotnet-dependency-tool-invoker/dotnet-dependency-tool-invoker.csproj @@ -12,16 +12,12 @@ - - - - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + diff --git a/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj b/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj index 181c9268c..d2e22acd7 100644 --- a/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj +++ b/TestAssets/TestPackages/dotnet-desktop-and-portable/dotnet-desktop-and-portable.csproj @@ -8,20 +8,9 @@ - - - - - - - - true - lib\netcoreapp1.0 - - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + diff --git a/TestAssets/TestPackages/dotnet-desktop-binding-redirects/dotnet-desktop-binding-redirects.csproj b/TestAssets/TestPackages/dotnet-desktop-binding-redirects/dotnet-desktop-binding-redirects.csproj index faac89bed..9830625a4 100644 --- a/TestAssets/TestPackages/dotnet-desktop-binding-redirects/dotnet-desktop-binding-redirects.csproj +++ b/TestAssets/TestPackages/dotnet-desktop-binding-redirects/dotnet-desktop-binding-redirects.csproj @@ -8,12 +8,6 @@ true - - - - - - 5.0.0 diff --git a/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj b/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj index ab11548e0..b6603c2d8 100644 --- a/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj +++ b/TestAssets/TestPackages/dotnet-hello/v1/dotnet-hello/dotnet-hello.csproj @@ -6,12 +6,6 @@ win7-x64;win7-x86;osx.10.10-x64;osx.10.11-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;centos.7-x64;rhel.7.2-x64;debian.8-x64;fedora.23-x64;opensuse.13.2-x64 - - - - - - 1.0.3 diff --git a/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj b/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj index bad9769b4..eaa06bf6e 100644 --- a/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj +++ b/TestAssets/TestPackages/dotnet-hello/v2/dotnet-hello/dotnet-hello.csproj @@ -7,12 +7,6 @@ win7-x64;win7-x86;osx.10.10-x64;osx.10.11-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;centos.7-x64;rhel.7.2-x64;debian.8-x64;fedora.23-x64;opensuse.13.2-x64 - - - - - - 1.0.3 diff --git a/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj b/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj index fcb31219a..b341aac64 100644 --- a/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj +++ b/TestAssets/TestPackages/dotnet-portable/dotnet-portable.csproj @@ -6,16 +6,9 @@ - - - - - - - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + diff --git a/TestAssets/TestPackages/dotnet-prefercliruntime/dotnet-prefercliruntime.csproj b/TestAssets/TestPackages/dotnet-prefercliruntime/dotnet-prefercliruntime.csproj index 009fee096..5c2bcc31d 100644 --- a/TestAssets/TestPackages/dotnet-prefercliruntime/dotnet-prefercliruntime.csproj +++ b/TestAssets/TestPackages/dotnet-prefercliruntime/dotnet-prefercliruntime.csproj @@ -5,14 +5,10 @@ - - - - - - true - lib\$(TargetFramework) - + + $(ProjectRuntimeConfigFilePath) + + true \prefercliruntime diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj index a957f128c..ee225988e 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDir/App.csproj @@ -4,16 +4,12 @@ netcoreapp1.0 - - - - - + diff --git a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj index c5617ba4b..7b66a1185 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndCsprojInSubDirToRemove/App.csproj @@ -4,9 +4,6 @@ netcoreapp1.0 - - - - + \ No newline at end of file diff --git a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj index c5617ba4b..ce2fa0a6b 100644 --- a/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj +++ b/TestAssets/TestProjects/TestAppWithSlnAndLastCsprojInSubDirToRemove/App.csproj @@ -3,10 +3,8 @@ Exe netcoreapp1.0 + - - - - + \ No newline at end of file diff --git a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.csproj b/build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.csproj index 393e9a839..23da68d2b 100644 --- a/build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.csproj +++ b/build_projects/Microsoft.DotNet.Cli.Build.Framework/Microsoft.DotNet.Cli.Build.Framework.csproj @@ -9,12 +9,6 @@ $(PackageTargetFallback);dnxcore50 - - - - - - 1.6.0 diff --git a/build_projects/dotnet-cli-build/dotnet-cli-build.csproj b/build_projects/dotnet-cli-build/dotnet-cli-build.csproj index 39f34265a..d2a5d8ec4 100644 --- a/build_projects/dotnet-cli-build/dotnet-cli-build.csproj +++ b/build_projects/dotnet-cli-build/dotnet-cli-build.csproj @@ -9,9 +9,6 @@ bin\$(Configuration) $(PackageTargetFallback);portable-net45+win8+wp8+wpa81 - - - diff --git a/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj b/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj index 407bffc0a..843cc3163 100644 --- a/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj +++ b/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dnxcore50;portable-net45+win8 - - - - - - diff --git a/build_projects/update-dependencies/update-dependencies.csproj b/build_projects/update-dependencies/update-dependencies.csproj index 982b5adb9..42c4d52f2 100644 --- a/build_projects/update-dependencies/update-dependencies.csproj +++ b/build_projects/update-dependencies/update-dependencies.csproj @@ -9,12 +9,6 @@ win7-x64;win7-x86;osx.10.10-x64;osx.10.11-x64;ubuntu.14.04-x64;ubuntu.16.04-x64;centos.7-x64;rhel.7.2-x64;debian.8-x64;fedora.23-x64;opensuse.13.2-x64 - - - - - - diff --git a/dir.props b/dir.props index 20897124d..d0c1fdfa8 100644 --- a/dir.props +++ b/dir.props @@ -10,5 +10,7 @@ $(RepoRoot)/build_projects/dotnet-cli-build/bin/dotnet-cli-build.dll + true + diff --git a/run-build.ps1 b/run-build.ps1 index 8b70746ed..3e16346ce 100644 --- a/run-build.ps1 +++ b/run-build.ps1 @@ -103,8 +103,8 @@ if ($LastExitCode -ne 0) # install the post-PJnistic stage0 $dotnetInstallPath = Join-Path $toolsLocalPath "dotnet-install.ps1" -Write-Host "$dotnetInstallPath -Version ""1.0.0-preview5-004392"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" -Invoke-Expression "$dotnetInstallPath -Version ""1.0.0-preview5-004392"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" +Write-Host "$dotnetInstallPath -Version ""1.0.0-preview5-004422"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" +Invoke-Expression "$dotnetInstallPath -Version ""1.0.0-preview5-004422"" -InstallDir $env:DOTNET_INSTALL_DIR -Architecture ""$Architecture""" if ($LastExitCode -ne 0) { Write-Output "The .NET CLI installation failed with exit code $LastExitCode" diff --git a/run-build.sh b/run-build.sh index 553393b83..399099364 100755 --- a/run-build.sh +++ b/run-build.sh @@ -163,8 +163,8 @@ if [ $? != 0 ]; then fi # now execute the script -echo "installing CLI: $dotnetInstallPath --version \"1.0.0-preview5-004392\" --install-dir $DOTNET_INSTALL_DIR --architecture \"$ARCHITECTURE\"" -$dotnetInstallPath --version "1.0.0-preview5-004392" --install-dir $DOTNET_INSTALL_DIR --architecture "$ARCHITECTURE" +echo "installing CLI: $dotnetInstallPath --version \"1.0.0-preview5-004422\" --install-dir $DOTNET_INSTALL_DIR --architecture \"$ARCHITECTURE\"" +$dotnetInstallPath --version "1.0.0-preview5-004422" --install-dir $DOTNET_INSTALL_DIR --architecture "$ARCHITECTURE" if [ $? != 0 ]; then echo "run-build: Error: Boot-strapping post-PJ stage0 with exit code $?." >&2 exit $? diff --git a/src/Microsoft.DotNet.Archive/Microsoft.DotNet.Archive.csproj b/src/Microsoft.DotNet.Archive/Microsoft.DotNet.Archive.csproj index 743950fc5..90c84d19a 100644 --- a/src/Microsoft.DotNet.Archive/Microsoft.DotNet.Archive.csproj +++ b/src/Microsoft.DotNet.Archive/Microsoft.DotNet.Archive.csproj @@ -9,9 +9,6 @@ true true - - - 1.6.0 diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/Microsoft.DotNet.Cli.Sln.Internal.csproj b/src/Microsoft.DotNet.Cli.Sln.Internal/Microsoft.DotNet.Cli.Sln.Internal.csproj index 056887e81..368c98b3a 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/Microsoft.DotNet.Cli.Sln.Internal.csproj +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/Microsoft.DotNet.Cli.Sln.Internal.csproj @@ -12,10 +12,6 @@ true - - - - diff --git a/src/Microsoft.DotNet.Cli.Utils/Microsoft.DotNet.Cli.Utils.csproj b/src/Microsoft.DotNet.Cli.Utils/Microsoft.DotNet.Cli.Utils.csproj index dea08feff..22324b215 100644 --- a/src/Microsoft.DotNet.Cli.Utils/Microsoft.DotNet.Cli.Utils.csproj +++ b/src/Microsoft.DotNet.Cli.Utils/Microsoft.DotNet.Cli.Utils.csproj @@ -9,9 +9,7 @@ true true - - - + 1.0.1-beta-000933 diff --git a/src/Microsoft.DotNet.Configurer/Microsoft.DotNet.Configurer.csproj b/src/Microsoft.DotNet.Configurer/Microsoft.DotNet.Configurer.csproj index 85421462f..27792ffdf 100644 --- a/src/Microsoft.DotNet.Configurer/Microsoft.DotNet.Configurer.csproj +++ b/src/Microsoft.DotNet.Configurer/Microsoft.DotNet.Configurer.csproj @@ -11,9 +11,7 @@ git git://github.com/dotnet/cli - - - + diff --git a/src/Microsoft.DotNet.InternalAbstractions/Microsoft.DotNet.InternalAbstractions.csproj b/src/Microsoft.DotNet.InternalAbstractions/Microsoft.DotNet.InternalAbstractions.csproj index 026d2758d..373a80b57 100644 --- a/src/Microsoft.DotNet.InternalAbstractions/Microsoft.DotNet.InternalAbstractions.csproj +++ b/src/Microsoft.DotNet.InternalAbstractions/Microsoft.DotNet.InternalAbstractions.csproj @@ -13,9 +13,7 @@ git git://github.com/dotnet/cli - - - + 1.6.0 diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj b/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj index 0d3948e27..99d86def9 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Microsoft.DotNet.ProjectJsonMigration.csproj @@ -10,7 +10,6 @@ true - diff --git a/src/Microsoft.DotNet.TestFramework/Microsoft.DotNet.TestFramework.csproj b/src/Microsoft.DotNet.TestFramework/Microsoft.DotNet.TestFramework.csproj index 3bcfeea29..90a401f2a 100644 --- a/src/Microsoft.DotNet.TestFramework/Microsoft.DotNet.TestFramework.csproj +++ b/src/Microsoft.DotNet.TestFramework/Microsoft.DotNet.TestFramework.csproj @@ -9,9 +9,7 @@ true true - - - + diff --git a/src/dotnet-archive/dotnet-archive.csproj b/src/dotnet-archive/dotnet-archive.csproj index e14f0a3fa..1b6c8e41c 100644 --- a/src/dotnet-archive/dotnet-archive.csproj +++ b/src/dotnet-archive/dotnet-archive.csproj @@ -6,7 +6,6 @@ Exe - diff --git a/src/dotnet/dotnet.csproj b/src/dotnet/dotnet.csproj index e20521b8a..6e3650ff9 100755 --- a/src/dotnet/dotnet.csproj +++ b/src/dotnet/dotnet.csproj @@ -13,8 +13,7 @@ - - + diff --git a/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj b/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj index d2471e407..75377303e 100644 --- a/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj +++ b/test/ArgumentForwardingTests/ArgumentForwardingTests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/ArgumentsReflector/ArgumentsReflector.csproj b/test/ArgumentsReflector/ArgumentsReflector.csproj index 7921cdee9..18b1c199a 100644 --- a/test/ArgumentsReflector/ArgumentsReflector.csproj +++ b/test/ArgumentsReflector/ArgumentsReflector.csproj @@ -8,9 +8,6 @@ - - - PreserveNewest PreserveNewest diff --git a/test/EndToEnd/EndToEnd.csproj b/test/EndToEnd/EndToEnd.csproj index 693653e42..5949bf3bc 100644 --- a/test/EndToEnd/EndToEnd.csproj +++ b/test/EndToEnd/EndToEnd.csproj @@ -9,9 +9,6 @@ - - - .version PreserveNewest diff --git a/test/Installer/Microsoft.DotNet.Cli.Msi.Tests/Microsoft.DotNet.Cli.Msi.Tests.csproj b/test/Installer/Microsoft.DotNet.Cli.Msi.Tests/Microsoft.DotNet.Cli.Msi.Tests.csproj index 3309ffe4d..e444481b1 100644 --- a/test/Installer/Microsoft.DotNet.Cli.Msi.Tests/Microsoft.DotNet.Cli.Msi.Tests.csproj +++ b/test/Installer/Microsoft.DotNet.Cli.Msi.Tests/Microsoft.DotNet.Cli.Msi.Tests.csproj @@ -15,12 +15,6 @@ false - - - - - - 1.6.0 diff --git a/test/Kestrel.Tests/Kestrel.Tests.csproj b/test/Kestrel.Tests/Kestrel.Tests.csproj index bade7e9cd..7542b751f 100644 --- a/test/Kestrel.Tests/Kestrel.Tests.csproj +++ b/test/Kestrel.Tests/Kestrel.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj index eeb446dee..6b5dc5ebd 100644 --- a/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Sln.Internal.Tests/Microsoft.DotNet.Cli.Sln.Internal.Tests.csproj @@ -11,11 +11,6 @@ $(PackageTargetFallback);netstandardapp1.5;dotnet5.4;portable-net451+win8 - - - - - diff --git a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj index 563751fb9..5c005311f 100644 --- a/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj +++ b/test/Microsoft.DotNet.Cli.Utils.Tests/Microsoft.DotNet.Cli.Utils.Tests.csproj @@ -12,9 +12,6 @@ - - - .version PreserveNewest diff --git a/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj b/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj index f88c05b31..f4d56da4e 100644 --- a/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj +++ b/test/Microsoft.DotNet.Configurer.UnitTests/Microsoft.DotNet.Configurer.UnitTests.csproj @@ -11,12 +11,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj index 9d4ebd0bc..9732db55b 100644 --- a/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj +++ b/test/Microsoft.DotNet.ProjectJsonMigration.Tests/Microsoft.DotNet.ProjectJsonMigration.Tests.csproj @@ -12,9 +12,6 @@ - - - PreserveNewest diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj b/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj index 88dd86b90..e353bcbfe 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Microsoft.DotNet.Tools.Tests.Utilities.csproj @@ -11,11 +11,6 @@ true $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - diff --git a/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj b/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj index 914e7441b..9982648ea 100644 --- a/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj +++ b/test/Msbuild.Tests.Utilities/Msbuild.Tests.Utilities.csproj @@ -7,11 +7,6 @@ Msbuild.Tests.Utilities $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - diff --git a/test/Performance/Performance.csproj b/test/Performance/Performance.csproj index 3c515acba..71c2123ca 100644 --- a/test/Performance/Performance.csproj +++ b/test/Performance/Performance.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/binding-redirects.Tests/binding-redirects.Tests.csproj b/test/binding-redirects.Tests/binding-redirects.Tests.csproj index cdf032e61..fd3d71cc1 100644 --- a/test/binding-redirects.Tests/binding-redirects.Tests.csproj +++ b/test/binding-redirects.Tests/binding-redirects.Tests.csproj @@ -8,12 +8,6 @@ win7-x64;win7-x86 - - - - - - diff --git a/test/crossgen.Tests/crossgen.Tests.csproj b/test/crossgen.Tests/crossgen.Tests.csproj index c04561820..657fc9dbc 100644 --- a/test/crossgen.Tests/crossgen.Tests.csproj +++ b/test/crossgen.Tests/crossgen.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj index 3e87ee398..b983bef79 100644 --- a/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj +++ b/test/dotnet-add-p2p.Tests/dotnet-add-p2p.Tests.csproj @@ -7,11 +7,7 @@ dotnet-add-p2p.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - + diff --git a/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj b/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj index 12e181939..2f176ac2e 100644 --- a/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj +++ b/test/dotnet-add-proj.Tests/dotnet-add-proj.Tests.csproj @@ -7,9 +7,6 @@ dotnet-add-proj.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - diff --git a/test/dotnet-build.Tests/dotnet-build.Tests.csproj b/test/dotnet-build.Tests/dotnet-build.Tests.csproj index 339bc0332..3efad2804 100644 --- a/test/dotnet-build.Tests/dotnet-build.Tests.csproj +++ b/test/dotnet-build.Tests/dotnet-build.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet-help.Tests/dotnet-help.Tests.csproj b/test/dotnet-help.Tests/dotnet-help.Tests.csproj index c66e28432..a9b94fe86 100644 --- a/test/dotnet-help.Tests/dotnet-help.Tests.csproj +++ b/test/dotnet-help.Tests/dotnet-help.Tests.csproj @@ -8,10 +8,6 @@ $(PackageTargetFallback);dnxcore50;portable-net45+win8 - - - - diff --git a/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj b/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj index 7f08643a8..11e1e7819 100644 --- a/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj +++ b/test/dotnet-list-p2ps.Tests/dotnet-list-p2ps.Tests.csproj @@ -7,11 +7,7 @@ dotnet-list-p2ps.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - + diff --git a/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj b/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj index 685f02273..6373c806a 100644 --- a/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj +++ b/test/dotnet-list-proj.Tests/dotnet-list-proj.Tests.csproj @@ -8,10 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - diff --git a/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj b/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj index b8c4b4ff5..3dc1cb000 100644 --- a/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj +++ b/test/dotnet-migrate.Tests/dotnet-migrate.Tests.csproj @@ -9,9 +9,6 @@ - - - PreserveNewest diff --git a/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj b/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj index d3165f9aa..7907fe5be 100644 --- a/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj +++ b/test/dotnet-msbuild.Tests/dotnet-msbuild.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet-new.Tests/dotnet-new.Tests.csproj b/test/dotnet-new.Tests/dotnet-new.Tests.csproj index 805d1fa89..62d5752d2 100644 --- a/test/dotnet-new.Tests/dotnet-new.Tests.csproj +++ b/test/dotnet-new.Tests/dotnet-new.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dnxcore50;portable-net45+win8 - - - - - - diff --git a/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj b/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj index ddc8257ac..70805d0f3 100644 --- a/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj +++ b/test/dotnet-nuget.UnitTests/dotnet-nuget.UnitTests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj b/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj index ed70f9f45..e0b97e719 100644 --- a/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj +++ b/test/dotnet-pack.Tests/dotnet-pack.Tests.csproj @@ -9,9 +9,6 @@ - - - PreserveNewest PreserveNewest diff --git a/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj b/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj index 0fdafc4a6..fc1d3fad8 100644 --- a/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj +++ b/test/dotnet-publish.Tests/dotnet-publish.Tests.csproj @@ -9,9 +9,6 @@ - - - .version PreserveNewest diff --git a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj index 9384eccbc..ec9a65e95 100644 --- a/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj +++ b/test/dotnet-remove-p2p.Tests/dotnet-remove-p2p.Tests.csproj @@ -7,11 +7,7 @@ dotnet-remove-p2p.Tests $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - + diff --git a/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj b/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj index 19b7209ec..dcdad415f 100644 --- a/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj +++ b/test/dotnet-remove-proj.Tests/dotnet-remove-proj.Tests.csproj @@ -8,10 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - diff --git a/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj b/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj index 24250de83..0adf2a9de 100644 --- a/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj +++ b/test/dotnet-restore.Tests/dotnet-restore.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dnxcore50;portable-net45+win8 - - - - - - diff --git a/test/dotnet-run.Tests/dotnet-run.Tests.csproj b/test/dotnet-run.Tests/dotnet-run.Tests.csproj index 1162f74c6..6fa3f48be 100644 --- a/test/dotnet-run.Tests/dotnet-run.Tests.csproj +++ b/test/dotnet-run.Tests/dotnet-run.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet-test.Tests/dotnet-test.Tests.csproj b/test/dotnet-test.Tests/dotnet-test.Tests.csproj index 55da07ef5..443a67a9d 100644 --- a/test/dotnet-test.Tests/dotnet-test.Tests.csproj +++ b/test/dotnet-test.Tests/dotnet-test.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet-vstest.Tests/dotnet-vstest.Tests.csproj b/test/dotnet-vstest.Tests/dotnet-vstest.Tests.csproj index dd339a2c5..c0ce2eef3 100644 --- a/test/dotnet-vstest.Tests/dotnet-vstest.Tests.csproj +++ b/test/dotnet-vstest.Tests/dotnet-vstest.Tests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - diff --git a/test/dotnet.Tests/dotnet.Tests.csproj b/test/dotnet.Tests/dotnet.Tests.csproj index 0ac5f2a59..c0861efb2 100644 --- a/test/dotnet.Tests/dotnet.Tests.csproj +++ b/test/dotnet.Tests/dotnet.Tests.csproj @@ -12,9 +12,6 @@ - - - TestAssets/TestProjects/AppWithToolDependency/%(RecursiveDir)%(Filename)%(Extension) PreserveNewest diff --git a/test/msbuild.IntegrationTests/msbuild.IntegrationTests.csproj b/test/msbuild.IntegrationTests/msbuild.IntegrationTests.csproj index 7a195c578..30faccc85 100644 --- a/test/msbuild.IntegrationTests/msbuild.IntegrationTests.csproj +++ b/test/msbuild.IntegrationTests/msbuild.IntegrationTests.csproj @@ -8,12 +8,6 @@ $(PackageTargetFallback);dotnet5.4;portable-net451+win8 - - - - - - From a211353e5295f2a541539615556cf34c68d35682 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 22:25:58 -0600 Subject: [PATCH 69/94] Fix TestSdkDeb by installing the AdditionalSharedHost installer. --- build/package/Microsoft.DotNet.Cli.Installer.DEB.proj | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj b/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj index 8495c10fb..c4cef9ce2 100644 --- a/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj +++ b/build/package/Microsoft.DotNet.Cli.Installer.DEB.proj @@ -74,10 +74,11 @@ - + + + @@ -107,10 +109,11 @@ - + + From 28ff7c51a1502c958715f4ce81921623f7b8ed98 Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Thu, 5 Jan 2017 23:15:14 -0600 Subject: [PATCH 70/94] Fix official build break by referencing WindowsAzure.Storage 7.2.1 in all build assemblies. --- .../shared-build-targets-utils/Publishing/AzurePublisher.cs | 2 +- .../shared-build-targets-utils.csproj | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs index b9e17e09a..ff102bf0d 100644 --- a/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs +++ b/build_projects/shared-build-targets-utils/Publishing/AzurePublisher.cs @@ -66,7 +66,7 @@ namespace Microsoft.DotNet.Cli.Build { string url = CalculateRelativePathForFile(file, product, version); CloudBlockBlob blob = _blobContainer.GetBlockBlobReference(url); - blob.UploadFromFileAsync(file, FileMode.Open).Wait(); + blob.UploadFromFileAsync(file).Wait(); SetBlobPropertiesBasedOnFileType(blob); return url; } diff --git a/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj b/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj index 407bffc0a..0951e1db9 100644 --- a/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj +++ b/build_projects/shared-build-targets-utils/shared-build-targets-utils.csproj @@ -34,11 +34,14 @@ 4.1.1 + + 4.0.0 + 4.0.11 - 6.2.2-preview + 7.2.1 1.0.1-beta-000933 From 7e5f18b584a515927a57292990d115f479fc12dd Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 22:55:43 -0800 Subject: [PATCH 71/94] Fixing full framework tests. --- .../project.json | 20 ++------ .../Rules/MigrateTFMRule.cs | 4 +- .../Commands/BuildCommand.cs | 11 ++++- .../GivenThatIWantToMigrateTestApps.cs | 48 ++++++++++--------- 4 files changed, 42 insertions(+), 41 deletions(-) diff --git a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json index f2f365fdc..d9a0a12b4 100644 --- a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json +++ b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json @@ -5,21 +5,6 @@ }, "dependencies": {}, "frameworks": { - "net20": { - "frameworkAssemblies": { - "System.Xml": {} - } - }, - "net35": { - "frameworkAssemblies": { - "System.Xml": {} - } - }, - "net40": { - "frameworkAssemblies": { - "System.Xml": {} - } - }, "net461": { "frameworkAssemblies": { "System.Xml": {} @@ -27,7 +12,10 @@ }, "netcoreapp1.0": { "dependencies": { - "Microsoft.NetCore.App": "1.0.1" + "Microsoft.NetCore.App": { + "version": "1.0.1", + "type": "platform" + } } } } diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs index c8d99e068..20e11005a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs +++ b/src/Microsoft.DotNet.ProjectJsonMigration/Rules/MigrateTFMRule.cs @@ -149,9 +149,11 @@ namespace Microsoft.DotNet.ProjectJsonMigration.Rules " OR ", projectContexts.Where(p => p.IsFullFramework()).Select( p => $"'$(TargetFramework)' == '{p.TargetFramework.GetShortFolderName()}'")); + + msBuildCondition = $" {msBuildCondition} "; } - return $" {msBuildCondition} "; + return msBuildCondition; }); } } diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Commands/BuildCommand.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/Commands/BuildCommand.cs index ece044d55..48b411471 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Commands/BuildCommand.cs +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Commands/BuildCommand.cs @@ -14,7 +14,7 @@ namespace Microsoft.DotNet.Tools.Test.Utilities private string _configuration; - private NuGetFramework _framework; + private string _framework; private string _runtime; @@ -72,6 +72,13 @@ namespace Microsoft.DotNet.Tools.Test.Utilities } public BuildCommand WithFramework(NuGetFramework framework) + { + _framework = framework.GetShortFolderName(); + + return this; + } + + public BuildCommand WithFramework(string framework) { _framework = framework; @@ -137,7 +144,7 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return null; } - return $"--framework {_framework.GetShortFolderName()}"; + return $"--framework {_framework}"; } private string GetRuntime() diff --git a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs index a3e2b8b18..87936e44c 100644 --- a/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs +++ b/test/dotnet-migrate.Tests/GivenThatIWantToMigrateTestApps.cs @@ -27,26 +27,6 @@ namespace Microsoft.DotNet.Migration.Tests [InlineData("AppWithAssemblyInfo")] [InlineData("TestAppWithEmbeddedResources")] public void ItMigratesApps(string projectName) - { - var projectDirectory = MigrateApps(projectName); - - VerifyAllMSBuildOutputsRunnable(projectDirectory); - - var outputCsProj = Path.Combine(projectDirectory, projectName + ".csproj"); - var csproj = File.ReadAllText(outputCsProj); - csproj.EndsWith("\n").Should().Be(true); - } - - [WindowsOnlyTheory] - [InlineData("TestAppWithMultipleFrameworksAndRuntimes")] - [InlineData("TestAppWithMultipleFrameworksAndNoRuntimes")] - [InlineData("TestAppWithMultipleFrameworksOnly")] - public void ItMigratesAppsWithFullFramework(string projectName) - { - MigrateApps(projectName); - } - - private string MigrateApps(string projectName) { var projectDirectory = TestAssetsManager.CreateTestInstance(projectName, identifier: projectName) .WithLockFiles() @@ -66,7 +46,29 @@ namespace Microsoft.DotNet.Migration.Tests outputsIdentical.Should().BeTrue(); - return projectDirectory; + VerifyAllMSBuildOutputsRunnable(projectDirectory); + + var outputCsProj = Path.Combine(projectDirectory, projectName + ".csproj"); + var csproj = File.ReadAllText(outputCsProj); + csproj.EndsWith("\n").Should().Be(true); + } + + [WindowsOnlyTheory] + [InlineData("TestAppWithMultipleFrameworksAndNoRuntimes", null)] + [InlineData("TestAppWithMultipleFullFrameworksOnly", "net461")] + public void ItMigratesAppsWithFullFramework(string projectName, string framework) + { + var projectDirectory = TestAssetsManager.CreateTestInstance( + projectName, + identifier: projectName).WithLockFiles().Path; + + CleanBinObj(projectDirectory); + + MigrateProject(new [] { projectDirectory }); + + Restore(projectDirectory); + + BuildMSBuild(projectDirectory, projectName, framework: framework); } [Fact] @@ -711,7 +713,8 @@ namespace Microsoft.DotNet.Migration.Tests string projectDirectory, string projectName, string configuration="Debug", - string runtime=null) + string runtime=null, + string framework=null) { if (projectName != null && !Path.HasExtension(projectName)) { @@ -723,6 +726,7 @@ namespace Microsoft.DotNet.Migration.Tests var result = new BuildCommand() .WithWorkingDirectory(projectDirectory) .WithRuntime(runtime) + .WithFramework(framework) .ExecuteWithCapturedOutput($"{projectName} /p:Configuration={configuration}"); result From b60b13467445db682fde335527090859494ab740 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 22:57:16 -0800 Subject: [PATCH 72/94] Updating the M.NC.App version to 1.0.3 on a couple of new test assets. --- .../TestAppWithMultipleFrameworksAndNoRuntimes/project.json | 2 +- .../TestAppWithMultipleFrameworksAndRuntimes/project.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json index d9a0a12b4..4779b862d 100644 --- a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json +++ b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndNoRuntimes/project.json @@ -13,7 +13,7 @@ "netcoreapp1.0": { "dependencies": { "Microsoft.NetCore.App": { - "version": "1.0.1", + "version": "1.0.3", "type": "platform" } } diff --git a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndRuntimes/project.json b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndRuntimes/project.json index 0fca6f2a3..352eedd80 100644 --- a/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndRuntimes/project.json +++ b/TestAssets/TestProjects/TestAppWithMultipleFrameworksAndRuntimes/project.json @@ -27,7 +27,7 @@ }, "netcoreapp1.0": { "dependencies": { - "Microsoft.NetCore.App": "1.0.1" + "Microsoft.NetCore.App": "1.0.3" } } }, From 4bf55e3c384559059e2aee960085cb4aaa707ed1 Mon Sep 17 00:00:00 2001 From: Livar Cunha Date: Thu, 5 Jan 2017 23:01:58 -0800 Subject: [PATCH 73/94] Another update to the xlf files. --- .../xlf/LocalizableStrings.cs.xlf | 15 +++ .../xlf/LocalizableStrings.de.xlf | 15 +++ .../xlf/LocalizableStrings.es.xlf | 15 +++ .../xlf/LocalizableStrings.fr.xlf | 15 +++ .../xlf/LocalizableStrings.it.xlf | 15 +++ .../xlf/LocalizableStrings.ja.xlf | 15 +++ .../xlf/LocalizableStrings.ko.xlf | 15 +++ .../xlf/LocalizableStrings.pl.xlf | 15 +++ .../xlf/LocalizableStrings.pt-BR.xlf | 15 +++ .../xlf/LocalizableStrings.ru.xlf | 15 +++ .../xlf/LocalizableStrings.tr.xlf | 15 +++ .../xlf/LocalizableStrings.xlf | 24 +++- .../xlf/LocalizableStrings.zh-Hans.xlf | 15 +++ .../xlf/LocalizableStrings.zh-Hant.xlf | 15 +++ .../xlf/LocalizableStrings.xlf | 84 ++++++------- .../xlf/LocalizableStrings.xlf | 4 +- .../xlf/LocalizableStrings.xlf | 118 +++++++++--------- .../CommandLine/xlf/LocalizableStrings.xlf | 56 ++++----- .../xlf/LocalizableStrings.xlf | 6 +- .../dotnet-build/xlf/LocalizableStrings.xlf | 10 +- .../dotnet-clean/xlf/LocalizableStrings.xlf | 6 +- .../dotnet-help/xlf/LocalizableStrings.cs.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.de.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.es.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.fr.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.it.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.ja.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.ko.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.pl.xlf | 5 + .../xlf/LocalizableStrings.pt-BR.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.ru.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.tr.xlf | 5 + .../dotnet-help/xlf/LocalizableStrings.xlf | 32 ++--- .../xlf/LocalizableStrings.zh-Hans.xlf | 5 + .../xlf/LocalizableStrings.zh-Hant.xlf | 5 + .../xlf/LocalizableStrings.xlf | 6 +- .../xlf/LocalizableStrings.xlf | 4 +- .../dotnet-list/xlf/LocalizableStrings.xlf | 2 +- .../dotnet-migrate/xlf/LocalizableStrings.xlf | 4 +- .../dotnet-msbuild/xlf/LocalizableStrings.xlf | 2 +- .../dotnet-pack/xlf/LocalizableStrings.xlf | 14 +-- .../dotnet-publish/xlf/LocalizableStrings.xlf | 10 +- .../xlf/LocalizableStrings.xlf | 2 +- .../xlf/LocalizableStrings.cs.xlf | 28 +++++ .../xlf/LocalizableStrings.de.xlf | 28 +++++ .../xlf/LocalizableStrings.es.xlf | 28 +++++ .../xlf/LocalizableStrings.fr.xlf | 28 +++++ .../xlf/LocalizableStrings.it.xlf | 28 +++++ .../xlf/LocalizableStrings.ja.xlf | 28 +++++ .../xlf/LocalizableStrings.ko.xlf | 28 +++++ .../xlf/LocalizableStrings.pl.xlf | 28 +++++ .../xlf/LocalizableStrings.pt-BR.xlf | 28 +++++ .../xlf/LocalizableStrings.ru.xlf | 28 +++++ .../xlf/LocalizableStrings.tr.xlf | 28 +++++ .../xlf/LocalizableStrings.xlf | 24 ++++ .../xlf/LocalizableStrings.zh-Hans.xlf | 28 +++++ .../xlf/LocalizableStrings.zh-Hant.xlf | 28 +++++ .../xlf/LocalizableStrings.xlf | 6 +- .../dotnet-run/xlf/LocalizableStrings.xlf | 6 +- .../dotnet-sln/xlf/LocalizableStrings.cs.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.de.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.es.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.fr.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.it.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.ja.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.ko.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.pl.xlf | 63 ++++++++++ .../xlf/LocalizableStrings.pt-BR.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.ru.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.tr.xlf | 63 ++++++++++ .../dotnet-sln/xlf/LocalizableStrings.xlf | 52 ++++++++ .../xlf/LocalizableStrings.zh-Hans.xlf | 63 ++++++++++ .../xlf/LocalizableStrings.zh-Hant.xlf | 63 ++++++++++ .../dotnet-test/xlf/LocalizableStrings.cs.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.de.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.es.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.fr.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.it.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.ja.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.ko.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.pl.xlf | 13 +- .../xlf/LocalizableStrings.pt-BR.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.ru.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.tr.xlf | 13 +- .../dotnet-test/xlf/LocalizableStrings.xlf | 27 ++-- .../xlf/LocalizableStrings.zh-Hans.xlf | 13 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 13 +- .../xlf/CommonLocalizableStrings.cs.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.de.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.es.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.fr.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.it.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.ja.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.ko.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.pl.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.pt-BR.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.ru.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.tr.xlf | 35 +++++- src/dotnet/xlf/CommonLocalizableStrings.xlf | 56 ++++++--- .../xlf/CommonLocalizableStrings.zh-Hans.xlf | 35 +++++- .../xlf/CommonLocalizableStrings.zh-Hant.xlf | 35 +++++- 101 files changed, 2299 insertions(+), 323 deletions(-) create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.cs.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.de.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.es.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.fr.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.it.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ja.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ko.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pl.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pt-BR.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ru.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.tr.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hans.xlf create mode 100644 src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hant.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf create mode 100644 src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf index 7f2fffc56..4824f0306 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.cs.xlf @@ -38,6 +38,21 @@ Nenalezena koncová značka oddílu + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf index 7712e951e..999ab4b95 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.de.xlf @@ -38,6 +38,21 @@ Schließendes Abschnittstag nicht gefunden + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf index e4709087c..ee1014b52 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.es.xlf @@ -38,6 +38,21 @@ No se encuentra la etiqueta de cierre de la sección + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf index 5be1cb145..9651894cf 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.fr.xlf @@ -38,6 +38,21 @@ Balise de fermeture de section introuvable + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf index 68092a9dc..5a7b73b51 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.it.xlf @@ -38,6 +38,21 @@ Il tag di chiusura sessione non è stato trovato + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf index 922340c6f..e5f2569f4 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ja.xlf @@ -38,6 +38,21 @@ 終了セクション タグが見つかりません + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf index e13abead4..c7dd2d4e0 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ko.xlf @@ -38,6 +38,21 @@ 닫기 섹션 태그를 찾을 수 없음 + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf index 8fb1024ee..0ce06879d 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pl.xlf @@ -38,6 +38,21 @@ Nie odnaleziono tagu zamykającego sekcję + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf index d9f58551d..a350ae828 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.pt-BR.xlf @@ -38,6 +38,21 @@ Marca de fechamento de seção não encontrada + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf index e1e1a44ec..29355c09e 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.ru.xlf @@ -38,6 +38,21 @@ Закрывающий тег раздела не найден. + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf index a65202f1d..15b9db0a4 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.tr.xlf @@ -38,6 +38,21 @@ Kapatma bölümü etiketi bulunamadı + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.xlf index 87580f00b..a4a292d41 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.xlf @@ -5,30 +5,42 @@ Global section specified more than once - + Global section not closed - + File header is missing - + Project section not closed - + Invalid section type: {0} - + Section id missing - + Closing section tag not found + + + + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf index 9b604d3af..b1d4fe08b 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hans.xlf @@ -38,6 +38,21 @@ 未找到结束节标记 + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf index 8809af601..fc67617e2 100644 --- a/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.Cli.Sln.Internal/xlf/LocalizableStrings.zh-Hant.xlf @@ -38,6 +38,21 @@ 找不到關閉區段標記 + + Invalid format in line {0}: {1} + Invalid format in line {0}: {1} + + + + Project section is missing '{0}' when parsing the line starting at position {1} + Project section is missing '{0}' when parsing the line starting at position {1} + + + + Property set is missing '{0}' + Property set is missing '{0}' + + \ No newline at end of file diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.xlf index cb0bf757c..be3a475e5 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.xlf @@ -5,172 +5,172 @@ Malformed command text '{0}' - + outputpathresolver: {0} does not exist - + {0}: attempting to find command {1} in {2} - + {0}: failed to find toolAssembly for {1} - + {0}: failed to find commandPath {1} - + Unable to locate dotnet multiplexer - + {0}: Looking for prefercliruntime file at `{1}` - + {0}: attempting to resolve {1} - + {0}: Did not find a matching project {1}. - + {0}: invalid commandResolverArguments - + {0}: {1} does not exist - + Ambiguous command name: {0} - + {0}: tool library found {1} - + {0}: MSBUILD_EXE_PATH = {1} - + {0}: MSBuild project path = {1} - + Specify which project file to use because this '{0}' contains more than one project file. - + {0}: ProjectFactory did not find Project. - + {0}: resolving commandspec from {1} Tool Libraries. - + {0}: failed to resolve commandspec from library. - + {0}: Attempting to resolve command spec from tool {1} - + {0}: nuget packages root: {1} - + {0}: found tool lockfile at : {1} - + {0}: library not found in lock file. - + {0}: attempting to create commandspec - + {0}: commandSpec is null. - + {0}: expect deps.json at: {1} - + Generating deps.json at: {0} - + unable to generate deps.json, it may have been already generated: {0} - + unable to delete temporary deps.json file: {0} - + Version for package `{0}` could not be resolved. - + File not found `{0}`. - + The project may not have been restored or restore failed - run `dotnet restore` - + No executable found matching command "{0}" - + Waiting for debugger to attach. Press ENTER to continue - + Process ID: {0} - + Could not access assets file. - + .NET Command Line Tools - + WriteLine forwarder set previously - + Already capturing stream! - + Running {0} {1} - + < {0} exited with {1} in {2} ms. - + Unable to invoke {0} after the command has been run - + diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.xlf index 9977f6d39..d80f08c8d 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.xlf @@ -17,11 +17,11 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - + Failed to create prime the NuGet cache. {0} failed with: {1} - + diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.xlf index 51465f8a4..fbd673e51 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.xlf @@ -5,239 +5,239 @@ Detected double project migration: {0} - + Cannot merge metadata with the same name and different values - + {0}: No xproj file given. - + Multiple xproj files found in {0}, please specify which to use - + Expected non-null MSBuildProjectTemplate in MigrationSettings - + Cannot migrate project {0} using compiler {1} - + Expected element to be of type {0}, but got {1} - + {0} already exists. Has migration already been run? - + expected destinationElement to not be null - + {0} (line: {1}, file: {2}) - + Cannot merge items of different types. - + Cannot merge items without a common include. - + Expected element to be of type {0}, but got {1} - + Unexpected type {0} - + Deprecated Project - + Project not Restored - + No Project - + The project.json specifies no target frameworks in {0} - + Unresolved Dependency - + Unresolved project dependency ({0}) - + File Overwrite - + Unsupported Script Variable - + {0} is currently an unsupported script variable for project migration - + Multiple Xproj Files - + Dependency Project not found - + Dependency project not found ({0}) - + Unsupported Script Event Hook - + {0} is an unsupported script event hook for project migration - + Multi-TFM - + Configuration Exclude - + Non-Csharp App - + Files specified under PackOptions - + {0}.{1} includes not equivalent. - + {0}.{1} excludes not equivalent. - + {0}.{1} removes not equivalent. - + {0}.{1} metadata doesn't exist {{ {2} {3} }} - + {0}.{1} metadata has another value {{ {2} {3} {4} }} - + {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - + {0}: Skip migrating {1}, it is already migrated. - + Executing rule: {0} - + {0}: No configuration or framework build options found in project - + Migrating {0} target frameworks - + Migrating framework {0} - + {0}: imports transform null for {1} - + {0}: Migrating {1} xproj to csproj references - + {0}: Executing migration rule {1} - + {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: ItemGroup {{ Condition: {1} }} - + {0}: Item completely merged - + {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - + {0}: Merging Item with {1} existing items with a different condition chain. - + {0}: encompassed includes {1} - + {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + {0}: Merging Item with {1} existing items with the same condition chain. - + {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - + Merging property, output merged property - + Ignoring fully merged property - + {0}: {1}, {{ Name={2}, Value={3} }} - + diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.xlf index 51a0aa48d..9cc7bb67f 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.xlf @@ -5,115 +5,115 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - + Unexpected value '{0}' for option '{1}' - + Unrecognized {0} '{1}' - + Response file '{0}' doesn't exist. - + Show help information - + Show version information - + Specify --{0} for a list of available options and commands. - + Usage: - + {0} - + {0} {1} - + [arguments] - + Arguments: - + {0}{1} - + [options] - + Options: - + {{0, -{0}}}{{1}} - + [command] - + Commands: - + {{0, -{0}}}{{1}} - + Use "{0} [command] --help" for more information about a command. - + [args] - + [[--] <additional arguments>...]] - + Additional Arguments: - + {0} - + {0} - + {0} {1} - + Invalid template pattern '{0}' - + Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.xlf index 081e991a9..34201b21a 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-proj/xlf/LocalizableStrings.xlf @@ -5,15 +5,15 @@ .NET Add Project to Solution Command - + Command to add project to solution - + Projects to add to solution - + diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.xlf index 833f6beaf..1b7967b8c 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.xlf @@ -13,7 +13,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - + CONFIGURATION @@ -21,7 +21,7 @@ Target framework to build for. The target framework has to be specified in the project file. - + FRAMEWORK @@ -29,15 +29,15 @@ Set this flag to ignore project-to-project references and only build the root project - + Disables incremental build. - + Output directory in which to place built artifacts. - + OUTPUT_DIR diff --git a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.xlf index d908f3758..8263ce26c 100644 --- a/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-clean/xlf/LocalizableStrings.xlf @@ -25,7 +25,7 @@ Directory in which the build outputs have been placed. - + FRAMEWORK @@ -33,7 +33,7 @@ Clean a specific framework. - + CONFIGURATION @@ -41,7 +41,7 @@ Clean a specific configuration. - + diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf index 29fff3a33..272b39b23 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.cs.xlf @@ -153,6 +153,11 @@ Smaže výstupy sestavení. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf index 65c70da9c..51ab3c4dc 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.de.xlf @@ -153,6 +153,11 @@ Buildausgabe(n) bereinigen. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf index 567712084..cc272d321 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.es.xlf @@ -153,6 +153,11 @@ Borre las salidas de compilación. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf index 202bb5f07..f03d730ba 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.fr.xlf @@ -153,6 +153,11 @@ Nettoyez les sorties de build. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf index 1275b9f63..7f9e7cc0f 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.it.xlf @@ -153,6 +153,11 @@ Pulisce gli output di compilazione. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf index 6c42afa33..2f8ae1d2e 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ja.xlf @@ -153,6 +153,11 @@ ビルド出力を消去します。 + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf index 8c6927d57..71f9b9c21 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ko.xlf @@ -153,6 +153,11 @@ 빌드 출력을 정리합니다. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf index 7a50ab23c..e59308550 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pl.xlf @@ -153,6 +153,11 @@ Wyczyść dane wyjściowe kompilacji. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf index 00711ab99..b06a03086 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.pt-BR.xlf @@ -153,6 +153,11 @@ Limpa as saídas do build. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf index 21df98535..77307cd61 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.ru.xlf @@ -153,6 +153,11 @@ Очистка выходных данных сборки. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf index d0ffb1574..ad86d31e8 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.tr.xlf @@ -153,6 +153,11 @@ Derleme çıkışlarını temizler. + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.xlf index 88aad32c0..5f86f65dc 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.xlf @@ -57,35 +57,35 @@ Initialize .NET projects. - + Restore dependencies specified in the .NET project. - + Builds a .NET project. - + Publishes a .NET project for deployment (including the runtime). - + Compiles and immediately executes a .NET project. - + Runs unit tests using the test runner specified in the project. - + Creates a NuGet package. - + Migrates a project.json based project to a msbuild based project. - + Project modification commands @@ -93,11 +93,11 @@ Add items to the project. - + Remove items from the project. - + Advanced Commands @@ -105,22 +105,26 @@ Provides additional NuGet commands. - + Runs Microsoft Build Engine (MSBuild). - + Runs Microsoft Test Execution Command Line Tool. - + Enable diagnostic output - + Clean build output(s). + + + + Modify solution (SLN) files. diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf index e30b26de2..958f62db5 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hans.xlf @@ -153,6 +153,11 @@ 清除生成输出。 + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf index 53b124ed2..4b70f247b 100644 --- a/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-help/xlf/LocalizableStrings.zh-Hant.xlf @@ -153,6 +153,11 @@ 清除建置輸出。 + + Modify solution (SLN) files. + Modify solution (SLN) files. + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.xlf index ac4a602ca..0f6cb3e05 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.xlf @@ -5,16 +5,16 @@ .NET Core Project-to-Project dependency viewer - + Command to list project to project (p2p) references - + There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - + diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.xlf index b117cae06..6856ef94e 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-proj/xlf/LocalizableStrings.xlf @@ -5,11 +5,11 @@ .NET Projects in Solution viewer - + Command to list projects in a solution - + diff --git a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.xlf index 7766ac01c..ebac5b83a 100644 --- a/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-list/xlf/LocalizableStrings.xlf @@ -5,7 +5,7 @@ .NET List Command - + diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.xlf index 1d0e49fbc..9cdf450c0 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.xlf @@ -13,7 +13,7 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - + The path to one of the following: @@ -22,7 +22,7 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - + Base MSBuild template to use for migrated app. The default is the project included in dotnet new. diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.xlf index 87b52b93c..1fc54de66 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - + diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.xlf index d4c3f4483..351965726 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.xlf @@ -5,7 +5,7 @@ .NET Core NuGet Package Packer - + pack for msbuild @@ -17,15 +17,15 @@ Directory in which to place built packages. - + Skip building the project prior to packing. By default, the project will be built. - + Include packages with symbols in addition to regular packages in output directory. - + Include PDBs and source files. Source files go into the src folder in the resulting nuget package @@ -37,7 +37,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - + VERSION_SUFFIX @@ -45,11 +45,11 @@ Defines the value for the $(VersionSuffix) property in the project. - + Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - + PROJECT diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.xlf index de77493e8..a84fa9582 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.xlf @@ -25,7 +25,7 @@ Target framework to publish for. The target framework has to be specified in the project file. - + RUNTIME_IDENTIFIER @@ -33,7 +33,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - + OUTPUT_DIR @@ -41,7 +41,7 @@ Output directory in which to place the published artifacts. - + CONFIGURATION @@ -49,7 +49,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - + VERSION_SUFFIX @@ -57,7 +57,7 @@ Defines the value for the $(VersionSuffix) property in the project. - + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.xlf index efc20ce13..4c9e1f29e 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-p2p/xlf/LocalizableStrings.xlf @@ -17,7 +17,7 @@ Project to project references to remove - + diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.cs.xlf new file mode 100644 index 000000000..a15fb207f --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.cs.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.de.xlf new file mode 100644 index 000000000..8286679d4 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.de.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.es.xlf new file mode 100644 index 000000000..0195f68e0 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.es.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.fr.xlf new file mode 100644 index 000000000..7b17b8ee4 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.fr.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.it.xlf new file mode 100644 index 000000000..8d88f84b4 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.it.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ja.xlf new file mode 100644 index 000000000..2e2f94179 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ja.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ko.xlf new file mode 100644 index 000000000..ef2c181c7 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ko.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pl.xlf new file mode 100644 index 000000000..0439eed1f --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pl.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pt-BR.xlf new file mode 100644 index 000000000..5ab6c9d67 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.pt-BR.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ru.xlf new file mode 100644 index 000000000..c7c05eb6b --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.ru.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.tr.xlf new file mode 100644 index 000000000..240ed5213 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.tr.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.xlf new file mode 100644 index 000000000..ea08560e6 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.xlf @@ -0,0 +1,24 @@ + + + + + + + .NET Remove Package reference Command. + + + + Command to remove package reference. + + + + Package reference to remove. + + + + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hans.xlf new file mode 100644 index 000000000..82a31a027 --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hans.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hant.xlf new file mode 100644 index 000000000..09473988d --- /dev/null +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-package/xlf/LocalizableStrings.zh-Hant.xlf @@ -0,0 +1,28 @@ + + + + + + + .NET Remove Package reference Command. + .NET Remove Package reference Command. + + + + Command to remove package reference. + Command to remove package reference. + + + + Package reference to remove. + Package reference to remove. + + + + Please specify only one package reference to remove. + Please specify only one package reference to remove. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.xlf index 8391ce877..1cc2436a4 100644 --- a/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-remove/dotnet-remove-proj/xlf/LocalizableStrings.xlf @@ -5,15 +5,15 @@ .NET Remove Project from Solution Command - + Command to remove projects from a solution - + Projects to remove from a solution - + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.xlf index ff1292a8d..fc70017db 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.xlf @@ -13,7 +13,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - + FRAMEWORK @@ -21,7 +21,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - + The path to the project file to run (defaults to the current directory if there is only one project). @@ -89,7 +89,7 @@ Arguments passed to the application that is being run. - + diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf new file mode 100644 index 000000000..5f4b006ca --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.cs.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf new file mode 100644 index 000000000..2c0661cc1 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.de.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf new file mode 100644 index 000000000..ddfa365b6 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.es.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf new file mode 100644 index 000000000..4b606d4b4 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.fr.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf new file mode 100644 index 000000000..26898249d --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.it.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf new file mode 100644 index 000000000..596e376c2 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ja.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf new file mode 100644 index 000000000..6036cabba --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ko.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf new file mode 100644 index 000000000..9996307f2 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pl.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf new file mode 100644 index 000000000..e3ccbba1f --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.pt-BR.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf new file mode 100644 index 000000000..16796c331 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.ru.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf new file mode 100644 index 000000000..5726469e0 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.tr.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.xlf new file mode 100644 index 000000000..f010d7575 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.xlf @@ -0,0 +1,52 @@ + + + + + + + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + + + + .NET Create a solution file Command + + + + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf new file mode 100644 index 000000000..a45268ec1 --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hans.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf new file mode 100644 index 000000000..3f642904c --- /dev/null +++ b/src/dotnet/commands/dotnet-sln/xlf/LocalizableStrings.zh-Hant.xlf @@ -0,0 +1,63 @@ + + + + + + + .NET modify solution file command + .NET modify solution file command + + + + Command to add, remove, and list projects from the solution (SLN) file. + Command to add, remove, and list projects from the solution (SLN) file. + + + + Projects to add or to remove from the solution. + Projects to add or to remove from the solution. + + + + .NET Add project(s) to a solution file Command + .NET Add project(s) to a solution file Command + + + + Add a specified project(s) to the solution. + Add a specified project(s) to the solution. + + + + .NET Remove project(s) from a solution file Command + .NET Remove project(s) from a solution file Command + + + + Remove the specified project(s) from the solution. The project is not impacted. + Remove the specified project(s) from the solution. The project is not impacted. + + + + .NET List project(s) in a solution file Command + .NET List project(s) in a solution file Command + + + + List all projects in the solution. + List all projects in the solution. + + + + .NET Create a solution file Command + .NET Create a solution file Command + + + + Create a solution file. + Create a solution file. + + + + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf index 9a9cf5b5a..32917869e 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Zadejte protokolovací nástroj pro výsledky testů. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Zadejte protokolovací nástroj pro výsledky testů. Příklad: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Nesestavujte projekt dříve, než ho otestujete. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf index 746d41d4c..0177361d9 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Geben Sie einen Protokollierer für Testergebnisse an. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Geben Sie einen Protokollierer für Testergebnisse an. Beispiel: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Erstellen Sie das Projekt nicht vor dem Testen. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf index 54f93a692..70a6ed844 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Especifica un registrador para los resultados de pruebas. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Especifica un registrador para los resultados de pruebas. Ejemplo: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ El proyecto no se compila antes de probarlo. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf index 03405cce6..2574ff9be 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Spécifiez un enregistreur pour les résultats des tests. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Spécifiez un enregistreur pour les résultats des tests. Exemple : --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Ne générez pas le projet avant les tests. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf index 6754ebb6e..322b7902b 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Consente di specificare un logger per i risultati dei test. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Consente di specificare un logger per i risultati dei test. Esempio: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Il progetto non viene compilato prima del test. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf index 7fb2918d0..4526d22ea 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - テスト結果のロガーを指定します。 + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + テスト結果のロガーを指定します。 例: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ テストする前にプロジェクトを構築しないでください。 + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf index ab95979e0..f10806735 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - 테스트 결과에 대해 로거를 지정합니다. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + 테스트 결과에 대해 로거를 지정합니다. 예: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ 테스트하기 전에 프로젝트를 빌드하지 않습니다. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf index d22db9f08..3b07abaff 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Określ rejestratora wyników testów. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Określ rejestratora wyników testów. Przykład: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Nie kompiluj projektu przed przeprowadzeniem testów. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf index 12650b1d0..7d17c856e 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Especifique um agente para os resultados de teste. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Especifique um agente para os resultados de teste. Exemplo: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Não compile o projeto antes de testar. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf index e2af7b103..f0bb0d3d4 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Укажите средство ведения журнала для результатов теста. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Укажите средство ведения журнала для результатов теста. Пример: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Не выполнять сборку проектов перед тестированием. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf index 6588883b1..b3269959a 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - Test sonuçları için bir günlükçü belirtin. + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + Test sonuçları için bir günlükçü belirtin. Örnek: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ Projeyi derlemeden önce test edin. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.xlf index a59c6d5d8..f2fc04dbc 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.xlf @@ -21,7 +21,7 @@ SETTINGS_FILE - + Settings to use when running tests. @@ -33,7 +33,7 @@ EXPRESSION - + Run tests that match the given expression. @@ -43,12 +43,12 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - + Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - + LoggerUri/FriendlyName @@ -56,20 +56,20 @@ Specify a logger for test results. - Example: --logger:trx - + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + CONFIGURATION - + Configuration to use for building the project. Default for most projects is "Debug". - + FRAMEWORK - + Looks for test binaries for a specific framework @@ -77,7 +77,7 @@ OUTPUT_DIR - + Directory in which to find the binaries to be run @@ -85,7 +85,7 @@ PATH_TO_FILE - + Enable verbose logs for test platform. @@ -96,6 +96,11 @@ Do not build project before testing. + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf index 76020ebf1..699ffd856 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - 指定测试结果的记录器。 + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + 指定测试结果的记录器。 示例: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ 测试之前不要生成项目。 + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf index 007bc539b..ac11f5b38 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf @@ -74,10 +74,10 @@ Specify a logger for test results. - Example: --logger:trx - 指定測試結果的記錄器。 + Example: --logger "trx[;LogFileName=<Defaults to unique file name>]" + 指定測試結果的記錄器。 範例: --logger:trx - + CONFIGURATION @@ -126,6 +126,13 @@ 請勿在測試前建置專案。 + + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + Any extra commandline runsettings arguments that should be passed to vstest. See 'dotnet vstest --help' for available options. + Example: -- RunConfiguration.ResultsDirectory="C:\users\user\desktop\Results Directory" MSTest.DeploymentEnabled=false + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf b/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf index 55d958d6a..d47d76f36 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf @@ -353,11 +353,6 @@ Nenašlo se řešení ani adresář {0}. - - Invalid solution `{0}`. - Řešení {0} není platné. - - Specified solution file {0} does not exist, or there is no solution file in the directory. Zadaný soubor řešení {0} neexistuje nebo v adresáři není soubor řešení. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.de.xlf b/src/dotnet/xlf/CommonLocalizableStrings.de.xlf index 4e9c50249..3c89c0cc4 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.de.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.de.xlf @@ -353,11 +353,6 @@ Die Projektmappe oder das Verzeichnis "{0}" wurde nicht gefunden. - - Invalid solution `{0}`. - Ungültige Projektmappe "{0}". - - Specified solution file {0} does not exist, or there is no solution file in the directory. Die angegebene Projektmappendatei "{0}" ist nicht vorhanden, oder das Verzeichnis enthält keine Projektmappendatei. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.es.xlf b/src/dotnet/xlf/CommonLocalizableStrings.es.xlf index 62934d865..11b3e9f47 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.es.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.es.xlf @@ -353,11 +353,6 @@ No se encuentra la solución o el directorio `{0}`. - - Invalid solution `{0}`. - La solución `{0}` no es válida. - - Specified solution file {0} does not exist, or there is no solution file in the directory. El archivo de solución {0} especificado no existe, o bien no hay ningún archivo de solución en el directorio. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf b/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf index 340a03cd2..ce20bb19d 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf @@ -353,11 +353,6 @@ La solution ou le répertoire '{0}' est introuvable. - - Invalid solution `{0}`. - Solution non valide '{0}'. - - Specified solution file {0} does not exist, or there is no solution file in the directory. Le fichier solution spécifié {0} n'existe pas ou il n'y a pas de fichier solution dans le répertoire. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.it.xlf b/src/dotnet/xlf/CommonLocalizableStrings.it.xlf index ab317e117..f56317210 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.it.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.it.xlf @@ -353,11 +353,6 @@ Non sono state trovate soluzioni o directory `{0}`. - - Invalid solution `{0}`. - La soluzione `{0}` non è valida. - - Specified solution file {0} does not exist, or there is no solution file in the directory. Il file di soluzione specificato {0} non esiste oppure nella directory non è presente alcun file di soluzione. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf index b81ed92bb..90072087d 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf @@ -353,11 +353,6 @@ ソリューションまたはディレクトリ `{0}` が見つかりませんでした。 - - Invalid solution `{0}`. - 無効なソリューション `{0}`。 - - Specified solution file {0} does not exist, or there is no solution file in the directory. 指定したソリューション ファイル {0} が存在しないか、ディレクトリにソリューション ファイルがありません。 @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf index 0265c20f3..28b18e42c 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf @@ -353,11 +353,6 @@ 솔루션 또는 디렉터리 `{0}`을(를) 찾을 수 없습니다. - - Invalid solution `{0}`. - `{0}` 솔루션이 잘못되었습니다. - - Specified solution file {0} does not exist, or there is no solution file in the directory. 지정한 솔루션 파일 {0}이(가) 없거나 디렉터리에 솔루션 파일이 없습니다. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf b/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf index a6f701d9f..0d0024137 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.pl.xlf @@ -353,11 +353,6 @@ Nie można odnaleźć rozwiązania ani katalogu „{0}”. - - Invalid solution `{0}`. - Nieprawidłowe rozwiązanie „{0}”. - - Specified solution file {0} does not exist, or there is no solution file in the directory. Określony plik rozwiązania {0} nie istnieje bądź w katalogu nie ma żadnego pliku rozwiązania. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf b/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf index 184916d09..f062ad857 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf @@ -353,11 +353,6 @@ Não foi possível encontrar a solução ou diretório ‘{0}’. - - Invalid solution `{0}`. - Solução inválida ‘{0}’. - - Specified solution file {0} does not exist, or there is no solution file in the directory. O arquivo de solução {0} especificado não existe ou não há um arquivo de solução no diretório. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf index 4ab9871e1..307831bd3 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf @@ -353,11 +353,6 @@ Не удалось найти решение или каталог "{0}". - - Invalid solution `{0}`. - Недопустимое решение "{0}". - - Specified solution file {0} does not exist, or there is no solution file in the directory. Указанный файл решения "{0}" не существует, или в каталоге нет файла решения. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf b/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf index 68c4dc0fa..d62d277b7 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf @@ -353,11 +353,6 @@ `{0}` çözümü veya dizini bulunamadı. - - Invalid solution `{0}`. - `{0}` çözümü geçersiz. - - Specified solution file {0} does not exist, or there is no solution file in the directory. Belirtilen {0} çözüm dosyası yok veya dizinde bir çözüm dosyası yok. @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.xlf b/src/dotnet/xlf/CommonLocalizableStrings.xlf index dd8ae8ddb..2bb5faaa0 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.xlf @@ -81,7 +81,7 @@ Reference {0} does not exist. - + Reference `{0}` added to the project. @@ -283,10 +283,6 @@ Could not find solution or directory `{0}`. - - Invalid solution `{0}`. - - Specified solution file {0} does not exist, or there is no solution file in the directory. @@ -297,7 +293,7 @@ You must specify at least one reference to add. - + Project {0} already has a reference `{1}`. @@ -313,7 +309,7 @@ You must specify at least one package to add. - + Package reference `{0}` added to the project. @@ -337,7 +333,7 @@ You must specify at least one project to add. - + Project `{0}` added to the solution. @@ -353,7 +349,7 @@ You must specify at least one reference to remove. - + Reference `{0}` deleted. @@ -369,7 +365,7 @@ You must specify at least one package reference to remove. - + Package reference `{0}` deleted. @@ -457,39 +453,63 @@ Project reference(s) - + Required command was not provided. - + Found more than one solution file in {0}. Please specify which one to use. - + Solution {0} already contains project {1}. - + The project or solution to operation on. If a file is not specified, the current directory is searched. - + FRAMEWORK - + Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - + Project `{0}` does not target framework `{1}`. - + Project `{0}` could not be evaluated. Evaluation failed with following error: {1} + + + + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + + + + <PROJECT> diff --git a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf index e4b91db1e..3f5bea099 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf @@ -353,11 +353,6 @@ 找不到解决方案或目录“{0}”。 - - Invalid solution `{0}`. - 解决方案“{0}”无效。 - - Specified solution file {0} does not exist, or there is no solution file in the directory. 指定的解决方案文件 {0} 不存在,或目录中没有解决方案文件。 @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file diff --git a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf index 81e977f62..95309e5a1 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf @@ -353,11 +353,6 @@ 找不到解決方案或目錄 `{0}`。 - - Invalid solution `{0}`. - 解決方案 `{0}` 無效。 - - Specified solution file {0} does not exist, or there is no solution file in the directory. 指定的方案檔 {0} 不存在,或目錄中沒有方案檔。 @@ -615,6 +610,36 @@ {1} + + Unsupported project type. Please check with your sdk provider. + Unsupported project type. Please check with your sdk provider. + + + + Invalid solution `{0}`. {1} + Invalid solution `{0}`. {1} + + + + The project file to operate on. If a file is not specified, the command will search the current directory for one. + The project file to operate on. If a file is not specified, the command will search the current directory for one. + + + + Solution file to operate on. If not specified, the command will search the current directory for one. + Solution file to operate on. If not specified, the command will search the current directory for one. + + + + <SLN_FILE> + <SLN_FILE> + + + + <PROJECT> + <PROJECT> + + \ No newline at end of file From bf4588b6fcf238f0c7c44e4edce8460030c8eb12 Mon Sep 17 00:00:00 2001 From: Piotr Puszkiewicz Date: Fri, 6 Jan 2017 01:40:26 -0800 Subject: [PATCH 74/94] Add PJ support to TestAssets (#5109) * Add PJ support to TestAssets * Cleaning the test assets is hard, so throwing instead * better assets filter * PR feedback * PR Feedback * Fix NullRef * Move lock to surround action + file read/write --- src/Microsoft.DotNet.Cli.Utils/PathUtility.cs | 12 + .../Extensions/DirectoryInfoExtensions.cs | 10 + .../TestAssetInfo.cs | 228 ++++++++++++++---- .../TestAssetInventoryFiles.cs | 13 + .../TestAssetKinds.cs | 2 + .../TestAssets.cs | 82 ++++++- .../Assertions/DirectoryInfoAssertions.cs | 33 ++- .../Assertions/FileInfoExtensions.cs | 5 + .../TestBase.cs | 5 +- 9 files changed, 327 insertions(+), 63 deletions(-) diff --git a/src/Microsoft.DotNet.Cli.Utils/PathUtility.cs b/src/Microsoft.DotNet.Cli.Utils/PathUtility.cs index 8dcdb2f82..f64042329 100644 --- a/src/Microsoft.DotNet.Cli.Utils/PathUtility.cs +++ b/src/Microsoft.DotNet.Cli.Utils/PathUtility.cs @@ -88,6 +88,18 @@ namespace Microsoft.DotNet.Tools.Common } } + /// + /// Returns childItem relative to directory, with Path.DirectorySeparatorChar as separator + /// + public static string GetRelativePath(DirectoryInfo directory, FileSystemInfo childItem) + { + var path1 = EnsureTrailingSlash(directory.FullName); + + var path2 = childItem.FullName; + + return GetRelativePath(path1, path2, Path.DirectorySeparatorChar, true); + } + /// /// Returns path2 relative to path1, with Path.DirectorySeparatorChar as separator /// diff --git a/src/Microsoft.DotNet.TestFramework/Extensions/DirectoryInfoExtensions.cs b/src/Microsoft.DotNet.TestFramework/Extensions/DirectoryInfoExtensions.cs index 981fc8eee..edcb9071f 100644 --- a/src/Microsoft.DotNet.TestFramework/Extensions/DirectoryInfoExtensions.cs +++ b/src/Microsoft.DotNet.TestFramework/Extensions/DirectoryInfoExtensions.cs @@ -21,5 +21,15 @@ namespace Microsoft.DotNet.TestFramework { return new FileInfo(Path.Combine(subject.FullName, fileName)); } + + public static void EnsureExistsAndEmpty(this DirectoryInfo subject) + { + if (subject.Exists) + { + subject.Delete(true); + } + + subject.Create(); + } } } diff --git a/src/Microsoft.DotNet.TestFramework/TestAssetInfo.cs b/src/Microsoft.DotNet.TestFramework/TestAssetInfo.cs index 4fbd935ca..a11e149cb 100644 --- a/src/Microsoft.DotNet.TestFramework/TestAssetInfo.cs +++ b/src/Microsoft.DotNet.TestFramework/TestAssetInfo.cs @@ -6,6 +6,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Runtime.CompilerServices; +using System.Threading; using System.Threading.Tasks; using Microsoft.DotNet.Cli.Utils; using Microsoft.DotNet.PlatformAbstractions; @@ -29,6 +30,10 @@ namespace Microsoft.DotNet.TestFramework private readonly TestAssetInventoryFiles _inventoryFiles; + private readonly FileInfo _dotnetExeFile; + + private readonly string _projectFilePattern; + internal DirectoryInfo Root { get @@ -37,18 +42,37 @@ namespace Microsoft.DotNet.TestFramework } } - internal TestAssetInfo(DirectoryInfo root, string assetName) + internal TestAssetInfo(DirectoryInfo root, string assetName, FileInfo dotnetExeFile, string projectFilePattern) { - if (!root.Exists) + if (root == null) { - throw new DirectoryNotFoundException($"Directory not found at '{root}'"); + throw new ArgumentNullException(nameof(root)); } - _assetName = assetName; + if (string.IsNullOrWhiteSpace(assetName)) + { + throw new ArgumentException("Argument cannot be null or whitespace", nameof(assetName)); + } + + if (dotnetExeFile == null) + { + throw new ArgumentNullException(nameof(dotnetExeFile)); + } + + if (string.IsNullOrWhiteSpace(projectFilePattern)) + { + throw new ArgumentException("Argument cannot be null or whitespace", nameof(projectFilePattern)); + } _root = root; - _dataDirectory = new DirectoryInfo(Path.Combine(_root.FullName, DataDirectoryName)); + _assetName = assetName; + + _dotnetExeFile = dotnetExeFile; + + _projectFilePattern = projectFilePattern; + + _dataDirectory = _root.GetDirectory(DataDirectoryName); _inventoryFiles = new TestAssetInventoryFiles(_dataDirectory); @@ -56,37 +80,69 @@ namespace Microsoft.DotNet.TestFramework { _dataDirectory }; - - if (!_dataDirectory.Exists) - { - _dataDirectory.Create(); - } } public TestAssetInstance CreateInstance([CallerMemberName] string callingMethod = "", string identifier = "") { - var instancePath = GetTestDestinationDirectoryPath(callingMethod, identifier); + var instancePath = GetTestDestinationDirectory(callingMethod, identifier); - var testInstance = new TestAssetInstance(this, new DirectoryInfo(instancePath)); + var testInstance = new TestAssetInstance(this, instancePath); return testInstance; } - private string GetTestDestinationDirectoryPath(string callingMethod, string identifier) + internal IEnumerable GetSourceFiles() + { + ThrowIfTestAssetDoesNotExist(); + + ThrowIfAssetSourcesHaveChanged(); + + return GetInventory( + _inventoryFiles.Source, + null, + () => {}); + } + + internal IEnumerable GetRestoreFiles() + { + ThrowIfTestAssetDoesNotExist(); + + ThrowIfAssetSourcesHaveChanged(); + + return GetInventory( + _inventoryFiles.Restore, + GetSourceFiles, + DoRestore); + } + + internal IEnumerable GetBuildFiles() + { + ThrowIfTestAssetDoesNotExist(); + + ThrowIfAssetSourcesHaveChanged(); + + return GetInventory( + _inventoryFiles.Build, + () => GetRestoreFiles() + .Concat(GetSourceFiles()), + DoBuild); + } + + private DirectoryInfo GetTestDestinationDirectory(string callingMethod, string identifier) { #if NET451 string baseDirectory = AppDomain.CurrentDomain.BaseDirectory; #else string baseDirectory = AppContext.BaseDirectory; #endif - return Path.Combine(baseDirectory, callingMethod + identifier, _assetName); + return new DirectoryInfo(Path.Combine(baseDirectory, callingMethod + identifier, _assetName)); } - private List LoadInventory(FileInfo file) + private IEnumerable LoadInventory(FileInfo file) { if (!file.Exists) { - return null; + return Enumerable.Empty(); } var inventory = new List(); @@ -106,6 +162,11 @@ namespace Microsoft.DotNet.TestFramework FileUtility.ReplaceWithLock( filePath => { + if (!_dataDirectory.Exists) + { + _dataDirectory.Create(); + } + using (var stream = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.None)) { @@ -128,29 +189,6 @@ namespace Microsoft.DotNet.TestFramework .Where(f => !FilesToExclude.Contains(f.Name)); } - internal IEnumerable GetSourceFiles() - { - return GetInventory(_inventoryFiles.Source, null, () => {}); - } - - internal IEnumerable GetRestoreFiles() - { - return GetInventory(_inventoryFiles.Restore, GetSourceFiles, DoRestore); - } - - internal IEnumerable GetBuildFiles() - { - return GetInventory( - _inventoryFiles.Build, - () => - { - var preInventory = new List(GetRestoreFiles()); - preInventory.AddRange(GetSourceFiles()); - return preInventory; - }, - DoBuild); - } - private IEnumerable GetInventory( FileInfo file, Func> beforeAction, @@ -178,11 +216,26 @@ namespace Microsoft.DotNet.TestFramework preInventory = beforeAction(); } - action(); + Task.Run(async () => await ConcurrencyUtilities.ExecuteWithFileLockedAsync( + _dataDirectory.FullName, + lockedToken => + { + if (file.Exists) + { + inventory = LoadInventory(file); + } + else + { + action(); - inventory = GetFileList().Where(i => !preInventory.Select(p => p.FullName).Contains(i.FullName)); + inventory = GetFileList().Where(i => !preInventory.Select(p => p.FullName).Contains(i.FullName)); - SaveInventory(file, inventory); + SaveInventory(file, inventory); + } + + return Task.FromResult(new Object()); + }, + CancellationToken.None)).Wait(); return inventory; } @@ -191,16 +244,16 @@ namespace Microsoft.DotNet.TestFramework { Console.WriteLine($"TestAsset Restore '{_assetName}'"); - var projFiles = _root.GetFiles("*.csproj", SearchOption.AllDirectories); + var projFiles = _root.GetFiles(_projectFilePattern, SearchOption.AllDirectories); foreach (var projFile in projFiles) { - var restoreArgs = new string[] { "restore", projFile.FullName, "/p:SkipInvalidConfigurations=true" }; + var restoreArgs = new string[] { "restore", projFile.FullName }; - var commandResult = Command.Create(new PathCommandResolverPolicy(), "dotnet", restoreArgs) - .CaptureStdOut() - .CaptureStdErr() - .Execute(); + var commandResult = Command.Create(_dotnetExeFile.FullName, restoreArgs) + .CaptureStdOut() + .CaptureStdErr() + .Execute(); int exitCode = commandResult.ExitCode; @@ -223,11 +276,11 @@ namespace Microsoft.DotNet.TestFramework Console.WriteLine($"TestAsset Build '{_assetName}'"); - var commandResult = Command.Create(new PathCommandResolverPolicy(), "dotnet", args) - .WorkingDirectory(_root.FullName) - .CaptureStdOut() - .CaptureStdErr() - .Execute(); + var commandResult = Command.Create(_dotnetExeFile.FullName, args) + .WorkingDirectory(_root.FullName) + .CaptureStdOut() + .CaptureStdErr() + .Execute(); int exitCode = commandResult.ExitCode; @@ -242,5 +295,74 @@ namespace Microsoft.DotNet.TestFramework throw new Exception(message); } } + + private void ThrowIfAssetSourcesHaveChanged() + { + if (!_dataDirectory.Exists) + { + return; + } + + var dataDirectoryFiles = _dataDirectory.GetFiles("*", SearchOption.AllDirectories); + + if (!dataDirectoryFiles.Any()) + { + return; + } + + var trackedFiles = _inventoryFiles.AllInventoryFiles.SelectMany(f => LoadInventory(f)); + + var assetFiles = GetFileList(); + + var untrackedFiles = assetFiles.Where(a => !trackedFiles.Any(t => t.FullName.Equals(a.FullName))); + + if (untrackedFiles.Any()) + { + var message = $"TestAsset {_assetName} has untracked files. " + + "Consider cleaning the asset and deleting its `.tam` directory to " + + "recreate tracking files.\n\n" + + $".tam directory: {_dataDirectory.FullName}\n" + + "Untracked Files: \n"; + + message += String.Join("\n", untrackedFiles.Select(f => $" - {f.FullName}\n")); + + throw new Exception(message); + } + + var earliestDataDirectoryTimestamp = + dataDirectoryFiles + .OrderBy(f => f.LastWriteTime) + .First() + .LastWriteTime; + + if (earliestDataDirectoryTimestamp == null) + { + return; + } + + var updatedSourceFiles = LoadInventory(_inventoryFiles.Source) + .Where(f => f.LastWriteTime > earliestDataDirectoryTimestamp); + + if (updatedSourceFiles.Any()) + { + var message = $"TestAsset {_assetName} has updated files. " + + "Consider cleaning the asset and deleting its `.tam` directory to " + + "recreate tracking files.\n\n" + + $".tam directory: {_dataDirectory.FullName}\n" + + "Updated Files: \n"; + + message += String.Join("\n", updatedSourceFiles.Select(f => $" - {f.FullName}\n")); + + throw new GracefulException(message); + } + } + + private void ThrowIfTestAssetDoesNotExist() + { + if (!_root.Exists) + { + throw new DirectoryNotFoundException($"Directory not found at '{_root.FullName}'"); + } + } } } diff --git a/src/Microsoft.DotNet.TestFramework/TestAssetInventoryFiles.cs b/src/Microsoft.DotNet.TestFramework/TestAssetInventoryFiles.cs index 563ba8fd1..bcc7f0045 100644 --- a/src/Microsoft.DotNet.TestFramework/TestAssetInventoryFiles.cs +++ b/src/Microsoft.DotNet.TestFramework/TestAssetInventoryFiles.cs @@ -72,5 +72,18 @@ namespace Microsoft.DotNet.TestFramework Build = new FileInfo(Path.Combine(inventoryFileDirectory.FullName, "build.txt")); } + + public IEnumerable AllInventoryFiles + { + get + { + return new List + { + Source, + Restore, + Build + }; + } + } } } diff --git a/src/Microsoft.DotNet.TestFramework/TestAssetKinds.cs b/src/Microsoft.DotNet.TestFramework/TestAssetKinds.cs index 6d95b0128..bd5efafb4 100644 --- a/src/Microsoft.DotNet.TestFramework/TestAssetKinds.cs +++ b/src/Microsoft.DotNet.TestFramework/TestAssetKinds.cs @@ -16,5 +16,7 @@ namespace Microsoft.DotNet.TestFramework public static string DesktopTestProjects = "DesktopTestProjects"; public static string TestProjects = "TestProjects"; + + public static string NonRestoredTestProjects = "NonRestoredTestProjects"; } } diff --git a/src/Microsoft.DotNet.TestFramework/TestAssets.cs b/src/Microsoft.DotNet.TestFramework/TestAssets.cs index a08b225bf..18fbd871e 100644 --- a/src/Microsoft.DotNet.TestFramework/TestAssets.cs +++ b/src/Microsoft.DotNet.TestFramework/TestAssets.cs @@ -15,14 +15,51 @@ namespace Microsoft.DotNet.TestFramework { private DirectoryInfo _root; - public TestAssets(DirectoryInfo assetsRoot) + private FileInfo _dotnetCsprojExe; + + private FileInfo _dotnetProjectJsonExe; + + private const string ProjectJsonSearchPattern = "project.json"; + + private const string CsprojSearchPattern = "*.csproj"; + + public TestAssets(DirectoryInfo assetsRoot, FileInfo dotnetCsprojExe, FileInfo dotnetProjectJsonExe) { + if (assetsRoot == null) + { + throw new ArgumentNullException(nameof(assetsRoot)); + } + + if (dotnetCsprojExe == null) + { + throw new ArgumentNullException(nameof(dotnetCsprojExe)); + } + + if (dotnetProjectJsonExe == null) + { + throw new ArgumentNullException(nameof(dotnetProjectJsonExe)); + } + if (!assetsRoot.Exists) { throw new DirectoryNotFoundException($"Directory not found at '{assetsRoot}'"); } + if (!dotnetCsprojExe.Exists) + { + throw new FileNotFoundException("Csproj dotnet executable must exist", dotnetCsprojExe.FullName); + } + + if (!dotnetProjectJsonExe.Exists) + { + throw new FileNotFoundException("project.json dotnet executable must exist", dotnetProjectJsonExe.FullName); + } + _root = assetsRoot; + + _dotnetCsprojExe = dotnetCsprojExe; + + _dotnetProjectJsonExe = dotnetProjectJsonExe; } public TestAssetInfo Get(string name) @@ -34,7 +71,48 @@ namespace Microsoft.DotNet.TestFramework { var assetDirectory = new DirectoryInfo(Path.Combine(_root.FullName, kind, name)); - return new TestAssetInfo(assetDirectory, name); + return new TestAssetInfo( + assetDirectory, + name, + _dotnetCsprojExe, + CsprojSearchPattern); + } + + public TestAssetInfo GetProjectJson(string name) + { + return GetProjectJson(TestAssetKinds.TestProjects, name); + } + + public TestAssetInfo GetProjectJson(string kind, string name) + { + var assetDirectory = new DirectoryInfo(Path.Combine(_root.FullName, kind, name)); + + return new TestAssetInfo( + assetDirectory, + name, + _dotnetProjectJsonExe, + ProjectJsonSearchPattern); + } + + public DirectoryInfo CreateTestDirectory([CallerMemberName] string callingMethod = "", string identifier = "") + { + var testDestination = GetTestDestinationDirectoryPath("temp", callingMethod, identifier); + + var testDirectory = new DirectoryInfo(testDestination); + + testDirectory.EnsureExistsAndEmpty(); + + return testDirectory; + } + + private string GetTestDestinationDirectoryPath(string testProjectName, string callingMethod, string identifier) + { +#if NET451 + string baseDirectory = AppDomain.CurrentDomain.BaseDirectory; +#else + string baseDirectory = AppContext.BaseDirectory; +#endif + return Path.Combine(baseDirectory, callingMethod + identifier, testProjectName); } } } diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs index 652647d6b..3b0c99d9d 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/DirectoryInfoAssertions.cs @@ -42,7 +42,11 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(this); } - public AndConstraint HaveTextFile(string expectedFile, string expectedContents, string because = "", params object[] reasonArgs) + public AndConstraint HaveTextFile( + string expectedFile, + string expectedContents, + string because = "", + params object[] reasonArgs) { this.HaveFile(expectedFile, because, reasonArgs); @@ -58,10 +62,15 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(this); } - public AndConstraint NotHaveFile(string expectedFile) + public AndConstraint NotHaveFile( + string expectedFile, + string because = "", + params object [] reasonArgs) { var file = _dirInfo.EnumerateFiles(expectedFile, SearchOption.TopDirectoryOnly).SingleOrDefault(); - Execute.Assertion.ForCondition(file == null) + Execute.Assertion + .ForCondition(file == null) + .BecauseOf(because, reasonArgs) .FailWith("File {0} should not be found in directory {1}.", expectedFile, _dirInfo.FullName); return new AndConstraint(this); } @@ -76,7 +85,10 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(this); } - public AndConstraint HaveTextFiles(IDictionary expectedFiles, string because = "", params object[] reasonArgs) + public AndConstraint HaveTextFiles( + IDictionary expectedFiles, + string because = "", + params object[] reasonArgs) { foreach (var expectedFile in expectedFiles) { @@ -86,7 +98,11 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(this); } - public AndConstraint HaveFilesMatching(string expectedFilesSearchPattern, SearchOption searchOption, string because = "", params object[] reasonArgs) + public AndConstraint HaveFilesMatching( + string expectedFilesSearchPattern, + SearchOption searchOption, + string because = "", + params object[] reasonArgs) { var matchingFileExists = _dirInfo.EnumerateFiles(expectedFilesSearchPattern, searchOption).Any(); @@ -99,11 +115,14 @@ namespace Microsoft.DotNet.Tools.Test.Utilities return new AndConstraint(this); } - public AndConstraint NotHaveFiles(IEnumerable expectedFiles) + public AndConstraint NotHaveFiles( + IEnumerable expectedFiles, + string because = "", + params object [] reasonArgs) { foreach (var expectedFile in expectedFiles) { - NotHaveFile(expectedFile); + NotHaveFile(expectedFile, because, reasonArgs); } return new AndConstraint(this); diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/FileInfoExtensions.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/FileInfoExtensions.cs index 7018a1082..ccf3bf842 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/FileInfoExtensions.cs +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/Assertions/FileInfoExtensions.cs @@ -25,5 +25,10 @@ namespace Microsoft.DotNet.Tools.Test.Utilities { return new FileInfoNuGetLock(subject); } + + public static string ReadAllText(this FileInfo subject) + { + return File.ReadAllText(subject.FullName); + } } } diff --git a/test/Microsoft.DotNet.Tools.Tests.Utilities/TestBase.cs b/test/Microsoft.DotNet.Tools.Tests.Utilities/TestBase.cs index a25b4b58d..cc1fbe3b1 100644 --- a/test/Microsoft.DotNet.Tools.Tests.Utilities/TestBase.cs +++ b/test/Microsoft.DotNet.Tools.Tests.Utilities/TestBase.cs @@ -53,7 +53,10 @@ namespace Microsoft.DotNet.Tools.Test.Utilities { var assetsRoot = Path.Combine(RepoRoot, "TestAssets"); - s_testAssets = new TestAssets(new DirectoryInfo(assetsRoot)); + s_testAssets = new TestAssets( + new DirectoryInfo(assetsRoot), + new FileInfo(new EnvironmentProvider().GetCommandPath("dotnet")), + new FileInfo(new RepoDirectoriesProvider().PjDotnet)); } return s_testAssets; From bf7a0845b7447bf837610d241c1924f6a5171c31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbyn=C4=9Bk=20Sailer?= Date: Fri, 6 Jan 2017 19:07:21 +0100 Subject: [PATCH 75/94] LOC CHECKIN | dotnet/cli | 20170106 --- .../xlf/LocalizableStrings.cs.xlf | 18 +++--- .../xlf/LocalizableStrings.de.xlf | 32 +++++------ .../xlf/LocalizableStrings.es.xlf | 10 ++-- .../xlf/LocalizableStrings.fr.xlf | 4 +- .../xlf/LocalizableStrings.ja.xlf | 14 ++--- .../xlf/LocalizableStrings.ko.xlf | 4 +- .../xlf/LocalizableStrings.pl.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 16 +++--- .../xlf/LocalizableStrings.ru.xlf | 16 +++--- .../xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 10 ++-- .../xlf/LocalizableStrings.zh-Hant.xlf | 20 +++---- .../xlf/LocalizableStrings.cs.xlf | 14 ++--- .../xlf/LocalizableStrings.de.xlf | 12 ++-- .../xlf/LocalizableStrings.es.xlf | 12 ++-- .../xlf/LocalizableStrings.fr.xlf | 12 ++-- .../xlf/LocalizableStrings.ja.xlf | 12 ++-- .../xlf/LocalizableStrings.ko.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 10 ++-- .../xlf/LocalizableStrings.ru.xlf | 14 ++--- .../xlf/LocalizableStrings.zh-Hans.xlf | 12 ++-- .../xlf/LocalizableStrings.zh-Hant.xlf | 12 ++-- .../xlf/LocalizableStrings.cs.xlf | 2 +- .../xlf/LocalizableStrings.de.xlf | 8 +-- .../xlf/LocalizableStrings.es.xlf | 4 +- .../xlf/LocalizableStrings.fr.xlf | 2 +- .../xlf/LocalizableStrings.ja.xlf | 32 +++++------ .../xlf/LocalizableStrings.pt-BR.xlf | 8 +-- .../xlf/LocalizableStrings.ru.xlf | 10 ++-- .../xlf/LocalizableStrings.zh-Hans.xlf | 18 +++--- .../xlf/LocalizableStrings.zh-Hant.xlf | 36 ++++++------ .../CommandLine/xlf/LocalizableStrings.de.xlf | 14 ++--- .../CommandLine/xlf/LocalizableStrings.es.xlf | 4 +- .../CommandLine/xlf/LocalizableStrings.ja.xlf | 2 +- .../xlf/LocalizableStrings.pt-BR.xlf | 4 +- .../CommandLine/xlf/LocalizableStrings.ru.xlf | 6 +- .../CommandLine/xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 14 ++--- .../xlf/LocalizableStrings.zh-Hant.xlf | 8 +-- .../xlf/LocalizableStrings.cs.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.de.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.es.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.fr.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.it.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.ja.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.ko.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.pl.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.pt-BR.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.ru.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.tr.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.zh-Hans.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.zh-Hant.xlf | 56 +++++++++---------- .../xlf/LocalizableStrings.de.xlf | 4 +- .../xlf/LocalizableStrings.es.xlf | 2 +- .../xlf/LocalizableStrings.ja.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 4 +- .../xlf/LocalizableStrings.ru.xlf | 4 +- .../xlf/LocalizableStrings.tr.xlf | 2 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 4 +- .../xlf/LocalizableStrings.cs.xlf | 2 +- .../xlf/LocalizableStrings.de.xlf | 4 +- .../xlf/LocalizableStrings.fr.xlf | 4 +- .../xlf/LocalizableStrings.ja.xlf | 2 +- .../xlf/LocalizableStrings.ko.xlf | 2 +- .../xlf/LocalizableStrings.pt-BR.xlf | 2 +- .../xlf/LocalizableStrings.ru.xlf | 2 +- .../xlf/LocalizableStrings.tr.xlf | 2 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 2 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 6 +- .../xlf/LocalizableStrings.cs.xlf | 12 ++-- .../xlf/LocalizableStrings.de.xlf | 8 +-- .../xlf/LocalizableStrings.es.xlf | 8 +-- .../xlf/LocalizableStrings.fr.xlf | 12 ++-- .../xlf/LocalizableStrings.it.xlf | 6 +- .../xlf/LocalizableStrings.ja.xlf | 6 +- .../xlf/LocalizableStrings.ko.xlf | 2 +- .../xlf/LocalizableStrings.pl.xlf | 2 +- .../xlf/LocalizableStrings.pt-BR.xlf | 8 +-- .../xlf/LocalizableStrings.ru.xlf | 10 ++-- .../xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 8 +-- .../xlf/LocalizableStrings.zh-Hant.xlf | 10 ++-- .../xlf/LocalizableStrings.de.xlf | 2 +- .../xlf/LocalizableStrings.ja.xlf | 2 +- .../xlf/LocalizableStrings.ko.xlf | 2 +- .../xlf/LocalizableStrings.pt-BR.xlf | 2 +- .../xlf/LocalizableStrings.tr.xlf | 2 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 2 +- .../dotnet-pack/xlf/LocalizableStrings.cs.xlf | 4 +- .../dotnet-pack/xlf/LocalizableStrings.de.xlf | 8 +-- .../dotnet-pack/xlf/LocalizableStrings.es.xlf | 4 +- .../dotnet-pack/xlf/LocalizableStrings.fr.xlf | 2 +- .../dotnet-pack/xlf/LocalizableStrings.it.xlf | 2 +- .../dotnet-pack/xlf/LocalizableStrings.ja.xlf | 8 +-- .../dotnet-pack/xlf/LocalizableStrings.ko.xlf | 2 +- .../dotnet-pack/xlf/LocalizableStrings.pl.xlf | 4 +- .../xlf/LocalizableStrings.pt-BR.xlf | 6 +- .../dotnet-pack/xlf/LocalizableStrings.ru.xlf | 4 +- .../dotnet-pack/xlf/LocalizableStrings.tr.xlf | 6 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 2 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 6 +- .../xlf/LocalizableStrings.cs.xlf | 4 +- .../xlf/LocalizableStrings.de.xlf | 8 +-- .../xlf/LocalizableStrings.es.xlf | 4 +- .../xlf/LocalizableStrings.fr.xlf | 4 +- .../xlf/LocalizableStrings.it.xlf | 2 +- .../xlf/LocalizableStrings.ja.xlf | 4 +- .../xlf/LocalizableStrings.ko.xlf | 2 +- .../xlf/LocalizableStrings.pl.xlf | 2 +- .../xlf/LocalizableStrings.pt-BR.xlf | 6 +- .../xlf/LocalizableStrings.ru.xlf | 4 +- .../xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 6 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 6 +- .../xlf/LocalizableStrings.cs.xlf | 8 +-- .../xlf/LocalizableStrings.de.xlf | 8 +-- .../xlf/LocalizableStrings.es.xlf | 8 +-- .../xlf/LocalizableStrings.fr.xlf | 8 +-- .../xlf/LocalizableStrings.it.xlf | 8 +-- .../xlf/LocalizableStrings.ja.xlf | 10 ++-- .../xlf/LocalizableStrings.ko.xlf | 8 +-- .../xlf/LocalizableStrings.pl.xlf | 8 +-- .../xlf/LocalizableStrings.pt-BR.xlf | 8 +-- .../xlf/LocalizableStrings.ru.xlf | 8 +-- .../xlf/LocalizableStrings.tr.xlf | 8 +-- .../xlf/LocalizableStrings.zh-Hans.xlf | 8 +-- .../xlf/LocalizableStrings.zh-Hant.xlf | 8 +-- .../dotnet-run/xlf/LocalizableStrings.cs.xlf | 2 +- .../dotnet-run/xlf/LocalizableStrings.de.xlf | 4 +- .../dotnet-run/xlf/LocalizableStrings.es.xlf | 4 +- .../dotnet-run/xlf/LocalizableStrings.it.xlf | 2 +- .../dotnet-run/xlf/LocalizableStrings.ja.xlf | 8 +-- .../dotnet-run/xlf/LocalizableStrings.ko.xlf | 2 +- .../xlf/LocalizableStrings.pt-BR.xlf | 4 +- .../dotnet-run/xlf/LocalizableStrings.ru.xlf | 6 +- .../dotnet-run/xlf/LocalizableStrings.tr.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hans.xlf | 4 +- .../xlf/LocalizableStrings.zh-Hant.xlf | 6 +- .../dotnet-test/xlf/LocalizableStrings.cs.xlf | 11 ++-- .../dotnet-test/xlf/LocalizableStrings.de.xlf | 11 ++-- .../dotnet-test/xlf/LocalizableStrings.es.xlf | 13 ++--- .../dotnet-test/xlf/LocalizableStrings.fr.xlf | 17 +++--- .../dotnet-test/xlf/LocalizableStrings.it.xlf | 13 ++--- .../dotnet-test/xlf/LocalizableStrings.ja.xlf | 17 +++--- .../dotnet-test/xlf/LocalizableStrings.ko.xlf | 5 +- .../dotnet-test/xlf/LocalizableStrings.pl.xlf | 5 +- .../xlf/LocalizableStrings.pt-BR.xlf | 17 +++--- .../dotnet-test/xlf/LocalizableStrings.ru.xlf | 7 +-- .../dotnet-test/xlf/LocalizableStrings.tr.xlf | 17 +++--- .../xlf/LocalizableStrings.zh-Hans.xlf | 15 +++-- .../xlf/LocalizableStrings.zh-Hant.xlf | 21 ++++--- .../xlf/CommonLocalizableStrings.cs.xlf | 2 +- .../xlf/CommonLocalizableStrings.de.xlf | 14 ++--- .../xlf/CommonLocalizableStrings.es.xlf | 8 +-- .../xlf/CommonLocalizableStrings.fr.xlf | 4 +- .../xlf/CommonLocalizableStrings.it.xlf | 6 +- .../xlf/CommonLocalizableStrings.ja.xlf | 6 +- .../xlf/CommonLocalizableStrings.ko.xlf | 8 +-- .../xlf/CommonLocalizableStrings.pt-BR.xlf | 6 +- .../xlf/CommonLocalizableStrings.ru.xlf | 4 +- .../xlf/CommonLocalizableStrings.tr.xlf | 6 +- .../xlf/CommonLocalizableStrings.zh-Hans.xlf | 8 +-- .../xlf/CommonLocalizableStrings.zh-Hant.xlf | 14 ++--- src/dotnet/xlf/LocalizableStrings.cs.xlf | 2 +- src/dotnet/xlf/LocalizableStrings.it.xlf | 4 +- 166 files changed, 924 insertions(+), 937 deletions(-) diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf index 2f5c7eb4f..ca8e034db 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.cs.xlf @@ -35,12 +35,12 @@ {0}: Looking for prefercliruntime file at `{1}` - {0}: hledání souboru prefercliruntime v {1} + {0}: Hledání souboru prefercliruntime v {1} {0}: attempting to resolve {1} - {0}: pokus o vyřešení {1} + {0}: Pokus o vyřešení {1} @@ -50,7 +50,7 @@ {0}: invalid commandResolverArguments - {0}: neplatné hodnoty commandResolverArguments + {0}: Neplatné hodnoty commandResolverArguments @@ -65,7 +65,7 @@ {0}: tool library found {1} - {0}: nalezena knihovna nástrojů {1} + {0}: Nalezena knihovna nástrojů {1} @@ -75,7 +75,7 @@ {0}: MSBuild project path = {1} - {0}: cesta k projektu MSBuildu = {1} + {0}: Cesta k projektu MSBuildu = {1} @@ -100,19 +100,19 @@ {0}: Attempting to resolve command spec from tool {1} - {0}: pokus o vyřešení specifikace příkazu nástroje {1} + {0}: Pokus o vyřešení specifikace příkazu nástroje {1} {0}: nuget packages root: {1} - {0}: kořen balíčků NuGet: + {0}: Kořen balíčků NuGet: {1} {0}: found tool lockfile at : {1} - {0}: zjištěný lockfile nástroje na: {1} + {0}: Zjištěný lockfile nástroje na: {1} @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - Čeká se na připojení ladicího programu. Pokračujte stisknutím tlačítka ENTER. + Čeká se na připojení ladicího programu. Pokračujte stisknutím ENTER. diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf index 97813be07..423626138 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.de.xlf @@ -5,7 +5,7 @@ Malformed command text '{0}' - Fehlerhafter Befehlstext '{0}' + Fehlerhafter Befehlstext "{0}". @@ -35,7 +35,7 @@ {0}: Looking for prefercliruntime file at `{1}` - {0}: Suche nach prefercliruntime-Datei unter `{1}` + {0}: Suche nach prefercliruntime-Datei unter {1} @@ -80,7 +80,7 @@ Specify which project file to use because this '{0}' contains more than one project file. - Geben Sie an, welche Projektdatei verwendet werden soll, weil '{0}' mehrere Projektdateien enthält. + Geben Sie an, welche Projektdatei verwendet werden soll, weil "{0}" mehrere Projektdateien enthält. @@ -90,23 +90,23 @@ {0}: resolving commandspec from {1} Tool Libraries. - {0}: commandSpec aus {1} Toolbibliotheken wird aufgelöst. + {0}: commandspec aus {1} Toolbibliotheken wird aufgelöst. {0}: failed to resolve commandspec from library. - {0}: commandSpec aus Bibliothek konnte nicht aufgelöst werden. + {0}: commandspec aus Bibliothek konnte nicht aufgelöst werden. {0}: Attempting to resolve command spec from tool {1} - {0}: Versuch, commandSpec aus Tool {1} aufzulösen + {0}: Versuch, commandspec aus Tool {1} aufzulösen. {0}: nuget packages root: {1} - {0}: NuGet-Paketestamm: + {0}: NuGet-Paketstamm: {1} @@ -122,27 +122,27 @@ {0}: attempting to create commandspec - {0}: Versuch, commandSpec zu erstellen + {0}: Versuch, commandspec zu erstellen {0}: commandSpec is null. - {0}: commandSpec ist NULL. + {0}: commandspec ist NULL. {0}: expect deps.json at: {1} - {0}: „deps.json“ vermutet unter: {1} + {0}: "deps.json" vermutet unter: {1} Generating deps.json at: {0} - „deps.json“ wird erzeugt unter: {0} + "deps.json" wird erzeugt unter: {0} unable to generate deps.json, it may have been already generated: {0} - „deps.json“ kann nicht erzeugt werden; sie wurde vielleicht bereits erzeugt: {0} + "deps.json" kann nicht erzeugt werden; sie wurde vielleicht bereits erzeugt: {0} @@ -152,12 +152,12 @@ Version for package `{0}` could not be resolved. - Version für Paket `{0}` konnte nicht aufgelöst werden. + Version für Paket "{0}" konnte nicht aufgelöst werden. File not found `{0}`. - Datei nicht gefunden: `{0}`. + Datei nicht gefunden: "{0}". @@ -167,12 +167,12 @@ No executable found matching command "{0}" - Keine ausführbare Datei zum Befehl „{0}“ gefunden. + Keine ausführbare Datei zum Befehl "{0}" gefunden. Waiting for debugger to attach. Press ENTER to continue - Warten auf Anhängen des Debuggers. EINGABE drücken, um fortzufahren. + Auf das Anfügen des Debuggers wird gewartet. Drücken Sie zum Fortsetzen die EINGABETASTE. diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf index fcff87a46..5ecf0ceb1 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.es.xlf @@ -35,7 +35,7 @@ {0}: Looking for prefercliruntime file at `{1}` - {0}: buscando el archivo prefercliruntime en "{1}" + {0}: Buscando el archivo prefercliruntime en "{1}" @@ -45,7 +45,7 @@ {0}: Did not find a matching project {1}. - {0}: no se encontró un proyecto coincidente {1}. + {0}: No se encontró un proyecto coincidente {1}. @@ -75,7 +75,7 @@ {0}: MSBuild project path = {1} - {0}: ruta del proyecto MSBuild = {1} + {0}: Ruta del proyecto MSBuild = {1} @@ -100,7 +100,7 @@ {0}: Attempting to resolve command spec from tool {1} - {0}: intentando resolver especificaciones de comando desde la herramienta {1} + {0}: Intentando resolver especificaciones de comando desde la herramienta {1} @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - Esperando anexar el depurador. Presione ENTRAR para continuar + Esperando a que se asocie el depurador. Presione ENTRAR para continuar. diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf index 21fee319a..907ecf035 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.fr.xlf @@ -100,7 +100,7 @@ {0}: Attempting to resolve command spec from tool {1} - {0} : tentative de résolution de la spécification de commande à partir de l'outil {1} + {0} : Tentative de résolution de la spécification de commande à partir de l'outil {1} @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - En attente d'attachement du débogueur. Appuyez sur ENTRÉE pour continuer + En attente de l'attachement du débogueur. Appuyez sur Entrée pour continuer diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf index 46c007ea5..0384678d9 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ja.xlf @@ -35,7 +35,7 @@ {0}: Looking for prefercliruntime file at `{1}` - {0}: `{1}` で prefercliruntime ファイルを検索しています + {0}:`{1}` で prefercliruntime ファイルを検索しています @@ -45,7 +45,7 @@ {0}: Did not find a matching project {1}. - {0}: 一致するプロジェクト {1}.が見つかりませんでした。 + {0}:一致するプロジェクト {1}.が見つかりませんでした。 @@ -70,12 +70,12 @@ {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} + {0}:MSBUILD_EXE_PATH = {1} {0}: MSBuild project path = {1} - {0}: MSBuild プロジェクト パス = {1} + {0}:MSBuild project path = {1} @@ -85,7 +85,7 @@ {0}: ProjectFactory did not find Project. - {0}: ProjectFactory でプロジェクトが見つかりませんでした。 + {0}:ProjectFactory でプロジェクトが見つかりませんでした。 @@ -100,7 +100,7 @@ {0}: Attempting to resolve command spec from tool {1} - {0}: ツール {1} から commandspec を解決しようとしています + {0}:ツール {1} から commandspec を解決しようとしています @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - デバッガーのアタッチを待機しています。続行するには Enter キーを押してください + デバッガーのアタッチを待っています...続行するには、ENTER キーを押してください diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf index 7da3727c2..a7fd4999a 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ko.xlf @@ -65,7 +65,7 @@ {0}: tool library found {1} - {0}: {1} 도구 라이브러리가 발견됨 + {0}: 도구 라이브러리가 발견됨({1}) @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - 연결할 디버거를 대기 중입니다. 계속하려면 ENTER 키를 누르세요. + 디버거가 연결될 때까지 대기하는 중입니다. 계속하려면 <Enter> 키를 누르세요. diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf index 4a2d09d1d..d3c4e1b48 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pl.xlf @@ -90,7 +90,7 @@ {0}: resolving commandspec from {1} Tool Libraries. - {0}: Rozpoznawanie elementu commandspec z bibliotek narzędzia {1}. + {0}: Rozpoznawanie elementu commandspec z bibliotek narzędzi {1}. @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - Oczekiwanie na dołączenie debugera. Naciśnij klawisz ENTER, aby kontynuować + Trwa oczekiwanie na dołączenie debugera. Naciśnij klawisz ENTER, aby kontynuować diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf index 57a23c3c6..33ab86868 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.pt-BR.xlf @@ -35,7 +35,7 @@ {0}: Looking for prefercliruntime file at `{1}` - {0}: procurando o arquivo prefercliruntime em '{1}' + {0}: Procurando o arquivo prefercliruntime em '{1}' @@ -45,7 +45,7 @@ {0}: Did not find a matching project {1}. - {0}: não encontrou um projeto {1} correspondente. + {0}: Não encontrou um projeto {1} correspondente. @@ -75,7 +75,7 @@ {0}: MSBuild project path = {1} - {0}: caminho de projeto do MSBuild = {1} + {0}: Caminho de projeto do MSBuild = {1} @@ -85,7 +85,7 @@ {0}: ProjectFactory did not find Project. - {0}: ProjectFactory não encontrou o Projeto. + {0}: O ProjectFactory não encontrou o Projeto. @@ -95,18 +95,18 @@ {0}: failed to resolve commandspec from library. - {0}: falha ao resolver commandspec por meio da biblioteca. + {0}: falha ao resolver commandspec da biblioteca. {0}: Attempting to resolve command spec from tool {1} - {0}: tentando resolver commandspec por meio da ferramenta {1} + {0}: Tentando resolver a especificação de comando da ferramenta {1} {0}: nuget packages root: {1} - {0}: raiz de pacotes NuGet: + {0}: raiz de pacores nuget: {1} @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - Aguardando o depurador anexar. Pressione ENTER para continuar + Esperando o depurador se conectar. Pressione ENTER para continuar diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf index 016bf7d6a..5cd32a327 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.ru.xlf @@ -30,12 +30,12 @@ Unable to locate dotnet multiplexer - Не удается найти мультиплексор dotnet. + Не удалось найти мультиплексор dotnet {0}: Looking for prefercliruntime file at `{1}` - {0}: поиск файла prefercliruntime в "{1}" + {0}: Поиск файла prefercliruntime "{1}" @@ -45,12 +45,12 @@ {0}: Did not find a matching project {1}. - {0}: не найден подходящий проект {1}. + {0}: Не найден соответствующий проект {1}. {0}: invalid commandResolverArguments - {0}: недопустимый commandResolverArguments + {0}: недопустимое значение commandResolverArguments @@ -65,7 +65,7 @@ {0}: tool library found {1} - {0}: найдена библиотека средств {1}. + {0}: найдена библиотека средств {1} @@ -75,7 +75,7 @@ {0}: MSBuild project path = {1} - {0}: путь проекта MSBuild — {1} + {0}: путь проекта MSBuild = {1} @@ -85,7 +85,7 @@ {0}: ProjectFactory did not find Project. - {0}: фабрика проектов не нашла проект. + {0}: Фабрика проектов не нашла проект. @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - Ожидание подключения отладчика. Для продолжения нажмите клавишу ВВОД. + Ожидание подключения отладчика. Нажмите ВВОД, чтобы продолжить diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf index 6aeadb930..9bded53e4 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.tr.xlf @@ -100,7 +100,7 @@ {0}: Attempting to resolve command spec from tool {1} - {0}: {1} aracından commandspec çözümlenmeye çalışılıyor + {0}: {1} aracından command.spec çözümlenmeye çalışılıyor @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - Hata ayıklayıcının eklenmesi bekleniyor. Devam etmek için ENTER tuşuna basın + Hata ayıklayıcısının eklenmesi bekleniyor. Devam etmek için ENTER’a basın diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf index a42fbba0f..587dcc32c 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hans.xlf @@ -65,7 +65,7 @@ {0}: tool library found {1} - {0}: 找到的工具库 {1} + {0}: 找到工具库 {1} @@ -90,7 +90,7 @@ {0}: resolving commandspec from {1} Tool Libraries. - {0}: 从 {1} 工具库解析 commandspec。 + {0}: 正在从 {1} 工具库解析 commandspec。 @@ -100,13 +100,13 @@ {0}: Attempting to resolve command spec from tool {1} - {0}: 尝试从工具 {1} 解析命令 spec + {0}: 正在尝试从工具 {1} 解析命令 spec {0}: nuget packages root: {1} - {0}: nuget 包根目录: + {0}: nuget 包根目录: {1} @@ -172,7 +172,7 @@ Waiting for debugger to attach. Press ENTER to continue - 等待附加调试器。按 Enter 继续 + 正在等待调试程序附加。按 Enter 继续操作 diff --git a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf index 087b5084d..49c345db9 100644 --- a/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.Cli.Utils/xlf/LocalizableStrings.zh-Hant.xlf @@ -30,12 +30,12 @@ Unable to locate dotnet multiplexer - 找不到 dotnet multiplexer + 找不到 dotnet 多工器 {0}: Looking for prefercliruntime file at `{1}` - {0}: 正在於 `{1}` 尋找 prefercliruntime 檔 + {0}:正於 `{1}` 尋找 prefercliruntime 檔案 @@ -45,7 +45,7 @@ {0}: Did not find a matching project {1}. - {0}: 未找到相符的專案 {1}。 + {0}:未找到相符的專案 {1}。 @@ -70,22 +70,22 @@ {0}: MSBUILD_EXE_PATH = {1} - {0}: MSBUILD_EXE_PATH = {1} + {0}:MSBUILD_EXE_PATH = {1} {0}: MSBuild project path = {1} - {0}: MSBuild 專案路徑 = {1} + {0}:MSBuild 專案路徑 = {1} Specify which project file to use because this '{0}' contains more than one project file. - 指定要使用的專案檔,因為這個 '{0}' 包含多個專案檔。 + 因為這個 '{0}' 包含多個專案檔,所以請指定要使用的專案檔。 {0}: ProjectFactory did not find Project. - {0}: ProjectFactory 未找到專案。 + {0}:ProjectFactory 未找到專案。 @@ -100,7 +100,7 @@ {0}: Attempting to resolve command spec from tool {1} - {0}: 正在嘗試從工具 {1} 解析 command spec + {0}:正在嘗試從工具 {1} 解析 command spec @@ -167,12 +167,12 @@ No executable found matching command "{0}" - 沒有與命令 "{0}" 相符的可執行檔 + 未找到與命令 "{0}" 相符的可執行檔 Waiting for debugger to attach. Press ENTER to continue - 正在等候附加偵錯工具。按 ENTER 繼續進行 + 正在等候偵錯工具進行連結。按 ENTER 繼續 diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf index 3a23b4234..c722cb035 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.cs.xlf @@ -17,19 +17,19 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Vítejte v .NET Core! + Vítá vás .NET Core! --------------------- -Další informace o .NET Core najdete na adrese https://aka.ms/dotnet-docs. K zobrazení dostupných příkazů použijte příkaz dotnet --help nebo přejděte na https://aka.ms/dotnet-cli-docs. +Další informace o .NET Core najdete na https://aka.ms/dotnet-docs. Dostupné příkazy si zobrazíte pomocí dotnet --help, případně přejděte na https://aka.ms/dotnet-cli-docs. Telemetrie -------------- -Nástroje .NET Core shromažďují data o využití, která pomáhají zlepšit vaši práci. Tato data jsou anonymní a nezahrnují argumenty příkazového řádku. Data shromažďuje Microsoft a sdílí je s komunitou uživatelů. -Pokud chcete telemetrii vypnout, nastavte proměnnou prostředí DOTNET_CLI_TELEMETRY_OPTOUT na 1. Můžete k tomu použít své oblíbené prostředí. -Další informace o telemetrických nástrojích .NET Core najdete na adrese https://aka.ms/dotnet-cli-telemetry. +Nástroje .NET Core shromažďují data o využití s cílem vylepšit vaše prostředí. Data jsou anonymní a nezahrnují argumenty příkazového řádku. Data shromažďuje Microsoft, který je sdílí s komunitou. +S telemetrií můžete vyjádřit výslovný nesouhlas, a to nastavením proměnné prostředí DOTNET_CLI_TELEMETRY_OPTOUT na 1 prostřednictvím vašeho oblíbeného rozhraní. +Další informace o telemetrii nástrojů .NET Core si můžete přečíst na webu https://aka.ms/dotnet-cli-telemetry. -Konfigurace... +Probíhá konfigurace... ------------------- -Je spuštěný příkaz, který na začátku naplní mezipaměť místního balíčku, zlepší rychlost obnovení a umožní offline přístup. Dokončení příkazu zabere necelou minutu a stačí ho spustit jen jednou. +Běží příkaz pro počáteční naplnění vaší místní mezipaměti balíčků, aby se vylepšila rychlost obnovování a umožnil se offline přístup. Provádění tohoto příkazu může trvat až minutu a proběhne jen jednou. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf index 3f8c8d5d8..2f757dc0a 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.de.xlf @@ -19,17 +19,17 @@ Configuring... A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. Willkommen bei .NET Core! --------------------- -Erfahren Sie mehr über .NET Core unter https://aka.ms/dotnet-docs. Mit „dotnet --help“ können Sie die verfügbaren Befehle anzeigen, oder rufen Sie https://aka.ms/dotnet-cli-docs auf. +Weitere Informationen zu .NET Core finden Sie unter https://aka.ms/dotnet-docs. Verwenden Sie "dotnet --help", um die verfügbaren Befehle anzuzeigen, oder wechseln Sie zu https://aka.ms/dotnet-cli-docs. Telemetrie -------------- -Die .NET Core-Tools sammeln Nutzungsdaten, um die Benutzerfreundlichkeit zu verbessern. Die Daten sind anonym und enthalten keine Befehlszeilenargumente. Sie werden von Microsoft gesammelt und für die Community freigegeben. -Sie können die Telemetrie deaktivieren, indem Sie die Umgebungsvariable DOTNET_CLI_TELEMETRY_OPTOUT in einer Shell Ihrer Wahl auf 1 setzen. -Weitere Informationen über die Telemetrie der .NET Core-Tools finden Sie unter https://aka.ms/dotnet-cli-telemetry. +Über die .NET Core-Tools werden Nutzungsdaten erfasst, damit wir die Benutzeroberfläche weiter für Sie verbessern können. Die Daten sind anonym und enthalten keine Befehlszeilenargumente. Die Daten werden von Microsoft gesammelt und mit der Community geteilt. +Sie können die Erfassung von Telemetriedaten deaktivieren, indem Sie die Umgebungsvariable DOTNET_CLI_TELEMETRY_OPTOUT mithilfe Ihrer bevorzugten Shell auf 1 festlegen. +Weitere Informationen zur Telemetrie der .NET Core-Tools finden Sie unter https://aka.ms/dotnet-cli-telemetry. -Konfiguration +Konfiguration wird durchgeführt... ------------------- -Um Ihren lokalen Paketcache anfänglich zu füllen, die Wiederherstellungsgeschwindigkeit zu verbessern und den Offlinezugriff zu aktivieren, wird ein Befehl ausgeführt. Die Ausführung dieses Befehls dauert maximal eine Minute und geschieht nur einmal. +Ein Befehl wird ausgeführt, um Ihren lokalen Paketcache erstmals aufzufüllen, die Wiederherstellungsgeschwindigkeit zu verbessern und Onlinezugriff zu ermöglichen. Die Ausführung dieses Befehls nimmt bis zu einer Minute in Anspruch und wird einmalig ausgeführt. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf index ec09e7268..5a5aa4b18 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.es.xlf @@ -17,19 +17,19 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Bienvenido a .NET Core + Esto es .NET Core --------------------- -Obtenga más información sobre .NET Core en https://aka.ms/dotnet-docs. Use dotnet --help para ver los comandos disponibles o vaya a https://aka.ms/dotnet-cli-docs. +Más información sobre .NET Core en https://aka.ms/dotnet-docs. Use dotnet --help para ver los comandos disponibles o vaya a https://aka.ms/dotnet-cli-docs. Telemetría -------------- -Las herramientas de .NET Core recopilan datos de uso con el fin de mejorar su experiencia. Los datos son anónimos y no incluyen argumentos de la línea de comandos. Microsoft recopila los datos y los comparte con la comunidad. -Si desea optar por no participar en la telemetría, establezca una variable de entorno DOTNET_CLI_TELEMETRY_OPTOUT en 1 con el shell de su preferencia. -Puede leer más información sobre la telemetría de las herramientas de .NET Core en https://aka.ms/dotnet-cli-telemetry. +Las herramientas de .NET Core recopilan datos de uso para mejorar su experiencia. Los datos son anónimos y no incluyen los argumentos de la línea de comandos. Microsoft recopila y comparte los datos con la comunidad. +Puede desactivar la telemetría estableciendo una variable de entorno DOTNET_CLI_TELEMETRY_OPTOUT en 1 utilizando su shell favorito. +Puede leer más sobre la telemetría de las herramientas de .NET Core en https://aka.ms/dotnet-cli-telemetry. Configurando... ------------------- -Un comando se ejecuta para rellenar inicialmente la caché de paquete local a fin de mejorar la velocidad de restauración y permitir el acceso sin conexión. Este comando demorará hasta un minuto para completarse y solo sucederá una vez. +Se está ejecutando un comando para rellenar inicialmente la memoria caché de paquetes local, para mejorar la velocidad de restauración y habilitar el acceso sin conexión. Este comando tardará hasta un minuto en completarse y solo ocurrirá una vez. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf index a50a17de7..6318c757a 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.fr.xlf @@ -19,17 +19,17 @@ Configuring... A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. Bienvenue dans .NET Core ! --------------------- -En savoir plus sur .NET Core @ https://aka.ms/dotnet-docs. Utilisez dotnet --help pour voir les commandes disponibles, ou accédez à https://aka.ms/dotnet-cli-docs. +En savoir plus sur .NET Core à la page https://aka.ms/dotnet-docs. Utilisez dotnet --help pour voir les commandes disponibles ou accédez à la page https://aka.ms/dotnet-cli-docs. Télémétrie -------------- -Les outils .NET Core collectent des données d'utilisation pour améliorer votre expérience utilisateur. Ces données sont anonymes et n'incluent aucun argument de ligne de commande. Les données sont collectées par Microsoft et partagées par la communauté. -Vous pouvez refuser l'adhésion à la télémétrie en assignant la valeur 1 à la variable d'environnement DOTNET_CLI_TELEMETRY_OPTOUT via l'interpréteur de commandes de votre choix. -Pour plus d'informations sur la télémétrie des outils .NET Core, consultez https://aka.ms/dotnet-cli-telemetry. +Les outils .NET Core permettent de collecter les données sur l'utilisation afin d'améliorer votre expérience. Les données sont anonymes et n'incluent pas d'arguments de ligne de commande. Les données sont collectées par Microsoft et partagées avec la communauté. +Vous pouvez vous désinscrire de la télémétrie en définissant une variable d'environnement DOTNET_CLI_TELEMETRY_OPTOUT sur 1 à l'aide de l'interpréteur de votre choix. +Pour en savoir plus sur la télémétrie des outils .NET Core, consultez la page https://aka.ms/dotnet-cli-telemetry. -Configuration en cours... +Configuration... ------------------- -Une commande s'exécute pour remplir votre cache de package local, améliorer la vitesse de restauration et activer l'accès hors connexion. L'exécution de cette commande peut prendre jusqu'à une minute et n'a lieu qu'une seule fois. +La commande qui est exécutée remplit initialement votre cache de package local afin d'améliorer la vitesse de restauration et d'activer l'accès hors connexion. L'exécution de cette commande dure une minute et ne se produit qu'une seule fois. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf index aecb3b809..f72526146 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ja.xlf @@ -19,17 +19,17 @@ Configuring... A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. .NET Core へようこそ! --------------------- -.NET Core の詳細については、https://aka.ms/dotnet-docs を参照してください。利用可能なコマンドを参照するには、dotnet --help を使用するか、https://aka.ms/dotnet-cli-docs にアクセスしてください。 +.NET Core について詳しくは、https://aka.ms/dotnet-docs をご覧ください。dotnet --help を使って使用可能なコマンドを確認するか、https://aka.ms/dotnet-cli-docs をご覧ください。 テレメトリ -------------- -.NET Core ツールは、お客様のエクスペリエンス向上のために利用状況データを収集します。データは匿名であり、コマンドライン引数は含まれません。データは Microsoft によって収集され、コミュニティと共有されます。 -お好きなシェルを使用して DOTNET_CLI_TELEMETRY_OPTOUT 環境変数を 1 に設定すると、テレメトリを解除できます。 -.NET Core ツールのテレメトリの詳細については、https://aka.ms/dotnet-cli-telemetry でお読みいただけます。 +.NET Core ツールは、操作性を向上させるために利用状況データを収集します。データは匿名で、コマンドライン引数が含まれません。データは Microsoft によって収集され、コミュニティと共有されます。 +テレメトリを無効にするには、お好きなシェルを使用して、DOTNET_CLI_TELEMETRY_OPTOUT 環境変数を 1 に設定します。 +.NET Core ツールのテレメトリについて詳しくは、https://aka.ms/dotnet-cli-telemetry をお読みください。 -構成... +構成中... ------------------- -復元の高速化とオフライン アクセスの有効化のため、コマンドを実行してローカル パッケージ キャッシュを最初に設定しています。このコマンドは完了までに 1 分ほどかかりますが、設定が必要なのは最初の1回のみです。 +ローカル パッケージ キャッシュを最初に設定し、復元速度を向上させ、オフライン アクセスを可能にするため、コマンドを実行しています。このコマンドは 1 回だけ実行され、最大 1 分かかる場合があります。 diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf index 8709037b1..a64611340 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ko.xlf @@ -17,7 +17,7 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - .NET Core를 시작합니다! + NET Core를 시작합니다! --------------------- .NET Core에 대한 자세한 내용은 https://aka.ms/dotnet-docs를 참조하세요. 사용 가능한 명령을 보려면 dotnet --help를 사용하거나 https://aka.ms/dotnet-cli-docs를 방문하세요. @@ -29,7 +29,7 @@ A command is running to initially populate your local package cache, to improve 구성 중... ------------------- -초기에 로컬 패키지 캐시를 채우고, 복원 속도를 개선하고, 오프라인 액세스를 사용하도록 설정하기 위한 명령을 실행 중입니다. 완료하는 데 1분 정도 소요되며 한 번만 실행됩니다. +초기에 로컬 패키지 캐시를 채우고, 복원 속도를 개선하고, 오프라인 액세스를 사용하도록 설정하기 위한 명령을 실행 중입니다. 완료하는 데 최대 1분이 소요되며 한 번만 실행됩니다. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf index 259c21248..5dd44b02c 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.pt-BR.xlf @@ -19,17 +19,17 @@ Configuring... A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. Bem-vindo ao .NET Core! --------------------- -Saiba mais sobre o .NET Core em https://aka.ms/dotnet-docs. Use dotnet --help para ver os comandos disponíveis ou acesse https://aka.ms/dotnet-cli-docs. +Saiba mais sobre o .NET Core @ https://aka.ms/dotnet-docs. Use o dotnet --help para ver comandos disponíveis ou ir para https://aka.ms/dotnet-cli-docs. Telemetria -------------- -As ferramentas do .NET Core coletam dados de uso para melhorar sua experiência. Os dados são anônimos e não incluem argumentos de linha de comando. Os dados são coletados pela Microsoft e compartilhados com a comunidade. -É possível recusar a telemetria definindo uma variável de ambiente DOTNET_CLI_TELEMETRY_OPTOUT como 1 usando seu shell favorito. -Leia mais sobre a telemetria das ferramentas do .NET Core em https://aka.ms/dotnet-cli-telemetry. +As ferramentas do .NET Core coletam dados de uso para melhorar sua experiência. Os dados são anônimos e não incluem argumentos da linha de comando. Os dados são coletados pela Microsoft e compartilhados com a comunidade. +Você pode sair da telemetria configurando uma variável de ambiente DOTNET_CLI_TELEMETRY_OPTOUT para 1 usando seu shell favorito. +Você pode ler mais sobre a telemeria de ferramentas do .NET Core em https://aka.ms/dotnet-cli-telemetry. Configurando... ------------------- -Um comando está sendo executado para popular inicialmente o cache do pacote local, a fim de melhorar a velocidade de restauração e habilitar o acesso offline. Esse comando levará até um minuto para ser concluído e só ocorrerá uma vez. +Um comando está sendo executado para preencher inicialmente seu cache de pacote local, para melhorar a velocidade de restauração e permitir acesso offline. Esse comando levará um minuto para ser concluído e acontecerá somente uma vez. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf index 6652487d0..618c4dc13 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.ru.xlf @@ -17,19 +17,19 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - Добро пожаловать в .NET Core! + Вас приветствует .NET Core! --------------------- -Дополнительные сведения о .NET Core можно получить по адресу https://aka.ms/dotnet-docs. Для просмотра доступных команд используйте dotnet --help или перейдите на страницу https://aka.ms/dotnet-cli-docs. +Дополнительные сведения о .NET Core: https://aka.ms/dotnet-docs. Используйте dotnet --help, чтобы просмотреть доступные команды, или перейдите на сайт https://aka.ms/dotnet-cli-docs. Телеметрия -------------- -Средства .NET Core собирают данные об использовании для улучшения взаимодействия с пользователем. Эти данные анонимны и не включают в себя аргументы командной строки. Сбор данных осуществляется корпорацией Майкрософт, которая предоставляет их сообществу. -Вы можете явно отказаться от телеметрии, присвоив переменной среды DOTNET_CLI_TELEMETRY_OPTOUT значение 1 с помощью предпочитаемой оболочки. -Дополнительные сведения о телеметрии в средствах .NET Core см. по адресу https://aka.ms/dotnet-cli-telemetry. +Средства .NET Core собирают данные об использовании для повышения качества взаимодействия. Данные анонимны и не включают аргументы командной строки. Данные собирает корпорация Майкрософт и предоставляет их сообществу. +Вы можете отказаться от телеметрии, задав переменную среды DOTNET_CLI_TELEMETRY_OPTOUT равной 1, используя предпочитаемую оболочку. +Вы можете подробнее ознакомиться со средствами сбора телеметрии .NET Core: https://aka.ms/dotnet-cli-telemetry. -Настройка... +Идет настройка... ------------------- -Выполняется команда для изначального заполнения локального кэша пакетов, повышения скорости восстановления и обеспечения автономного доступа. Ее выполнение может занять до одной минуты и имеет единоразовый характер. +Выполняется команда начального заполнения локального кэша пакетов для повышения скорости восстановления и обеспечения автономного доступа. Это займет около минуты; команда выполняется только один раз. diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf index be00d4a98..eeefbb856 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hans.xlf @@ -17,19 +17,19 @@ You can read more about .NET Core tools telemetry @ https://aka.ms/dotnet-cli-te Configuring... ------------------- A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. - 欢迎使用 .NET Core! + 欢迎使用 .NET Core! --------------------- -访问 https://aka.ms/dotnet-docs,可了解有关 .NET Core 的详细信息。使用 dotnet --help 查看可用命令,或转到 https://aka.ms/dotnet-cli-docs。 +若要详细了解 .NET Core,请访问 https://aka.ms/dotnet-docs。使用 dotnet --help 查看可用的命令或转到 https://aka.ms/dotnet-cli-docs。 遥测 -------------- -.NET Core 工具收集使用数据以改善用户体验。数据是匿名的,不包括命令行参数。数据由 Microsoft 收集并与社区共享。 -可使用你青睐的 shell 将 DOTNET_CLI_TELEMETRY_OPTOUT 环境变量设置为 1,选择停止遥测。 -可访问 https://aka.ms/dotnet-cli-telemetry,阅读有关 .NET Core 工具遥测的详细信息。 +.NET Core 收集使用情况数据,以便改善用户体验。数据是匿名的且不包含命令行参数。数据由 Microsoft 收集,并与社区共享。 +可选择使用你最喜爱的 shell 将 DOTNET_CLI_TELEMETRY_OPTOUT 环境变量设置为 1,从而退出遥测。 +若要深入了解 .NET Core 工具遥测,请访问 https://aka.ms/dotnet-cli-telemetry。 正在配置... ------------------- -正在运行命令以初始填充本地软件包缓存、提高还原速度并启用脱机访问。此命令将需要一分钟时间完成,只会运行一次。 +正在运行一项命令,以初步填充本地包缓存,从而提高还原速度并启用脱机访问。此命令最长需要一分钟才能完成,且仅可运行一次。 diff --git a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf index e3e7cf0b6..deeab71c0 100644 --- a/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.Configurer/xlf/LocalizableStrings.zh-Hant.xlf @@ -19,22 +19,22 @@ Configuring... A command is running to initially populate your local package cache, to improve restore speed and enable offline access. This command will take up to a minute to complete and will only happen once. 歡迎使用 .NET Core! --------------------- -深入了解 .NET Core @ https://aka.ms/dotnet-docs。使用 dotnet --help 查看可用的命令,或前往 https://aka.ms/dotnet-cli-docs。 +前往 https://aka.ms/dotnet-docs 深入了解 .NET Core。使用 dotnet --help 查看可用的命令,或前往 https://aka.ms/dotnet-cli-docs。 遙測 -------------- -.NET Core 工具會收集使用方式資料以改善您的體驗。資料為匿名且不含命令列引數。資料由 Microsoft 收集並與社群共用。 -您可選擇退出遙測,方法是使用您慣用的殼層將 DOTNET_CLI_TELEMETRY_OPTOUT 環境變數設為 1。 -您可深入閱讀 .NET Core 工具遙測 @ https://aka.ms/dotnet-cli-telemetry。 +.NET Core 工具會收集使用方式資料,以改進您的體驗。資料為匿名性質,而且不會包含命令列引數。資料由 Microsoft 收集,並與社群共用。 +您可以退出宣告遙測,方法是使用您慣用的殼層,將 DOTNET_CLI_TELEMETRY_OPTOUT 環境變數設為 1。 +前往 https://aka.ms/dotnet-cli-telemetry 可以深入了解 .NET Core 工具遙測。 正在設定... ------------------- -正在執行命令以初始將您的本機套件快取填入,進而改善還原速度並啟用離線存取。此命令最多需要一分鐘完成,且只會進行一次。 +正在執行命令以初步填入您的本機套件快取,從而提升還原速度並允許離線存取。此命令最多需要一分鐘的時間完成,而且只會發生一次。 Failed to create prime the NuGet cache. {0} failed with: {1} - 無法建立主要 NuGet 快取。{0} 失敗: {1} + 無法建立主要 NuGet 快取。{0} 失敗,發生: {1} diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf index 780ea0fd5..d9308d51d 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.cs.xlf @@ -10,7 +10,7 @@ Cannot merge metadata with the same name and different values - Metadata se stejným názvem ale různými hodnotami nejdou sloučit. + Metadata se stejným názvem, ale různými hodnotami nejdou sloučit. diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf index 49a299535..3753619b0 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.de.xlf @@ -40,7 +40,7 @@ {0} already exists. Has migration already been run? - {0} ist bereits vorhanden. Wurde die Migration bereits ausgeführt? + "{0}" ist bereits vorhanden. Wurde die Migration bereits ausgeführt? @@ -60,7 +60,7 @@ Cannot merge items without a common include. - Zusammenführen von Elementen ohne gemeinsames „Include“ nicht möglich. + Zusammenführen von Elementen ohne gemeinsames "Include" nicht möglich. @@ -90,7 +90,7 @@ The project.json specifies no target frameworks in {0} - Die „project.json“ gibt keine Zielframeworks in {0} an. + Die "project.json" gibt keine Zielframeworks in {0} an. @@ -220,7 +220,7 @@ {0}: imports transform null for {1} - {0}: Importiert „Transform NULL“ für {1}. + {0}: Importiert "Transform NULL" für {1}. diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf index e06c7f8aa..7c1fd5e3c 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.es.xlf @@ -15,7 +15,7 @@ {0}: No xproj file given. - {0}: no se proporcionó archivo xproj. + {0}: No se proporcionó archivo xproj. @@ -40,7 +40,7 @@ {0} already exists. Has migration already been run? - {0} ya existe. ¿Ya se ejecutó la migración? + '{0}' ya existe. ¿Ya se ejecutó la migración? diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf index 9738ff2ed..c780adf0a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.fr.xlf @@ -15,7 +15,7 @@ {0}: No xproj file given. - {0} : aucun fichier xproj fourni. + {0} : Aucun fichier xproj fourni. diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf index ef10a2596..a7073fe9a 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ja.xlf @@ -15,7 +15,7 @@ {0}: No xproj file given. - {0}: xproj ファイルが指定されていません。 + {0}:xproj ファイルが指定されていません。 @@ -40,7 +40,7 @@ {0} already exists. Has migration already been run? - {0} は既に存在します。既に移行を実行しましたか? + '{0}' は既に存在します。既に移行を実行しましたか? @@ -190,12 +190,12 @@ {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: メタデータを {1} アイテムに追加しています: {{ {2}, {3}, {4} }} + {0}:メタデータを {1} アイテムに追加しています: {{ {2}, {3}, {4} }} {0}: Skip migrating {1}, it is already migrated. - {0}: {1} の移行をスキップします。既に移行されています。 + {0}:{1} の移行をスキップします。既に移行されています。 @@ -205,7 +205,7 @@ {0}: No configuration or framework build options found in project - {0}: プロジェクトに構成またはフレームワーク ビルド オプションが見つかりません + {0}:プロジェクトに構成またはフレームワーク ビルド オプションが見つかりません @@ -225,37 +225,37 @@ {0}: Migrating {1} xproj to csproj references - {0}: {1} xproj を csproj 参照に移行しています + {0}:{1} xproj を csproj 参照に移行しています {0}: Executing migration rule {1} - {0}: 移行ルール {1} を実行しています + {0}:移行ルール {1} を実行しています {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: アイテム {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4}、更新: {5} }} + {0}:アイテム {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4}、更新: {5} }} {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ 条件: {1} }} + {0}:ItemGroup {{ 条件: {1} }} {0}: Item completely merged - {0}: アイテムが完全にマージされました + {0}:アイテムが完全にマージされました {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4}、更新: {5} }} + {0}:AddItemToItemGroup {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4}、更新: {5} }} {0}: Merging Item with {1} existing items with a different condition chain. - {0}: 別の条件チェーンで、アイテムを \ {1 \} 個の既存のアイテムとマージしています。 + {0}:別の条件チェーンで、アイテムを \ {1 \} 個の既存のアイテムとマージしています。 @@ -265,22 +265,22 @@ {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: アイテムを削除しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} + {0}:アイテムを削除しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: アイテムを無視しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} + {0}:アイテムを無視しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} {0}: Merging Item with {1} existing items with the same condition chain. - {0}: 同じ条件チェーンで、アイテムを \ {1 \} 個の既存のアイテムとマージしています。 + {0}:同じ条件チェーンで、アイテムを \ {1 \} 個の既存のアイテムとマージしています。 {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: マージしたアイテムを追加しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} + {0}:マージしたアイテムを追加しています {{アイテムの種類: {1}、条件: {2}、含有: {3}、除外: {4} }} diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf index 086f929c4..1edfba4aa 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.pt-BR.xlf @@ -40,7 +40,7 @@ {0} already exists. Has migration already been run? - {0} já existe. A migração já foi executada? + O {0} já existe. A migração já foi executada? @@ -265,12 +265,12 @@ {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removendo Item {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4} }} + {0}: Removendo Item {{ ItemType: {1}, Condição {2\}, Incluir: {3}, Excluir: {4} }} {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignorando Item {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4} }} + {0}: Ignorando Item {{ ItemType: {1}, Condição {2\}, Incluir: {3}, Excluir: {4} }} @@ -280,7 +280,7 @@ {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adicionando Item Mesclado {{ ItemType: {1}, Condição: {2}, Incluir: {3}, Excluir: {4} }} + {0}: Adicionando Item Mesclado {{ ItemType: {1}, Condição {2\}, Incluir: {3}, Excluir: {4} }} diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf index 9527e4d4a..5837613e1 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.ru.xlf @@ -15,12 +15,12 @@ {0}: No xproj file given. - {0}: не указан файл XPROJ. + {0}: {0}: не указан XPROJ-файл. Multiple xproj files found in {0}, please specify which to use - В {0} найдено несколько файлов XPROJ, выберите один из них. + В {0} найдено несколько XPROJ-файлов, выберите один из них. @@ -45,7 +45,7 @@ expected destinationElement to not be null - ожидается отличное от NULL значение destinationElement + Ожидается отличное от NULL значение destinationElement @@ -220,7 +220,7 @@ {0}: imports transform null for {1} - {0}: импорты преобразуют значение NULL для {1}. + {0}: импорты преобразуют значение NULL для {1} @@ -245,7 +245,7 @@ {0}: Item completely merged - {0}: элемент полностью объединен. + {0}: элемент полностью объединен diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf index bde8c67a3..0736bf4dc 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hans.xlf @@ -40,7 +40,7 @@ {0} already exists. Has migration already been run? - {0} 已存在。是否已运行迁移? + {0} 已存在。是否已运行迁移? @@ -185,7 +185,7 @@ {0}.{1} metadata has another value {{ {2} {3} {4} }} - {0}.{1} 元数据具有另外一个值 {{ {2} {3} {4} }} + {0}.{1} 元数据具有另一个值 {{ {2} {3} {4} }} @@ -195,7 +195,7 @@ {0}: Skip migrating {1}, it is already migrated. - {0}: 跳过迁移 {1},已迁移该项。 + {0}: 跳过迁移 {1},因为该项已经迁移。 @@ -235,7 +235,7 @@ {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}: 项 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} @@ -245,7 +245,7 @@ {0}: Item completely merged - {0}: 完全合并的项 + {0}: 已完全合并项 @@ -265,12 +265,12 @@ {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: 删除项 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: 忽略项 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} @@ -280,12 +280,12 @@ {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}: 添加合并的项 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} Merging property, output merged property - 将合并属性,输出合并的属性 + 合并属性,输出合并的属性 diff --git a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf index 94ae568bf..3db3940e0 100644 --- a/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/Microsoft.DotNet.ProjectJsonMigration/xlf/LocalizableStrings.zh-Hant.xlf @@ -10,17 +10,17 @@ Cannot merge metadata with the same name and different values - 無法使用相同名稱及不同值合併中繼資料 + 無法合併名稱相同但值不同的中繼資料 {0}: No xproj file given. - {0}: 沒有指定的 xproj 檔案。 + {0}:未指定 xproj 檔案。 Multiple xproj files found in {0}, please specify which to use - {0} 中找到多個 xproj 檔案,請指定要使用的檔案 + 在 {0} 中找到多個 xproj 檔案,請指定要使用的檔案 @@ -40,7 +40,7 @@ {0} already exists. Has migration already been run? - {0} 已存在。是否已執行移轉? + {0} 已經存在。是否已執行移轉? @@ -190,12 +190,12 @@ {0}: Adding metadata to {1} item: {{ {2}, {3}, {4} }} - {0}: 正在將中繼資料新增至 {1} 項目: {{ {2}, {3}, {4} }} + {0}:正在將中繼資料新增至 {1} 項目: {{ {2}, {3}, {4} }} {0}: Skip migrating {1}, it is already migrated. - {0}: 跳過移轉 {1},其已移轉過。 + {0}:跳過移轉 {1},其已移轉過。 @@ -205,7 +205,7 @@ {0}: No configuration or framework build options found in project - {0}: 專案中找不到組態或架構建置選項 + {0}:在專案中找不到組態或架構建置選項 @@ -225,37 +225,37 @@ {0}: Migrating {1} xproj to csproj references - {0}: 正在將 {1} xproj 移轉至 csproj 參考 + {0}:正在將 {1} xproj 移轉至 csproj 參考 {0}: Executing migration rule {1} - {0}: 正在執行移轉規則 {1} + {0}:正在執行移轉規則 {1} {0}: Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: 項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}:項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} {0}: ItemGroup {{ Condition: {1} }} - {0}: ItemGroup {{ Condition: {1} }} + {0}:ItemGroup {{ Condition: {1} }} {0}: Item completely merged - {0}: 項目已完整合併 + {0}:項目已完整合併 {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} - {0}: AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} + {0}:AddItemToItemGroup {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4}, Update: {5} }} {0}: Merging Item with {1} existing items with a different condition chain. - {0}: 正在合併具 {1} 個現有項目的項目與其他條件鏈結。 + {0}:正在合併具 {1} 個現有項目的項目與其他條件鏈結。 @@ -265,22 +265,22 @@ {0}: Removing Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: 正在移除項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}:正在移除項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} {0}: Ignoring Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: 正在略過項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}:正在略過項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} {0}: Merging Item with {1} existing items with the same condition chain. - {0}: 正在合併具 {1} 個現有項目的項目與相同條件鏈結。 + {0}:正在合併具 {1} 個現有項目的項目與相同條件鏈結。 {0}: Adding Merged Item {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} - {0}: 正在新增合併的項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} + {0}:正在新增合併的項目 {{ ItemType: {1}, Condition: {2}, Include: {3}, Exclude: {4} }} diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf index 075a7a56c..7b5f25b1f 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.de.xlf @@ -5,22 +5,22 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - Das letzte Argument „{0}“ akzeptiert mehrere Werte. Es kann kein weiteres Argument mehr hinzugefügt werden. + Das letzte Argument "{0}" akzeptiert mehrere Werte. Es kann kein weiteres Argument hinzugefügt werden. Unexpected value '{0}' for option '{1}' - Unerwarteter Wert „{0}“ für Option „{1}“. + Unerwarteter Wert "{0}" für Option "{1}". Unrecognized {0} '{1}' - Nicht erkannt: {0} „{1}“ + Nicht erkannt: {0} "{1}" Response file '{0}' doesn't exist. - Antwortdatei „{0}“ ist nicht vorhanden. + Antwortdatei "{0}" ist nicht vorhanden. @@ -35,7 +35,7 @@ Specify --{0} for a list of available options and commands. - Geben Sie „--{0}“ für eine Liste verfügbarer Optionen und Befehle an. + Geben Sie "--{0}" für eine Liste verfügbarer Optionen und Befehle an. @@ -100,7 +100,7 @@ Use "{0} [command] --help" for more information about a command. - Verwenden Sie „{0} [Befehl] --help“, um weitere Informationen zu einem Befehl zu erhalten. + Verwenden Sie "{0} [Befehl] --help", um weitere Informationen zu einem Befehl zu erhalten. @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Alle zusätzlichen Optionen, die MSBuild übergeben werden sollen. Verfügbare Optionen siehe „dotnet msbuild -h“. + Alle zusätzlichen Optionen, die MSBuild übergeben werden sollen. Verfügbare Optionen siehe "dotnet msbuild -h". diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf index 365b47591..7f372cd03 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.es.xlf @@ -5,7 +5,7 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - El último argumento "{0}" acepta varios valores. No se pueden agregar más argumentos. + El último argumento '{0}' acepta varios valores. No se pueden agregar más argumentos. @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Toda opción adicional que se debe pasar a MSBuild. Consulte "dotnet msbuild -h" para ver las opciones disponibles. + Cualquier opción adicional que se deba pasar a MSBuild. Consulte 'dotnet msbuild -h' para conocer las opciones disponibles. diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf index 64ae67107..d254eace8 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.ja.xlf @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - MSBuild に渡す必要があるすべての追加オプション。利用可能なオプションについては、'dotnet msbuild -h' を参照してください。 + MSBuild に渡す必要があるすべての追加オプション。利用可能なオプションについては、'dotnet msbuild -h' をご覧ください。 diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf index 286e4f434..a0d50325d 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.pt-BR.xlf @@ -5,7 +5,7 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - O último argumento '{0}' aceita vários valores. Nenhum outro argumento pode ser adicionado. + O último argumento '{0}' aceita múltiplos valores. Nenhum outro argumento pode ser adicionado. @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - As opções extras que devem ser passadas para o MSBuild. Consulte 'dotnet msbuild -h' para obter as opções disponíveis. + Quaisquer opções extra que devam ser transmitidas para o MSBuild. Consulte 'dotnet msbuild -h' para obter opções disponíveis. diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf index fcc603109..142fb1f57 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.ru.xlf @@ -5,7 +5,7 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - Последний аргумент "{0}" принимает несколько значений. Добавить дополнительные аргументы нельзя. + Последний аргумент {0} принимает несколько значений. Дополнительные аргументы добавить невозможно. @@ -100,7 +100,7 @@ Use "{0} [command] --help" for more information about a command. - Используйте "{0} [команда] --help" для получения дополнительной информации о команде. + Используйте синтаксис "{0} [команда] --help" для получения дополнительной информации о команде. @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - Все дополнительные параметры, которые следует передать в MSBuild. Для получения сведений о доступных параметрах см. "dotnet msbuild -h". + Все дополнительные параметры, которые следует передать в MSBuild. Доступные параметры: dotnet msbuild -h diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf index 1db9330f9..988d28c1b 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.tr.xlf @@ -5,7 +5,7 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - Son bağımsız değişken ('{0}') birden çok değer kabul ediyor. Daha fazla bağımsız değişken eklenemez. + Son bağımsız değişken ('{0}') birden çok değer kabul eder. Daha fazla bağımsız değişken eklenemez. @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - MSBuild’e geçirilmesi gereken ek seçenekler. Kullanılabilir seçenekler için bkz. 'dotnet msbuild -h'. + MSBuild’e geçirilmesi gereken ek seçenekler. Kullanılabilir seçenekler için 'dotnet msbuild -h' komutunu kullanın. diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf index f13c070ad..c9010022f 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,7 +5,7 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - 最后一个参数“{0}”接受多个值。不能再添加任何参数。 + 最后一个参数“{0}”接受多个值。无法再添加其他参数。 @@ -40,7 +40,7 @@ Usage: - 使用情况: + 使用情况: @@ -60,7 +60,7 @@ Arguments: - 参数: + 参数: @@ -75,7 +75,7 @@ Options: - 选项: + 选项: @@ -90,7 +90,7 @@ Commands: - 命令: + 命令: @@ -115,7 +115,7 @@ Additional Arguments: - 附加参数: + 附加参数: @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - 应传递到 MSBuild 的任何额外选项。请参阅“dotnet msbuild -h”以了解可用选项。 + 任何应该传递给 MSBuild 的额外选项。有关可用的选项,请参阅“dotnet msbuild -h”。 diff --git a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf index 281fc7280..2e3093876 100644 --- a/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/CommandLine/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,12 +5,12 @@ The last argument '{0}' accepts multiple values. No more argument can be added. - 最後一個引數 '{0}' 接受多個值。無法再新增更多引數。 + 最後一個引數 '{0}' 接受多個值。無法新增其他值。 Unexpected value '{0}' for option '{1}' - 選項 '{1}' 有未預期的值 '{0}' + 選項 '{1}' 有非預期的值 '{0}' @@ -105,7 +105,7 @@ [args] - [args] + [引數] @@ -140,7 +140,7 @@ Any extra options that should be passed to MSBuild. See 'dotnet msbuild -h' for available options. - 應傳遞至 MSBuild 的任何其他選項。如需可用的選項,請參閱 'dotnet msbuild -h'。 + 任何應傳遞給 MSBuild 的額外選項。查看 'dotnet msbuild -h' 以得知可用的選項。 diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf index 1713260a4..46213a706 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.cs.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Příkaz rozhraní .NET pro přidání odkazu na balíček + Command to add package reference - Command to add package reference - + Příkaz pro přidání odkazu na balíček + Package references to add - Package references to add - + Odkazy na balíčky k přidání + Please specify one package reference to add. - Please specify one package reference to add. - + Zadejte prosím jeden odkaz na balíček, který chcete přidat. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Přidat odkaz jen při zaměření na určitou platformu + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Přidá odkaz bez provedení náhledu obnovení a kontroly kompatibility. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Určete konkrétní zdroje balíčků NuGet, které se mají použít při obnovení. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Obnoví balíčky do tohoto adresáře. + Version for the package to be added. - Version for the package to be added. - + Verze balíčku, která se má přidat. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Není možné vytvořit grafický soubor závislostí pro projekt {0}. Nejde přidat odkaz na balíček. + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf index c7efa4b01..7bc4f9156 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.de.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + .NET Add-Befehl für Paketverweise + Command to add package reference - Command to add package reference - + Befehl zum Hinzufügen eines Paketverweises + Package references to add - Package references to add - + Hinzuzufügende Paketverweise + Please specify one package reference to add. - Please specify one package reference to add. - + Geben Sie einen Paketverweis an, der hinzugefügt werden soll. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Verweis nur bei Verwendung eines bestimmten Zielframeworks hinzufügen + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Fügt einen Verweis hinzu, ohne dass eine Wiederherstellungsvorschau oder eine Kompatibilitätsprüfung durchgeführt wird. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Gibt spezifische NuGet-Paketquellen für die Wiederherstellung an. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Stellt die Pakete in diesem Verzeichnis wieder her. + Version for the package to be added. - Version for the package to be added. - + Version für das Paket, das hinzugefügt werden soll. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Die Abhängigkeitsdiagrammdatei für das Projekt "{0}" konnte nicht wiederhergestellt werden. Der Paketverweis kann nicht hinzugefügt werden. + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf index ceafa595a..dfe725df3 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.es.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Comando de .NET para agregar referencia de paquete + Command to add package reference - Command to add package reference - + Comando para agregar referencia de paquete + Package references to add - Package references to add - + Referencias de paquete para agregar + Please specify one package reference to add. - Please specify one package reference to add. - + Especifique una referencia de paquete para agregar. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Se agrega una referencia solo cuando hay una plataforma de destino específica + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Agregue una referencia sin realizar la vista previa de restauración y la comprobación de compatibilidad. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Use orígenes de un paquete NuGet para usarlo durante la restauración. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Restaurar los paquetes en este directorio. + Version for the package to be added. - Version for the package to be added. - + Versión del paquete que se va a agregar. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + No se puede crear el archivo de gráfico de dependencias para el proyecto '{0}'. No se puede agregar la referencia de paquete. + VERSION - VERSION - + VERSIÓN + FRAMEWORK - FRAMEWORK - + PLATAFORMA + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + DIRECTORIO_DE_PAQUETE + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf index 74673dab4..15ca8160d 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.fr.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Commande Ajouter une référence de package .NET + Command to add package reference - Command to add package reference - + Commande permettant d'ajouter une référence de package + Package references to add - Package references to add - + Références de package à ajouter + Please specify one package reference to add. - Please specify one package reference to add. - + Spécifiez au moins une référence de package à ajouter. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Ajouter une référence uniquement en cas de ciblage d'un framework spécifique + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Ajoutez une référence sans effectuer de prévisualisation de la restauration et de vérification de la compatibilité. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Utilisez les sources de package NuGet spécifiques pendant la restauration. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Restaurez les packages dans ce répertoire. + Version for the package to be added. - Version for the package to be added. - + Version du package à ajouter. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Impossible de créer le fichier de graphique de dépendance pour le projet '{0}'. Impossible d'ajouter une référence de package. + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf index 54458d510..01156d8a5 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.it.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Comando Aggiungi riferimento al pacchetto .NET + Command to add package reference - Command to add package reference - + Comando per aggiungere il riferimento al pacchetto + Package references to add - Package references to add - + Riferimenti al pacchetto da aggiungere + Please specify one package reference to add. - Please specify one package reference to add. - + Specificare almeno un riferimento al pacchetto da aggiungere. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Aggiunge il riferimento solo se destinato a un framework specifico + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Aggiunge il riferimento senza eseguire l'anteprima di restore e la verifica della compatibilità. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Consente di specificare le origini pacchetto NuGet da usare durante il ripristino. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Consente di ripristinare i pacchetti in questa directory. + Version for the package to be added. - Version for the package to be added. - + Versione del pacchetto da aggiungere. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Non è possibile creare il file del grafico dipendenze per il progetto '{0}'. Non è possibile aggiungere il riferimento al pacchetto. + VERSION - VERSION - + VERSIONE + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + ORIGINE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + DIRECTORY_PACCHETTO + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf index 404f46203..d7df49f70 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ja.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + .NET Add Package 参照コマンド + Command to add package reference - Command to add package reference - + パッケージ参照を追加するコマンド + Package references to add - Package references to add - + 追加するパッケージ参照 + Please specify one package reference to add. - Please specify one package reference to add. - + 追加するパッケージ参照を 1 つ指定してください。 + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + 特定のフレームワークを対象とする場合にのみ参照を追加する + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + 復元のプレビューや互換性チェックを行わずに参照を追加します。 + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + 復元中には特定の NuGet パッケージ ソースを使用します。 + Restore the packages to this Directory . - Restore the packages to this Directory . - + パッケージをこのディレクトリに復元します。 + Version for the package to be added. - Version for the package to be added. - + 追加するパッケージのバージョン。 + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + プロジェクト '{0}' の依存関係グラフ ファイルを作成できません。パッケージ参照を追加できません。 + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf index 3a3695042..e0988549e 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ko.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + .NET 패키지 참조 추가 명령 + Command to add package reference - Command to add package reference - + 패키지 참조를 추가하는 명령 + Package references to add - Package references to add - + 추가할 패키지 참조 + Please specify one package reference to add. - Please specify one package reference to add. - + 추가할 하나의 패키지 참조를 지정하세요. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + 특정 프레임워크를 대상으로 지정할 때에만 참조를 추가합니다. + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + 미리 보기 복원 및 호환성 검사를 수행하지 않고 참조를 추가합니다. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + 복원 중 사용할 특정 NuGet 패키지 소스를 사용합니다. + Restore the packages to this Directory . - Restore the packages to this Directory . - + 패키지를 이 디렉터리에 복원합니다. + Version for the package to be added. - Version for the package to be added. - + 추가할 패키지의 버전입니다. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + '{0}' 프로젝트에 대한 종속성 그래프 파일을 만들 수 없습니다. 패키지 참조를 추가할 수 없습니다. + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf index a01384c4d..33e240e00 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pl.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Polecenie dodawania odwołania do pakietu platformy .NET + Command to add package reference - Command to add package reference - + Polecenie umożliwiające dodanie odwołania do pakietu + Package references to add - Package references to add - + Odwołania do pakietów, które mają zostać dodane + Please specify one package reference to add. - Please specify one package reference to add. - + Podaj jedno odwołanie do pakietu, które ma zostać dodane. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Dodaj odwołanie tylko w przypadku określenia konkretnej platformy docelowej + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Dodaj odwołanie bez tworzenia podglądu przywracania i sprawdzania zgodności. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Użyj konkretnych źródeł pakietów NuGet podczas przywracania. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Przywróć pakiety do tego katalogu. + Version for the package to be added. - Version for the package to be added. - + Wersja pakietu do dodania. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Nie można utworzyć pliku wykresu tworzenia zależności dla projektu „{0}”. Nie można dodać odwołania do pakietu. + VERSION - VERSION - + WERSJA + FRAMEWORK - FRAMEWORK - + PLATFORMA + SOURCE - SOURCE - + ŹRÓDŁO + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + KATALOG_PAKIETU + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf index 1cf99b28f..cc564117f 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.pt-BR.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Comando de adicionar referência do pacote do .NET + Command to add package reference - Command to add package reference - + Comando para adicionar a referência do pacote + Package references to add - Package references to add - + Referências do pacote a serem adicionadas + Please specify one package reference to add. - Please specify one package reference to add. - + Especifique uma referência do pacote a ser adicionada. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Adicionar referência apenas ao visar uma estrutura específica + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Adicionar referência ser executar a restauração de visualização e verificação de compatibilidade. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Usa fontes de pacote do NuGet especificadas a serem usadas durante a restauração. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Restaurar os pacotes para esse Diretório. + Version for the package to be added. - Version for the package to be added. - + Versão do pacote a ser adicionada. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Não é possível criar o arquivo de gráfico Criar Dependência para o projeto '{0}'. Não é possível adicionar a referência do pacote. + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + ESTRUTURA + SOURCE - SOURCE - + ORIGEM + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf index 17de65921..14d5108fc 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.ru.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + Команда добавления ссылки на пакет .NET + Command to add package reference - Command to add package reference - + Команда добавления ссылки на пакет + Package references to add - Package references to add - + Добавляемые ссылки на пакеты + Please specify one package reference to add. - Please specify one package reference to add. - + Укажите одну добавляемую ссылку на пакет. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Добавлять ссылку только при выборе конкретной целевой платформы + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Добавление ссылки без предварительной проверки восстановления и совместимости. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Указание конкретных источников пакетов NuGet, используемых во время восстановления. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Восстановление пакетов в указанном каталоге. + Version for the package to be added. - Version for the package to be added. - + Версия добавляемого пакета. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + Не удалось создать файл графа зависимостей для проекта {0}. Невозможно добавить ссылку на пакет. + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf index ea4f72f25..9ad58f591 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.tr.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + .NET Paket Başvurusu Ekleme Komutu + Command to add package reference - Command to add package reference - + Paket başvurusu ekleme komutu + Package references to add - Package references to add - + Eklenecek paket başvuruları + Please specify one package reference to add. - Please specify one package reference to add. - + Lütfen eklenecek paket başvurusunu belirtin. + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + Yalnızca belirli bir çerçeveyi hedeflerken başvuru ekler + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + Geri yükleme önizlemesi ve uyumluluk denetimi gerçekleştirmeden başvuru ekler. + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + Geri yükleme sırasında kullanılacak belirli NuGet paket kaynaklarını kullanır. + Restore the packages to this Directory . - Restore the packages to this Directory . - + Paketleri bu Dizine geri yükler. + Version for the package to be added. - Version for the package to be added. - + Eklenecek paketin sürümü. + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + '{0}' projesi için Bağımlılık grafiği dosyası oluşturulamadı. Paket başvurusu eklenemiyor. + VERSION - VERSION - + SÜRÜM + FRAMEWORK - FRAMEWORK - + ÇERÇEVE + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf index 50aa7f8bf..2b50715d9 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hans.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + .NET 添加包引用命令 + Command to add package reference - Command to add package reference - + 添加包引用的命令 + Package references to add - Package references to add - + 要添加的包引用 + Please specify one package reference to add. - Please specify one package reference to add. - + 请指定一个要添加的包引用。 + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + 仅针对特定框架添加引用 + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + 在没有执行还原预览和兼容性检查的情况下添加引用。 + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + 使用还原期间使用的特定 NuGet 包源。 + Restore the packages to this Directory . - Restore the packages to this Directory . - + 将包还原到此目录。 + Version for the package to be added. - Version for the package to be added. - + 要添加的包的版本。 + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + 无法为项目“{0}”创建依赖关系图文件。无法添加包引用。 + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf index ac0ee9423..52e90f9ab 100644 --- a/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-add/dotnet-add-package/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,73 +5,73 @@ .NET Add Package reference Command - .NET Add Package reference Command - + .NET 新增套件參考命令 + Command to add package reference - Command to add package reference - + 用以新增套件參考的命令 + Package references to add - Package references to add - + 要新增的套件參考 + Please specify one package reference to add. - Please specify one package reference to add. - + 請指定一個要新增的套件參考。 + Add reference only when targetting a specific framework - Add reference only when targetting a specific framework - + 只有在以特定架構為目標時才新增參考 + Add reference without performing restore preview and compatibility check. - Add reference without performing restore preview and compatibility check. - + 不須執行還原預覽及相容性檢查即可新增參考。 + Use specific NuGet package sources to use during the restore. - Use specific NuGet package sources to use during the restore. - + 使用要在還原期間使用的 NuGet 套件來源。 + Restore the packages to this Directory . - Restore the packages to this Directory . - + 將套件還原到此目錄。 + Version for the package to be added. - Version for the package to be added. - + 要新增的套件版本。 + Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - Unable to Create Dependency graph file for project '{0}'. Cannot add package reference. - + 無法建立專案 '{0}' 的相依性關係圖檔案。無法新增套件參考。 + VERSION - VERSION - + VERSION + FRAMEWORK - FRAMEWORK - + FRAMEWORK + SOURCE - SOURCE - + SOURCE + PACKAGE_DIRECTORY - PACKAGE_DIRECTORY - + PACKAGE_DIRECTORY + diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf index f32d21053..c2f97f3fb 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.de.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist "Debug". @@ -25,7 +25,7 @@ Target framework to build for. The target framework has to be specified in the project file. - Zielframework der Erstellung. Das Zielframework muss in der Projektdatei angegeben werden. + Zielframework für die Erstellung. Das Zielframework muss in der Projektdatei angegeben werden. diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf index fa5e9c508..403a21e6b 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.es.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + Configuración para usar para crear el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf index 50b27ccda..6fe3491c1 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ja.xlf @@ -10,12 +10,12 @@ .NET Builder - .NET Builder + .NET ビルダー Configuration to use for building the project. Default for most projects is "Debug". - プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + プロジェクトの構築に使用する構成。ほとんどのプロジェクトで既定は "デバッグ" です。 diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf index 0e130dfd8..3273e988f 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.pt-BR.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + A configuração a ser usada para criar o projeto. O padrão para a maioria dos projetos é “Depurar”. @@ -25,7 +25,7 @@ Target framework to build for. The target framework has to be specified in the project file. - Estrutura de destino na qual compilar. A estrutura de destino deve ser especificada no arquivo de projeto. + A estrutura de destino para a qual compilar. A estrutura de destino deve ser especificada no arquivo de projeto. diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf index c453f798a..263a23cf5 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.ru.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + Конфигурация, используемая для сборки проекта. Значение по умолчанию для большинства проектов — "Debug". @@ -25,7 +25,7 @@ Target framework to build for. The target framework has to be specified in the project file. - Целевая платформа сборки. Целевая платформа должна быть указана в файле проекта. + Целевая платформа для сборки. Целевая платформа должна быть указана в файле проекта. diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf index 9d6810f97..76f3dc686 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.tr.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan: "Debug". diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf index 4238addaf..5afa26c3d 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hans.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 用于生成项目的配置。大多数项目的默认值为“Debug”。 + 用于生成项目的配置。对大多数项目的默认值是 "Debug"。 @@ -25,7 +25,7 @@ Target framework to build for. The target framework has to be specified in the project file. - 生成的目标框架。必须在项目文件中指定目标框架。 + 要生成的目标框架。目标框架必须在项目文件中指定。 diff --git a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf index c3417a1cb..2fd8a2ff8 100644 --- a/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-build/xlf/LocalizableStrings.zh-Hant.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 建置專案用的組態。多數專案預設為 "Debug"。 + 要用於建置專案的組態。多數專案的預設為 "Debug"。 @@ -25,7 +25,7 @@ Target framework to build for. The target framework has to be specified in the project file. - 要為其建置的目標 Framework。其必須在專案檔中指定。 + 要對其建置的目標 Framework。目標 Framework 必須在專案檔中指定。 diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf index 891c62cfa..bf03d66c9 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.cs.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). Projekt {1} neobsahuje odkazy na {0}. -{0} je typ požadované položky (projekt, balíček, p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). +{0} je typ požadované položky (projekt, balíček, p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf index e87b18358..e150812fd 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.de.xlf @@ -16,8 +16,8 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - In Projekt „{1}“ liegen keine {0}-Verweise vor. -{0} ist der Typ des angeforderten Elements (Projekt, Paket, P2P) und „{1}“ das Objekt, an dem der Vorgang ausgeführt wird (eine Projekt- oder Projektmappendatei). + Das Projekt "{1}" enthält keine Verweise vom Typ "{0}". +"{0}" ist die Art des angeforderten Elements (Projekt, Paket, P2P). "{1}" ist das Objekt, für das ein Vorgang ausgeführt wird (eine Projektdatei oder eine Projektmappendatei). diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf index 6149687a4..670a38dd0 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.fr.xlf @@ -16,8 +16,8 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - Il n'existe aucune référence {0} dans le projet {1}. -{0} est le type de l'élément demandé (projet, package, p2p) et {1} est l'objet utilisé (fichier projet ou fichier solution). + Il n'y a pas de références {0} dans le projet {1}. +{0} est le type de l'élément demandé (projet, package, p2p) et {1} est l'objet utilisé (un fichier projet ou un fichier solution). diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf index 7cb883fdf..a355c356d 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ja.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). プロジェクト {1} 内に {0} 参照がありません。 -{0} は要求中のアイテムの種類 (プロジェクト、パッケージ、p2p) であり、{1} は操作対象のオブジェクト (プロジェクト ファイルまたはソリューション ファイル) です。 +{0} は要求中のアイテムの種類であり (プロジェクト、パッケージ、p2p)、{1} は操作されるオブジェクト (プロジェクト ファイルまたはソリューション ファイル) です。 diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf index 495ec3496..be1b8185f 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ko.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). {1} 프로젝트에 {0} 참조가 없습니다. -{0}은(는) 요청한 항목의 형식(프로젝트, 패키지, p2p)이고 {1}은(는) 작업 중인 개체(프로젝트 파일 또는 솔루션 파일)입니다. +{0}은(는) 요청한 항목의 형식(프로젝트, 패키지, p2p)이고 {1}은(는) 작업 중인 개체(프로젝트 파일 또는 솔루션 파일)입니다. diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf index 7ef7b8687..a158667af 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.pt-BR.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). Não há referências {0} no projeto {1}. -{0} é o tipo do item solicitado (projeto, pacote, p2p) e {1} é o objeto no qual ocorre a operação (um arquivo de projeto ou de solução). +O {0} é o tipo do item sendo solicitado (projeto, pacote, p2p) e {1} é o objeto no qual ocorre a operação (um arquivo de projeto ou um arquivo de solução). diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf index 97209b18d..3f71d8df0 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.ru.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). В проекте {1} нет ссылок {0}. -{0} — тип запрашиваемого элемента (проект, пакет, p2p), а {1} — обрабатываемый объект (файл проекта или решения). +{0} — тип запрашиваемого элемента (проект, пакет, p2p), а {1} — обрабатываемый объект (файл проекта или файл решения). diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf index 79661bbf3..b9ca3d0f1 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.tr.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). {1} projesinde {0} başvurusu yok. -{0}, istenen öğenin türü (proje, paket, p2p) ve {1}, üzerinde işlem yapılan nesnedir (bir proje dosyası veya çözüm dosyası). +{0}, istenen öğenin türüdür (proje, paket, p2p) ve {1}, üzerinde işlem yapılan nesnedir (proje dosyası veya çözüm dosyası). diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf index d54f343f8..382fd85e8 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hans.xlf @@ -17,7 +17,7 @@ There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). 项目 {1} 中没有 {0} 引用。 -{0} 是正在请求的项类型(项目、包、p2p),{1} 是项目文件或解决方案文件上操作的对象。 +{0} 是正在请求的项类型(项目、包、p2p)且 {1} 是在其上进行操作的对象(项目文件或解决方案文件)。 diff --git a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf index f13ec239e..8ab42602c 100644 --- a/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-list/dotnet-list-p2ps/xlf/LocalizableStrings.zh-Hant.xlf @@ -10,14 +10,14 @@ Command to list project to project (p2p) references - 命令,用以列出專案對專案 (p2p) 參考 + 用以列出專案對專案 (p2p) 參考的命令 There are no {0} references in project {1}. {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - 專案 {1} 中沒有任何 {0} 參考。 -{0} 是所要求項目的類型 (專案、套件、p2p),而 {1} 是操作的物件 (專案檔或方案檔)。 + 專案 {1} 中沒有 {0} 參考。 +{0} 是所要求項目的類型 (專案、套件、p2p),而 {1} 是操作的物件 (專案檔或方案檔)。 diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf index 103673fe2..d31200df9 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.cs.xlf @@ -25,12 +25,12 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Cesta k: - - Migrovanému souboru project.json - - Souboru global.json (Migrovat se budou složky zadané v souboru global.json.) - - Souboru solution.sln (Migrovat se budou projekty, na které odkazuje řešení.) - - Migrovanému adresáři (Rekurzivně vyhledá migrované soubory project.json.) -Výchozí hodnotou je aktuální adresář (pokud není zadaný jiný adresář). + Cesta k jednomu z následujících umístění: + - k migrovanému souboru project.json + - k souboru global.json (Migrovat se budou složky zadané v souboru global.json.) + - k souboru solution.sln (Migrovat se budou projekty odkazované v řešení.) + - k migrovanému adresáři (Rekurzivně vyhledá migrované soubory project.json.) +Výchozí hodnota je aktuální adresář (pokud není zadaný jiný adresář). diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf index 66b1065fd..37b94d6b7 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.de.xlf @@ -26,10 +26,10 @@ - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. Der Pfad zu einem der folgenden Elemente: - - einer zu migrierenden Datei vom Typ „project.json“. - - einer Datei vom Typ „global.json“. (Hierbei werden die in „global.json“ angegebenen Ordner migriert.) - - einer Datei vom Typ „solution.sln“. (Hierbei werden die Projekte migriert, auf die die Projektmappe verweist.) - - einem zu migrierenden Verzeichnis. (Hierbei wird rekursiv nach zu migrierenden Dateien vom Typ „project.json“ gesucht.) + – Datei vom Typ "project.json", die migriert werden soll + – Datei vom Typ "global.json", mit der die in "global.json" angegebenen Ordner migriert werden + – Datei vom Typ "solution.sln", mit der die in der Projektmappe referenzierten Projekte migriert werden + – Verzeichnis für die Migration, es wird rekursiv nach zu migrierenden Dateien vom Typ "project.json" gesucht Ohne Angabe wird standardmäßig das aktuelle Verzeichnis verwendet. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf index 389fe83cf..936a60347 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.es.xlf @@ -25,10 +25,10 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - La ruta de acceso a cada uno de los siguientes elementos: - - un archivo project.json para migrarlo, - - un archivo global.json; migra las carpetas especificadas en global.json, - - un archivo solution.sln; migra los proyectos a los que se hace referencia en la solución, + Ruta de acceso a uno de los siguientes valores: + - un archivo project.json para migrarlo; + - un archivo global.json; migra las carpetas especificadas en global.json; + - un archivo solution.sln; migra los proyectos a los que se hace referencia en la solución; - un directorio para migrar; busca archivos project.json de forma recursiva para migrarlos. Si no se especifica ninguno, usa el directorio actual de forma predeterminada. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf index 9e6503bef..04122aeb2 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.fr.xlf @@ -25,12 +25,12 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Chemin de l'un des éléments suivants : - - fichier project.json à faire migrer ; - - fichier global.json qui effectue la migration des dossiers spécifiés dans global.json ; - - fichier solution.sln qui effectue la migration des projets référencés dans la solution ; - - répertoire à faire migrer, où est effectuée une recherche récursive des fichiers project.json à faire migrer. -La valeur par défaut correspond au répertoire actif, si rien n'est spécifié. + Chemin vers l'une des valeurs suivantes : + - un fichier project.json à migrer. + - un fichier global.json (migre les dossiers spécifiés dans global.json). + - un fichier solution.sln (migre les projets référencés dans la solution). + - un répertoire à migrer (recherche de manière récursive les fichiers project.json à migrer). +Sélectionne par défaut le répertoire actif si rien n'est spécifié. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf index 5f1817f33..6772f8d8e 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.it.xlf @@ -26,10 +26,10 @@ - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. Percorso di uno degli elementi seguenti: - - file project.json di cui eseguire la migrazione. - - file global.json; verrà eseguita la migrazione delle cartelle specificate in global.json. + - un file project.json di cui eseguire la migrazione. + - un file global.json. Verrà eseguita la migrazione delle cartelle specificate in global.json. - file solution.sln; verrà eseguita la migrazione dei progetti cui viene fatto riferimento nella soluzione. - - directory di cui eseguire la migrazione; verrà eseguita la ricerca ricorsiva dei file project.json di cui eseguire la migrazione. + - una directory di cui eseguire la migrazione. Verrà eseguita la ricerca ricorsiva dei file project.json di cui eseguire la migrazione. Se non si specifica un valore, per impostazione predefinita, verrà usata la directory corrente. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf index ece30fecb..5d49440a2 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ja.xlf @@ -15,7 +15,7 @@ PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR - PROJECT_JSON/GLOBAL_JSON/PROJECT_DIR + PROJECT_JSON/GLOBAL_JSON/SOLUTION_FILE/PROJECT_DIR @@ -25,11 +25,11 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 次のいずれかへのパス: + 次のいずれかへのパスです。 - 移行する project.json ファイル。 - global.json ファイル。global.json に指定されているフォルダーを移行します。 - solution.sln ファイル。ソリューションで参照されているプロジェクトを移行します。 - - 移行するディレクトリ。移行する project.json ファイルを再帰的に検索します。 + - 移行するディレクトリ。移行する project.json ファイルを再帰的に検索します。 何も指定しない場合、既定は現在のディレクトリです。 diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf index 802228da1..960840da0 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ko.xlf @@ -25,7 +25,7 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 다음 중 하나의 경로입니다. + 다음 중 하나의 경로입니다. - 마이그레이션할 project.json 파일 - global.json 파일. global.json에 지정된 폴더를 마이그레이션합니다. - solution.sln 파일. 솔루션에서 참조된 프로젝트를 마이그레이션합니다. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf index f02ffe712..41d8b6fcf 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pl.xlf @@ -29,7 +29,7 @@ Defaults to current directory if nothing is specified. — Plik project.json, który ma zostać zmigrowany. — Plik global.json — zostaną zmigrowane foldery podane w tym pliku. — Plik solution.sln — zostaną zmigrowane projekty, do których istnieją odwołania w rozwiązaniu. - — katalog, który ma zostać zmigrowany — zostaną rekursywnie wyszukane pliki project.json do zmigrowania. + — Katalog, który ma zostać zmigrowany — zostaną rekursywnie wyszukane pliki project.json do zmigrowania. W przypadku braku podanej wartości domyślnie jest to bieżący katalog. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf index 70bb01288..5be044342 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.pt-BR.xlf @@ -27,10 +27,10 @@ Defaults to current directory if nothing is specified. O caminho para um dos seguintes: – um arquivo project.json a ser migrado. - – um arquivo global.json; ele migrará as pastas especificadas em global.json. - – um arquivo solution.sln; ele migrará os projetos referenciados na solução. - – um diretório a ser migrado; ele pesquisará recursivamente os arquivos project.json a serem migrados. -Usará o diretório atual como padrão se nenhuma opção for especificada. + – um arquivo global.json, ele migrará as pastas especificadas em global.json. + - um arquivo solution.sln, ele migrará os projetos referenciados na solução. + – um diretório para migrar, ele pesquisará recursivamente os arquivos project.json para migrar. +Usará como padrão o diretório atual se nada for especificado. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf index daea03a03..b787535a0 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.ru.xlf @@ -25,11 +25,11 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Путь к: - — переносимому файлу project.json; - — файлу global.json, выполняется миграция папок, указанных в файле global.json; - — файлу solution.sln, выполняется миграция проектов, на которые ссылается решение; - — переносимому каталогу, выполняется рекурсивный поиск файлов project.json для миграции. + Путь: + — к переносимому файлу project.json; + — файлу global.json; выполняется миграция папок, указанных в файле global.json; + — файлу solution.sln, перенос которого приведет к переносу проектов, указанных по ссылкам в решении; + — переносимому каталогу; выполняется рекурсивный поиск файлов project.json для миграции. По умолчанию применяется текущий каталог, если не указана другая папка. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf index 4f7e1c84d..82070bffc 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.tr.xlf @@ -25,10 +25,10 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - Aşağıdakilerden birinin yolu: + Aşağıdakilerden birinin yoludur: - geçirilecek project.json dosyası. - bir global.json dosyası; global.json içinde belirtilen klasörleri geçirir. - -bir solution.sln dosyası; çözümde başvurulan projeleri geçirir. + - bir solution.sln dosyası; çözümde başvurulan projeleri geçirir. - geçirilecek dizin; geçirilecek project.json dosyalarını yinelemeli olarak arar. Bir seçenek belirtilmezse, geçerli dizin varsayılan olarak kullanılır. diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf index ccff4ac0e..60428a99f 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hans.xlf @@ -25,11 +25,11 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 以下其中一项的路径: + 以下文件之一的路径: - 要迁移的 project.json 文件的路径。 - - global.json 文件,它将迁移 global.json 中指定的文件夹。 - - solution.sln 文件,它将迁移解决方案中引用的项目。 - - 要迁移的目录,它将递归搜索要迁移的 project.json文件。 + - global.json 文件的路径,它将迁移 global.json 中指定的文件夹。 + - solution.sln 文件的路径,它将迁移解决方案中引用的项目。 + - 要迁移的目录的路径,它将递归搜索要迁移的 project.json 文件。 如果未指定,则默认使用当前目录。 diff --git a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf index 0d397b43d..e2ca0ed5c 100644 --- a/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-migrate/xlf/LocalizableStrings.zh-Hant.xlf @@ -25,11 +25,11 @@ - a solution.sln file, it will migrate the projects referenced in the solution. - a directory to migrate, it will recursively search for project.json files to migrate. Defaults to current directory if nothing is specified. - 下列其中一項的路徑: - - - 要移轉的 project.json 檔案。 - - - global.json 檔案,將會移轉 global.json 中指定的資料夾。 - - solution.sln 檔案,將會移轉解決方案中參考的專案。 - - - 要移轉的目錄,將會遞迴搜尋要移轉的 project.json 檔案。 + 以下其中一項的路徑: + - 要移轉的 project.json 檔案。 + - global.json 檔案,將會移轉 global.json 中指定的資料夾。 + - solution.sln 檔案,將會移轉解決方案中參考的專案。 + - 要移轉的目錄,將會以遞迴方式搜尋要移轉的 project.json 檔案。 如果未指定任何項目,預設為目前的目錄。 diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf index 9459bf3c0..dd6280646 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.de.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Legen Sie den Ausführlichkeitsgrad des Befehls fest. Zulässige Werte sind „q[uiet]“ (still), „m[inimal]“, „n[ormal]“, „d[etailed]“ (ausführlich) und „diag[nostic]“ (Diagnose). + Legen Sie den Ausführlichkeitsgrad des Befehls fest. Zulässige Werte sind "q[uiet]" (keine Ausgabe), "m[inimal]", "n[ormal]", "d[etailed]" (ausführlich) und "diag[nostic]" (Diagnose). diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf index e86bb9f84..0737706c6 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ja.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - コマンドの詳細レベルを設定します。使用可能な値: q[uiet]、m[inimal]、n[ormal]、d[etailed]、および diag[nostic] + コマンドの詳細レベルを設定します。使用可能な値: q[uiet]、m[inimal]、n[ormal]、d[etailed]、diag[nostic] diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf index f34267e45..8abbb6247 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.ko.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - 명령의 세부 정보 수준을 설정합니다. 허용되는 값은 q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic]입니다. + 명령의 세부 정보 표시 수준을 설정합니다. 허용되는 값은 q[uiet], m[inimal], n[ormal], d[etailed] 및 diag[nostic]입니다. diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf index 3623de9d0..b5e7894ff 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.pt-BR.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Defina o nível de detalhes do comando. Os valores disponíveis são: q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic]. + Defina o nível de verbosidade do comando. Os valores permitidos são q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic] diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf index 42ac94307..268cbdcd2 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.tr.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - Komutun ayrıntı düzeyini ayarlayın. İzin verilen değerler q[uiet], m[inimal], n[ormal], d[etailed] ve diag[nostic] + Komutun ayrıntı düzeyini ayarlayın. İzin verilen değerler: q[uiet], m[inimal], n[ormal], d[etailed] ve diag[nostic] diff --git a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf index f69725561..91f5cce52 100644 --- a/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-msbuild/xlf/LocalizableStrings.zh-Hant.xlf @@ -5,7 +5,7 @@ Set the verbosity level of the command. Allowed values are q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] - 設定命令的詳細資訊層級。允許的值為 q[uiet]、m[inimal]、n[ormal]、d[etailed] 及diag[nostic] + 設定命令的詳細資訊層級。允許的值為 q[uiet]、m[inimal]、n[ormal]、d[etailed] 及 diag[nostic] diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf index dd0ed1cb5..ef71e2afd 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.cs.xlf @@ -25,7 +25,7 @@ Skip building the project prior to packing. By default, the project will be built. - Přeskočte sestavení projektu, dokud ho nezabalíte. Projekt bude sestaven automaticky. + Přeskočí sestavení projektu, dokud ho nezabalíte. Projekt se sestaví automaticky. @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf index 70d3d801e..cdc1660bf 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.de.xlf @@ -25,7 +25,7 @@ Skip building the project prior to packing. By default, the project will be built. - Projekt nicht vor dem Packen erstellen. Standardmäßig wird das Projekt erstellt. + Hiermit wird das Projekt nicht vor dem Packen erstellt. Standardmäßig wird das Projekt erstellt. @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist "Debug". @@ -55,12 +55,12 @@ Defines the value for the $(VersionSuffix) property in the project. - Definiert den Wert für die Eigenschaft „$(VersionSuffix)“ im Projekt. + Definiert den Wert für die Eigenschaft "$(VersionSuffix)" im Projekt. Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Verarbeitungsflag im Paket festlegen. Weitere Informationen finden Sie unter https://aka.ms/nupkgservicing. + Legt das Verarbeitungsflag im Paket fest. Weitere Informationen finden Sie unter https://aka.ms/nupkgservicing. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf index 8b5fb037e..ed0065af4 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.es.xlf @@ -25,7 +25,7 @@ Skip building the project prior to packing. By default, the project will be built. - Omita la compilación del proyecto antes de empaquetar. El proyecto se compilará de manera predeterminada. + Omitir la compilación del proyecto antes del empaquetado. De forma predeterminada, el proyecto se compilará. @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + Configuración para usar para crear el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf index 496ef913a..193d57e54 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.fr.xlf @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf index 56ede7b87..0f7a652d9 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.it.xlf @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf index 26287742a..f003ccbd0 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ja.xlf @@ -20,12 +20,12 @@ Directory in which to place built packages. - ビルド パッケージを配置するディレクトリ + ビルド パッケージを配置するディレクトリ。 Skip building the project prior to packing. By default, the project will be built. - パックする前にプロジェクトの構築をスキップします。プロジェクトは既定で構築されます。 + パッキングの前に、プロジェクトの構築をスキップします。既定では、プロジェクトは構築されます。 @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + プロジェクトの構築に使用する構成。ほとんどのプロジェクトで既定は "デバッグ" です。 @@ -60,7 +60,7 @@ Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - パッケージに処理可能なフラグを設定します。詳細については、https://aka.ms/nupkgservicing を参照してください。 + パッケージに処理可能なフラグを設定します。詳しくは、https://aka.ms/nupkgservicing をご覧ください。 diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf index 24be7781a..95cb88660 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ko.xlf @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf index 5edbf1243..0d18fc138 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pl.xlf @@ -30,7 +30,7 @@ Include packages with symbols in addition to regular packages in output directory. - Dołącz pakiety z symbolami oprócz regularnych pakietów w folderze wyjściowym. + Dołącz pakiety z symbolami oprócz regularnych pakietów w katalogu wyjściowym. @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf index 6032cfedd..d00f555ab 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.pt-BR.xlf @@ -25,7 +25,7 @@ Skip building the project prior to packing. By default, the project will be built. - Ignorar a compilação do projeto antes do empacotamento. Por padrão, o projeto será compilado. + Ignorar a compilação do projeto antes do pacote. Por padrão o nome do projeto será criado. @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + A configuração a ser usada para criar o projeto. O padrão para a maioria dos projetos é “Depurar”. @@ -60,7 +60,7 @@ Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Defina o sinalizador operacional no pacote. Para obter mais informações, consulte https://aka.ms/nupkgservicing. + Definir o sinalizador operacional no pacote. Para obter mais informações, consulte https://aka.ms/nupkgservicing. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf index 21f8a812d..8c3cf145b 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.ru.xlf @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + Конфигурация, используемая для сборки проекта. Значение по умолчанию для большинства проектов — "Debug". @@ -60,7 +60,7 @@ Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Установка флага "подлежит обслуживанию" в пакете. Дополнительные сведения см. на странице https://aka.ms/nupkgservicing. + Задать флаг "подлежит обслуживанию" в пакете. Дополнительные сведения: https://aka.ms/nupkgservicing. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf index 22040c49f..4da709be0 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.tr.xlf @@ -25,7 +25,7 @@ Skip building the project prior to packing. By default, the project will be built. - Projeyi paketlemeden önce derlemeyi atlayın. Varsayılan olarak, proje derlenir. + Paketlemeden önce projeyi derlemeyi atlayın. Varsayılan olarak, proje derlenir. @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan: "Debug". @@ -60,7 +60,7 @@ Set the serviceable flag in the package. For more information, please see https://aka.ms/nupkgservicing. - Pakette serviceable bayrağını ayarlayın. Daha fazla bilgi için bkz. https://aka.ms/nupkgservicing. + Paketteki serviceable bayrağını ayarlayın. Daha fazla bilgi için bkz. https://aka.ms/nupkgservicing. diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf index b97758f51..11d93baf0 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hans.xlf @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 用于生成项目的配置。大多数项目的默认值为“Debug”。 + 用于生成项目的配置。对大多数项目的默认值是 "Debug"。 diff --git a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf index b16083418..f2b3b114e 100644 --- a/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-pack/xlf/LocalizableStrings.zh-Hant.xlf @@ -25,7 +25,7 @@ Skip building the project prior to packing. By default, the project will be built. - 在封裝前跳過建置專案。預設會建置專案。 + 跳過在封裝前建置專案。根據預設,會建置專案。 @@ -45,7 +45,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 建置專案用的組態。多數專案預設為 "Debug"。 + 要用於建置專案的組態。多數專案的預設為 "Debug"。 @@ -55,7 +55,7 @@ Defines the value for the $(VersionSuffix) property in the project. - 在專案中定義 $(VersionSuffix) 屬性的值。 + 定義 $(VersionSuffix) 屬性在專案中的值。 diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf index 2ae18769d..73f3f302a 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.cs.xlf @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Publikuje projekt pro daný runtime. Používá se k vytvoření samostatného nasazení. Výchozí možnost je publikovat aplikaci závislou na platformě. + Publikuje projekt pro daný modul runtime. Používá se při vytváření nezávislého nasazení. Výchozí možnost je publikování aplikace závislé na platformě. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf index 92c6069d5..93df352a4 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.de.xlf @@ -30,7 +30,7 @@ Target framework to publish for. The target framework has to be specified in the project file. - Zielframework der Veröffentlichung. Das Zielframework muss in der Projektdatei angegeben werden. + Zielframework für die Veröffentlichung. Das Zielframework muss in der Projektdatei angegeben werden. @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Veröffentlichung des Projekts für eine bestimmte Laufzeit. Wird zum Erstellen einer eigenständigen Bereitstellung verwendet. Standardmäßig wird eine Framework-abhängige App veröffentlicht. + Veröffentlicht das Projekt für eine angegebene Laufzeit. Wird zum Erstellen einer eigenständigen Bereitstellung verwendet. Standardmäßig wird eine Framework-abhängige App veröffentlicht. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist "Debug". @@ -70,7 +70,7 @@ Defines the value for the $(VersionSuffix) property in the project. - Definiert den Wert für die Eigenschaft „$(VersionSuffix)“ im Projekt. + Definiert den Wert für die Eigenschaft "$(VersionSuffix)" im Projekt. diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf index c36729b0b..1dca753ff 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.es.xlf @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Publica el proyecto para un entorno en tiempo de ejecución determinado. Se usa cuando se crea una implementación autocontenida. El valor predeterminado es publicar una aplicación dependiente de la plataforma. + Publica el proyecto para un runtime determinado. Se usa cuando se crea la implementación independiente. La opción predeterminada es publicar una aplicación dependiente de la plataforma. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + Configuración para usar para crear el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf index 752f20f66..721bb3e54 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.fr.xlf @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Publiez le projet pour un runtime donné. S'utilise pour la création d'un déploiement autonome. L'action par défaut consiste à publier une application dépendant d'un framework. + Publie le projet pour un runtime donné. Utilisé lors de la création d'un déploiement autonome. Le comportement par défaut consiste à publier une application dépendante du framework. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf index 2eee36802..087f96628 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.it.xlf @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf index 2b65243da..95772bb63 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ja.xlf @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 指定したランタイムのプロジェクトを発行します。これは、自己完結型の開発を作成する際に使用します。既定では、フレームワーク依存アプリを発行します。 + 指定されたランタイムのプロジェクトを発行します。これは、自己完結型の展開を作成する際に使用します。既定では、フレームワーク依存アプリを発行します。 @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + プロジェクトの構築に使用する構成。ほとんどのプロジェクトで既定は "デバッグ" です。 diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf index eaf8d49c1..cc986ead3 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ko.xlf @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf index 4f4ad65e0..97b2afcb8 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pl.xlf @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf index 0d62b6d36..5abf38005 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.pt-BR.xlf @@ -30,7 +30,7 @@ Target framework to publish for. The target framework has to be specified in the project file. - Estrutura de destino na qual publicar. A estrutura de destino deve ser especificada no arquivo de projeto. + A estrutura de destino para a qual publicar. A estrutura de destino deve ser especificada no arquivo de projeto. @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Publica o projeto em um tempo de execução específico. Usado durante a criação da implantação independente. O padrão é publicar um aplicativo dependente de estrutura. + Publique o projeto para um tempo de execução fornecido. Isso é usado ao criar uma implantação autocontida. O padrão é publicar um aplicativo dependente de estrutura. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + A configuração a ser usada para criar o projeto. O padrão para a maioria dos projetos é “Depurar”. diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf index 454db7a6f..f91a6f3e3 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.ru.xlf @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Публикация проекта для заданной среды выполнения. Используется при создании автономного развертывания. По умолчанию публикуется платформозависимое приложение. + Публикует проект для указанной среды выполнения. Используется при создании автономного развертывания. По умолчанию публикуется зависимое от платформы приложение. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + Конфигурация, используемая для сборки проекта. Значение по умолчанию для большинства проектов — "Debug". diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf index 5b9b0b25c..6f5694480 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.tr.xlf @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - Projeyi belirli bir çalışma zamanı için yayımlayın. Bu, kendi içinde dağıtımlar oluşturulurken kullanılır. Varsayılan seçenek, çerçeveye bağımlı bir proje yayımlamaktır. + Projeyi belirli bir çalışma zamanı için yayımlar. Bu, kendi içinde dağıtım oluştururken kullanılır. Varsayılan seçenek, çerçeveye bağlı bir uygulama yayımlamaktır. @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan: "Debug". diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf index 6b4658c45..96c1c403c 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hans.xlf @@ -30,7 +30,7 @@ Target framework to publish for. The target framework has to be specified in the project file. - 发布的目标框架。必须在项目文件中指定目标框架。 + 要发布的目标框架。目标框架必须在项目文件中指定。 @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 针对给定运行时发布项目。创建自包含部署时使用此项。默认操作是发布依赖框架的应用。 + 针对给定运行时发布项目。创建自包含部署时使用此项。默认操作为发布依赖框架的应用。 @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 用于生成项目的配置。大多数项目的默认值为“Debug”。 + 用于生成项目的配置。对大多数项目的默认值是 "Debug"。 diff --git a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf index 7ae90e877..dc3b69f9a 100644 --- a/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-publish/xlf/LocalizableStrings.zh-Hant.xlf @@ -30,7 +30,7 @@ Target framework to publish for. The target framework has to be specified in the project file. - 要為其發行的目標 Framework。其必須在專案檔中指定。 + 要對其發行的目標 Framework。目標 Framework 必須在專案檔中指定。 @@ -40,7 +40,7 @@ Publish the project for a given runtime. This is used when creating self-contained deployment. Default is to publish a framework-dependented app. - 為給定的執行階段發行專案。建立獨立的部署時會加以使用。預設發行架構相依型應用程式。 + 為指定的執行階段發行專案。這在建立獨立部署時會用到。預設為發行相依於架構的應用程式。 @@ -60,7 +60,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 建置專案用的組態。多數專案預設為 "Debug"。 + 要用於建置專案的組態。多數專案的預設為 "Debug"。 diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf index df1f16bf1..e49105ec2 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.cs.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + Cílový modul runtime pro obnovení balíčků. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf index 71f9792e6..3fe42cdae 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.de.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + Ziellaufzeit für die Wiederherstellung von Paketen. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf index c72ed7eb1..4e9eafed7 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.es.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + ID_DEL_ENTORNO_DE_TIEMPO_DE_EJECUCIÓN + Target runtime to restore packages for. - Target runtime to restore packages for. - + Runtime de destino para el que restaurar los paquetes. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf index f054e453c..e54f65d5e 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.fr.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + IDENTIFICATEUR_RUNTIME + Target runtime to restore packages for. - Target runtime to restore packages for. - + Runtime cible pour lequel restaurer les packages. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf index 770fef7f4..a85aa49cc 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.it.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + IDENTIFICATORE_RUNTIME + Target runtime to restore packages for. - Target runtime to restore packages for. - + Runtime di destinazione per cui ripristinare i pacchetti. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf index 3b4659814..358a40939 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ja.xlf @@ -70,18 +70,18 @@ Set this flag to ignore project to project references and only restore the root project - project to project 参照を無視して、ルート プロジェクトのみを復元するには、このフラグを設定します + プロジェクト間参照を無視して、ルート プロジェクトのみを復元するには、このフラグを設定します RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + パッケージ復元用のターゲット ランタイム。 + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf index 3d57c7a89..fbe720eb2 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ko.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + 패키지를 복원할 대상 런타입니다. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf index 1e8b0a36f..4b0c445c1 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pl.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + IDENTYFIKATOR_ŚRODOWISKA_URUCHOMIENIOWEGO + Target runtime to restore packages for. - Target runtime to restore packages for. - + Docelowe środowisko uruchomieniowe, dla którego mają zostać przywrócone pakiety. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf index 05d67db33..ed173b898 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.pt-BR.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + O tempo de execução de destino para o qual restaurar pacotes. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf index da6e5ce57..bdb463dc8 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.ru.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + Целевая среда выполнения для восстановления пакетов. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf index f028f439c..c231858ff 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.tr.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + ÇALIŞMA_ZAMANI_TANIMLAYICISI + Target runtime to restore packages for. - Target runtime to restore packages for. - + Paketlerin geri yükleneceği hedef çalışma zamanı. + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf index 6c9d0af87..b2de0382a 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hans.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + 要还原包的目标运行时。 + diff --git a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf index b626dc067..582757396 100644 --- a/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-restore/xlf/LocalizableStrings.zh-Hant.xlf @@ -75,13 +75,13 @@ RUNTIME_IDENTIFIER - RUNTIME_IDENTIFIER - + RUNTIME_IDENTIFIER + Target runtime to restore packages for. - Target runtime to restore packages for. - + 要對其還原套件的目標執行階段。 + diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf index eff158e53..c04e5eb41 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.cs.xlf @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - K sestavení a spuštění aplikace se použije určená platforma, která musí být zadaná v souboru projektu. + K sestavení a spuštění aplikace se použije určená platforma. Tato platforma musí být zadaná v souboru projektu. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf index 5f10b7f20..595730789 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.de.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist "Debug". @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Erstellen und Ausführen der App mit dem angegebenen Framework. Das Framework muss in der Projektdatei angegeben werden. + Erstellt die App mit dem angegebenen Framework und führt sie aus. Das Framework muss in der Projektdatei angegeben werden. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf index 591822857..1fc37e714 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.es.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + Configuración para usar para crear el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Compila y ejecuta la aplicación con la plataforma especificada. La plataforma se debe especificar en el archivo de proyecto. + Crea y ejecuta la aplicación mediante la plataforma especificada. La plataforma se debe especificar en el archivo de proyecto. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf index dfad66cce..17fe45e72 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.it.xlf @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Consente di compilare ed eseguire l'app con il framework specificato. Il framework di destinazione deve essere specificato nel file di progetto. + Consente di compilare ed eseguire l'app con il framework specificato. Il framework deve essere specificato nel file di progetto. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf index 46be5e63e..7c0ee010c 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ja.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + プロジェクトの構築に使用する構成。ほとんどのプロジェクトで既定は "デバッグ" です。 @@ -25,12 +25,12 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 指定したフレームワークを使用してアプリを構築して、実行します。フレームワークはプロジェクト ファイルで指定する必要があります。 + 指定されたフレームワークを使用して、アプリを構築して実行します。フレームワークはプロジェクト ファイルで指定する必要があります。 The path to the project file to run (defaults to the current directory if there is only one project). - 実行するプロジェクト ファイルへのパス (プロジェクトが 1 つのみの場合、既定現在のディレクトリになります)。 + 実行するプロジェクト ファイルへのパス (プロジェクトが 1 つのみの場合、既定は現在のディレクトリです)。 @@ -105,7 +105,7 @@ contains more than one project file. - + 複数のプロジェクト ファイルが含まれます。 diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf index 2cff4579e..deb86aba9 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ko.xlf @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 지정된 프레임워크를 사용하여 앱을 빌드 및 실행합니다. 프로젝트 파일에서 프레임워크를 지정해야 합니다. + 지정된 프레임워크를 사용하여 앱을 빌드 및 실행합니다. 프로젝트 파일에서 프레임워크를 지정해야 합니다. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf index df81e572a..4e51c9bca 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.pt-BR.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + A configuração a ser usada para criar o projeto. O padrão para a maioria dos projetos é “Depurar”. @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Compila e executa um aplicativo usando a estrutura especificada. A estrutura deve ser especificada no arquivo de projeto. + Compile e execute o aplicativo usando a estrutura especificada. A estrutura deve ser especificada no arquivo de projeto. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf index fa940a12c..ec36e5bbc 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.ru.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, используемая для сборки проекта. По умолчанию для большинства сборок используется "Отладка". + Конфигурация, используемая для сборки проекта. Значение по умолчанию для большинства проектов — "Debug". @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Сборка и выполнение приложения с использованием определенной платформы. Платформа должна быть указана в файле проекта. + Сборка и запуск приложения на указанной платформе. Платформа должна быть указана в файле проекта. @@ -105,7 +105,7 @@ contains more than one project file. - содержит несколько файлов проектов. + здесь задано несколько файлов проектов. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf index a4bd28264..6dfbc4e10 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.tr.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan: "Debug". @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - Uygulamayı belirtilen çerçeveyi kullanarak derleyin ve çalıştırın. Çerçevenin proje dosyasında belirtilmesi gerekir. + Uygulamayı belirtilen çerçeve için derler ve çalıştırır. Çerçevenin proje dosyasında belirtilmesi gerekir. diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf index ec15b96a2..a448561d0 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hans.xlf @@ -15,7 +15,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 用于生成项目的配置。大多数项目的默认值为“Debug”。 + 用于生成项目的配置。对大多数项目的默认值是 "Debug"。 @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 使用指定的框架生成和运行应用。需要在项目文件中指定框架。 + 使用指定的框架生成和运行应用。框架必须在项目文件中指定。 diff --git a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf index 5f6084851..66b72b7c3 100644 --- a/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-run/xlf/LocalizableStrings.zh-Hant.xlf @@ -10,12 +10,12 @@ Command used to run .NET apps - 用來執行 .NET 應用程式的命令 + 用以執行 .NET 應用程式的命令 Configuration to use for building the project. Default for most projects is "Debug". - 建置專案用的組態。多數專案預設為 "Debug"。 + 要用於建置專案的組態。多數專案的預設為 "Debug"。 @@ -25,7 +25,7 @@ Build and run the app using the specified framework. The framework has to be specified in the project file. - 使用指定的架構建置及執行應用程式。架構必須在專案檔中指定。 + 使用指定的架構建置及執行應用程式。架構必須在專案檔中指定。 diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf index 9a9cf5b5a..c329fc42d 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.cs.xlf @@ -54,16 +54,15 @@ Spustí testy, které odpovídají danému výrazu. Příklady: Spustí testy s prioritou nastavenou na 1: --filter "Priority = 1" - Spustí test se zadaným plným názvem: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Spustí testy, které obsahují zadaný název: --filter "FullyQualifiedName~Namespace.Class" - Další informace o podpoře filtrování: https://aka.ms/vstest-filtering - + Spustí test se zadaným celým názvem: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Spustí testy obsahující zadaný název: --filter "FullyQualifiedName~Namespace.Class" + Další informace o podpoře filtrování: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Při spuštění testu použít vlastní adaptéry z dané cesty. + Při spuštění testu použijte vlastní adaptéry z dané cesty. Příklad: --test-adapter-path <PATH_TO_ADAPTER> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. + Konfigurace použitá k sestavení projektu. Výchozí možnost u většiny projektů je „Debug“. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf index 746d41d4c..52b051bba 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.de.xlf @@ -53,18 +53,17 @@ Führen Sie Tests aus, die dem angegebenen Ausdruck entsprechen. Beispiele: - Führen Sie Tests aus, bei denen die Priorität auf 1 festgelegt ist: --filter "Priority = 1" + Führen Sie Tests aus, für die die Priorität 1 festgelegt ist: --filter "Priority = 1" Führen Sie einen Test mit dem angegebenen vollständigen Namen aus: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Führen Sie Tests aus, die den angegebenen Namen enthalten: --filter "FullyQualifiedName~Namespace.Class" - Weitere Infos zur Unterstützung der Filterung finden Sie unter: https://aka.ms/vstest-filtering - + Führen Sie Tests aus, die den angegeben Namen enthalten: --filter "FullyQualifiedName~Namespace.Class" + Weitere Informationen zur Filterunterstützung: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> Verwenden Sie im Testlauf benutzerdefinierte Adapter aus dem angegebenen Pfad. - Beispiel: --test-adapter-path <PFAD_ZUM_ADAPTER> + Beispiel: --test-adapter-path <PFAD_ZU_ADAPTER> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist „Debug“. + Konfiguration für die Erstellung des Projekts. Standard für die meisten Projekte ist "Debug". diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf index 54f93a692..f6b3b1a29 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.es.xlf @@ -53,18 +53,17 @@ Ejecuta las pruebas que coinciden con una expresión dada. Ejemplos: - Ejecuta las pruebas con una prioridad establecida en 1: --filter "Prioridad = 1" - Ejecuta una prueba con el nombre completo especificado: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Ejecuta las pruebas que contienen el nombre especificado: --filter "FullyQualifiedName~Namespace.Class" - Más información sobre la compatibilidad con el filtrado: https://aka.ms/vstest-filtering - + Ejecutar pruebas con la prioridad establecida en 1: --filter "Priority = 1" + Ejecutar una prueba con el nombre completo establecido: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Ejecutar pruebas que contienen el nombre especificado: --filter "FullyQualifiedName~Namespace.Class" + Más información sobre la compatibilidad del filtrado: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> Indica que se usen adaptadores personalizados de la ruta de acceso dada en la serie de pruebas. - Ejemplo: --test-adapter-path <RUTA_ACCESO_ADAPTADOR> + Ejemplo: --test-adapter-path <RUTA_DE_ACCESO_AL_ADAPTADOR> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuración que se usará para compilar el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". + Configuración para usar para crear el proyecto. El valor predeterminado para la mayoría de los proyectos es "Depurar". diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf index 03405cce6..f93194774 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.fr.xlf @@ -51,20 +51,19 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Permet d'exécuter les tests qui correspondent à l'expression indiquée. + Exécutez les tests qui correspondent à l'expression donnée. Exemples : - Exécuter les tests de priorité 1 : --filter "Priority = 1" - Exécuter un test avec le nom complet spécifié : --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Exécuter les tests qui contiennent le nom spécifié : --filter "FullyQualifiedName~Namespace.Class" - En savoir plus sur la prise en charge du filtrage : https://aka.ms/vstest-filtering - + Exécutez des tests avec la priorité définie sur 1 : --filter "Priority = 1" + Exécutez un test avec le nom complet spécifié : --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Exécutez des tests contenant le nom spécifié : --filter "FullyQualifiedName~Namespace.Class" + Informations supplémentaires disponibles dans la page de support sur le filtrage : https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Utilisez des adaptateurs personnalisés provenant du chemin indiqué dans la série de tests. - Exemple : --test-adapter-path <CHEMIN_ADAPTATEUR> + Utilisez des adaptateurs personnalisés à partir du chemin donné dans la série de tests. + Exemple : --test-adapter-path <PATH_TO_ADAPTER> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". + Configuration à utiliser pour la génération du projet. La valeur par défaut pour la plupart des projets est "Debug". diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf index 6754ebb6e..211f1c0b5 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.it.xlf @@ -53,11 +53,10 @@ Esegue i test corrispondenti all'espressione specificata. Esempi: - Consente di eseguire test con priorità impostata su 1: --filter "Priority = 1" - Consente di eseguire un test con il nome completo specificato: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Consente di eseguire test che contengono il nome specificato: --filter "FullyQualifiedName~Namespace.Class" - Altre informazioni sul supporto dei filtri: https://aka.ms/vstest-filtering - + Esegue i test con priorità impostata su 1: --filter "Priority = 1" + Esegue un test con il nome completo specificato: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Esegue i test che contengono il nome specificato: --filter "FullyQualifiedName~Namespace.Class" + Altre informazioni sul supporto dei filtri: https://aka.ms/vstest-filtering @@ -75,7 +74,7 @@ Specify a logger for test results. Example: --logger:trx - Consente di specificare un logger per i risultati dei test. + Consente di specificare un logger per i risultati dei test. Esempio: --logger:trx @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". + Configurazione da usare per compilare il progetto. L'impostazione predefinita per la maggior parte dei progetti è "Debug". diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf index 7fb2918d0..0751d6223 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ja.xlf @@ -52,19 +52,18 @@ More info on filtering support: https://aka.ms/vstest-filtering 指定された式に一致するテストを実行します。 - 例: - 優先度を 1 に設定してテストを実行する: --filter "Priority = 1" - 指定したフル ネームでテストを実行する: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - 指定した名前を含むテストを実行する: --filter "FullyQualifiedName~Namespace.Class" - フィルタリング サポートの詳細情報: https://aka.ms/vstest-filtering - + 例: + 優先度を 1 に設定してテストを実行する: --filter "Priority = 1" + 指定したフル ネームでテストを実行する: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + 指定した名前を含むテストを実行する: --filter "FullyQualifiedName~Namespace.Class" + フィルタリング サポートの詳細情報: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> テストの実行では、指定されたパスのカスタム アダプターを使用します。 - 例: --test-adapter-path <PATH_TO_ADAPTER> + 例: --test-adapter-path <PATH_TO_ADAPTER> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - プロジェクトの構築に使用する構成。ほとんどのプロジェクトの場合、既定は "デバッグ" です。 + プロジェクトの構築に使用する構成。ほとんどのプロジェクトで既定は "デバッグ" です。 @@ -117,7 +116,7 @@ Enable verbose logs for test platform. Logs are written to the provided file. - テスト プラットフォームの詳細ログを有効にする + テスト プラットフォームの詳細ログを有効にします。 ログは指定されたファイルに書き込まれます。 diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf index ab95979e0..e408442d6 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ko.xlf @@ -56,8 +56,7 @@ 우선 순위를 1로 설정하여 테스트 실행: --filter "Priority = 1" 지정된 전체 이름으로 테스트 실행: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" 지정된 이름을 포함하는 테스트 실행: --filter "FullyQualifiedName~Namespace.Class" - 필터링 지원에 대한 추가 정보: https://aka.ms/vstest-filtering - + 필터링 지원에 대한 추가 정보: https://aka.ms/vstest-filtering @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. + 프로젝트 빌드에 사용할 구성입니다. 대부분의 프로젝트에서 기본값은 "Debug"입니다. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf index d22db9f08..bf2839945 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pl.xlf @@ -56,8 +56,7 @@ Uruchom testy z priorytetem ustawionym na wartość 1: --filter "Priority = 1" Uruchom test o określonej pełnej nazwie: --filter "WPełniKwalifikowanaNazwa=PrzestrzeńNazw.NazwaKlasy.NazwaMetody" Uruchom testy zawierające określoną nazwę: --filter "WPełniKwalifikowanaNazwa~PrzestrzeńNazw.Klasa" - Więcej informacji o obsłudze filtrowania: https://aka.ms/vstest-filtering - + Więcej informacji o obsłudze filtrowania: https://aka.ms/vstest-filtering @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. + Konfiguracja do użycia na potrzeby kompilacji projektu. Opcją domyślną w przypadku większości projektów jest „Debug”. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf index 12650b1d0..e66cf28c7 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.pt-BR.xlf @@ -51,20 +51,19 @@ Run tests that contain the specified name: --filter "FullyQualifiedName~Namespace.Class" More info on filtering support: https://aka.ms/vstest-filtering - Executa testes que correspondem a determinada expressão. + Execute testes que correspondam à expressão especificada. Exemplos: - Executar testes com a prioridade definida como 1: --filter "Priority = 1" - Executar um teste com o nome completo especificado: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Executar testes que contêm o nome especificado: --filter "FullyQualifiedName~Namespace.Class" - Mais informações sobre o suporte à filtragem: https://aka.ms/vstest-filtering - + Execute testes com a prioridade definida para 1: --filter "Priority = 1" + Execute um teste com o nome completo especificado: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Execute testes que contém o nome especificado: --filter "FullyQualifiedName~Namespace.Class" + Para obter mais informações sobre suporte à filtragem: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - Usar adaptadores personalizados do caminho especificado na execução de teste. - Exemplo: --test-adapter-path <CAMINHO_PARA_ADAPTADOR> + Use adaptadores personalizados do caminho especificado na execução de teste. + Exemplo: --test-adapter-path <PATH_TO_ADAPTER> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Configuração a ser usada para compilar o projeto. O padrão para a maioria dos projetos é "Debug". + A configuração a ser usada para criar o projeto. O padrão para a maioria dos projetos é “Depurar”. diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf index e2af7b103..0b19eecaa 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.ru.xlf @@ -56,15 +56,14 @@ Запуск тестов с приоритетом 1: --filter "Priority = 1" Запуск теста с указанным полным именем: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" Запуск тестов, содержащих указанное имя: --filter "FullyQualifiedName~Namespace.Class" - Дополнительные сведения о поддержке фильтрации: https://aka.ms/vstest-filtering - + Дополнительные сведения о поддержке фильтрации: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> Использование настраиваемых адаптеров по заданному пути в тестовом запуске. - Пример: --test-adapter-path <PATH_TO_ADAPTER> + Пример: --test-adapter-path <путь к адаптеру> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - Конфигурация, используемая при сборке проекта. По умолчанию для большинства проектов используется "Отладка". + Конфигурация, используемая для сборки проекта. Значение по умолчанию для большинства проектов — "Debug". diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf index 6588883b1..a54370967 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.tr.xlf @@ -53,18 +53,17 @@ Belirtilen ifadeyle eşleşen testleri çalıştırır. Örnekler: - Önceliği 1: --filter "Priority = 1" olarak ayarlanmış testleri çalıştırır - Belirtilen tam ada sahip bir test çalıştırır: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - Belirtilen adı içeren testleri çalıştırır: --filter "FullyQualifiedName~Namespace.Class" - Filtreleme desteği hakkında daha fazla bilgi: https://aka.ms/vstest-filtering - + Testleri, önceliği 1 olarak ayarlayarak çalıştırmak için: --filter "Priority = 1" + Belirtilen tam ada sahip testi çalıştırmak için: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + Belirtilen tam adı içeren testleri çalıştırmak için: --filter "FullyQualifiedName~Namespace.Class" + Filtreleme desteği hakkında daha fazla bilgi için bkz. https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> Test çalıştırmasında, belirtilen yoldaki özel bağdaştırıcıları kullanır. - Örnek: --test-adapter-path <BAĞDAŞTIRICI_YOLU> + Örnek: --test-adapter-path <PATH_TO_ADAPTER> @@ -81,17 +80,17 @@ CONFIGURATION - CONFIGURATION + YAPILANDIRMA Configuration to use for building the project. Default for most projects is "Debug". - Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan, "Hata Ayıklama" seçeneğidir. + Projeyi derlemek için kullanılacak yapılandırma. Çoğu proje için varsayılan: "Debug". FRAMEWORK - FRAMEWORK + ÇERÇEVE diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf index 76020ebf1..989af4228 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hans.xlf @@ -52,18 +52,17 @@ More info on filtering support: https://aka.ms/vstest-filtering 运行与给定表达式匹配的测试。 - 示例: - -运行优先级设置为 1 的测试: --filter "Priority = 1" - 运行指定全名的测试: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - 运行包含指定名称的测试: --filter "FullyQualifiedName~Namespace.Class" - 有关筛选支持的详细信息: https://aka.ms/vstest-filtering - + 示例: + 运行优先级设为 1 的测试: --筛选 "Priority = 1" + 运行具有指定完整名称的测试: --筛选 "FullyQualifiedName=Namespace.ClassName.MethodName" + 运行包含指定名称的测试: --筛选 "FullyQualifiedName~Namespace.Class" + 有关筛选支持的详细信息,请访问: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - 在测试运行中从给定路径使用自定义适配器。 + 在测试运行中使用给定路径中的自定义适配器。 示例: --test-adapter-path <PATH_TO_ADAPTER> @@ -86,7 +85,7 @@ Configuration to use for building the project. Default for most projects is "Debug". - 用于生成项目的配置。大多数项目的默认值为“Debug”。 + 用于生成项目的配置。对大多数项目的默认值是 "Debug"。 diff --git a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf index 007bc539b..89128d386 100644 --- a/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/commands/dotnet-test/xlf/LocalizableStrings.zh-Hant.xlf @@ -52,19 +52,18 @@ More info on filtering support: https://aka.ms/vstest-filtering 執行符合指定運算式的測試。 - 範例: - 執行測試,其中優先順序設為 1: --filter "Priority = 1" - 使用指定的全名執行測試: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" - 執行內含指定名稱的測試: --filter "FullyQualifiedName~Namespace.Class" - 篩選資源的詳細資訊: https://aka.ms/vstest-filtering - + 範例: + 執行優先順序設為 1 的測試: --filter "Priority = 1" + 執行具有指定完整名稱的測試: --filter "FullyQualifiedName=Namespace.ClassName.MethodName" + 執行包含指定名稱的測試: --filter "FullyQualifiedName~Namespace.Class" + 篩選支援的詳細資訊: https://aka.ms/vstest-filtering Use custom adapters from the given path in the test run. Example: --test-adapter-path <PATH_TO_ADAPTER> - 從測試回合中的指定路徑使用自訂配接器。 - 範例: --test-adapter-path <PATH_TO_ADAPTER> + 在測試回合中使用來自指定路徑的自訂配接器。 + 範例: --test-adapter-path <配接器路徑> @@ -81,17 +80,17 @@ CONFIGURATION - CONFIGURATION + 組態 Configuration to use for building the project. Default for most projects is "Debug". - 建置專案用的組態。多數專案預設為 "Debug"。 + 要用於建置專案的組態。多數專案的預設為 "Debug"。 FRAMEWORK - 架構 + FRAMEWORK diff --git a/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf b/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf index 55d958d6a..abe0dc4ac 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.cs.xlf @@ -490,7 +490,7 @@ There are no {0} references in project {1}. ;; {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - Projekt {1} neobsahuje odkazy na {0}. ;; {0} je typ požadované položky (projekt, balíček p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). + Projekt {1} neobsahuje odkazy na {0}. ;; {0} je typ požadované položky (projekt, balíček, p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). diff --git a/src/dotnet/xlf/CommonLocalizableStrings.de.xlf b/src/dotnet/xlf/CommonLocalizableStrings.de.xlf index 4e9c50249..d28375dde 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.de.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.de.xlf @@ -100,7 +100,7 @@ Reference {0} does not exist. - Der Verweis „{0}“ ist nicht vorhanden. + Der Verweis "{0}" ist nicht vorhanden. @@ -580,17 +580,17 @@ Found more than one solution file in {0}. Please specify which one to use. - In „{0}“ wurden mehrere Projektmappendateien gefunden. Geben Sie an, welche davon verwendet werden soll. + In "{0}" wurden mehrere Projektmappendateien gefunden. Geben Sie an, welche davon verwendet werden soll. Solution {0} already contains project {1}. - Die Projektmappe „{0}“ enthält bereits das Projekt „{1}“. + Die Projektmappe "{0}" enthält bereits das Projekt "{1}". The project or solution to operation on. If a file is not specified, the current directory is searched. - Projekt oder Projektmappe, woran der Vorgang ausgeführt werden soll. Wenn keine Datei angegeben wird, wird das aktuelle Verzeichnis durchsucht. + Das Projekt oder die Projektmappe, für die der Vorgang ausgeführt werden soll. Wenn keine Datei angegeben wird, wird das aktuelle Verzeichnis durchsucht. @@ -600,18 +600,18 @@ Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - Projekt „{0}“ kann nicht hinzugefügt werden, weil die Zielframeworks der beiden Projekte nicht kompatibel sind. Bitte überprüfen Sie das Projekt, das Sie hinzuzufügen versuchen, und stellen Sie sicher, dass es mit folgenden Zielen kompatibel ist: + Das Projekt "{0}" kann nicht hinzugefügt werden, weil die Zielframeworks der beiden Projekte nicht kompatibel sind. Überprüfen Sie das Projekt, das Sie hinzuzufügen versuchen, und stellen Sie sicher, dass es mit folgenden Zielen kompatibel ist: Project `{0}` does not target framework `{1}`. - „{1}“ ist kein Zielframework von Projekt „{0}“ . + "{1}" ist kein Zielframework von Projekt "{0}" . Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Projekt „{0}“ konnte nicht ausgewertet werden. Bei der Auswertung trat folgender Fehler auf: + Das Projekt "{0}" konnte nicht ausgewertet werden. Fehler bei der Auswertung: {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.es.xlf b/src/dotnet/xlf/CommonLocalizableStrings.es.xlf index 62934d865..88a5ab711 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.es.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.es.xlf @@ -580,7 +580,7 @@ Found more than one solution file in {0}. Please specify which one to use. - Se encontraron varios archivos de solución en {0}. Especifique el que debe usarse. + Se han encontrado varios archivos de solución en {0}. Especifique el que debe usarse. @@ -590,7 +590,7 @@ The project or solution to operation on. If a file is not specified, the current directory is searched. - El proyecto o la solución donde realizar la operación. Si no se especifica un archivo, se buscará en el directorio actual. + El proyecto o la solución donde realizar la operación. Si no se especifica un archivo, se busca en el directorio actual. @@ -600,7 +600,7 @@ Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - El proyecto "{0}" no se puede agregar debido a que hay plataformas de destino no compatibles entre los dos proyectos. Revise el proyecto que intenta agregar y compruebe que sea compatible con las plataformas siguientes: + El proyecto `{0}` no se puede agregar debido a plataformas de destino incompatibles entre los dos proyectos. Revise el proyecto que está intentando agregar y compruebe que es compatible con los siguientes destinos: @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - No se pudo evaluar el proyecto "{0}". Error de evaluación con el error siguiente: + El proyecto "{0}" no se puede evaluar. Se produjo el siguiente error en la evaluación: {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf b/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf index 340a03cd2..cd801599e 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.fr.xlf @@ -580,7 +580,7 @@ Found more than one solution file in {0}. Please specify which one to use. - Plusieurs fichiers solution trouvés dans {0}. Spécifiez celui qui doit être utilisé. + Plusieurs fichiers solution trouvés dans {0}. Spécifiez celui à utiliser. @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Impossible d'évaluer le projet '{0}'. Échec de l'évaluation en raison de l'erreur suivante : + Impossible d'évaluer le projet '{0}'. L'évaluation a échoué avec l'erreur suivante : {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.it.xlf b/src/dotnet/xlf/CommonLocalizableStrings.it.xlf index ab317e117..987d5ae70 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.it.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.it.xlf @@ -490,7 +490,7 @@ There are no {0} references in project {1}. ;; {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - Non ci sono riferimenti a {0} nel progetto {1}. ;; {0} è il tipo dell'elemento richiesto (progetto, pacchetto o P2P) e {1} è l'oggetto su cui si interviene (file di progetto o di soluzione). + Non ci sono riferimenti a {0} nel progetto {1}. ;; {0} è il tipo dell'elemento richiesto (progetto, pacchetto o P2P) e {1} è l'oggetto su cui si interviene (file di progetto o di soluzione). @@ -555,12 +555,12 @@ Specified name {0} already exists. Please specify a different name. - Il nome specificato {0} esiste già. Specificarne uno diverso. + Il nome specificato {0} esiste già. Specificare un nome diverso. Specified alias {0} already exists. Please specify a different alias. - L'alias specificato {0} esiste già. Specificarne uno diverso. + L'alias specificato {0} esiste già. Specificare un alias diverso. diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf index b81ed92bb..a7a625388 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ja.xlf @@ -580,7 +580,7 @@ Found more than one solution file in {0}. Please specify which one to use. - {0} に複数のソリューションが見つかりました。使用するプロジェクトを指定してください。 + {0} に複数のソリューション ファイルが見つかりました。使用するものを 1 つ指定してください。 @@ -600,7 +600,7 @@ Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - 2 つのプロジェクト間のターゲット フレームワークに互換性がないため、プロジェクト `{0}` を追加できません。追加しようとしているプロジェクトを確認し、次のターゲットと互換性があることを確認してください: + 2 つのプロジェクト間のターゲット フレームワークに互換性がないため、プロジェクト `{0}` を追加できません。追加しようとしているプロジェクトを確認し、次のターゲットと互換性があることを確認してください。 @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - プロジェクト `{0}` を評価できませんでした。評価は次のエラーで失敗しました: + プロジェクト `{0}` を評価できませんでした。評価は次のエラーにより失敗しました: {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf index 0265c20f3..02f7f53e5 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ko.xlf @@ -10,7 +10,7 @@ Found more than one project in `{0}`. Please specify which one to use. - `{0}`에서 프로젝트를 두 개 이상 찾았습니다. 사용할 프로젝트를 지정하세요. + `{0}`에서 프로젝트를 두 개 이상 찾았습니다. 사용할 파일을 지정하세요. @@ -580,7 +580,7 @@ Found more than one solution file in {0}. Please specify which one to use. - {0}에서 솔루션 파일이 두 개 이상 있습니다. 사용할 파일을 지정하세요. + {0}에서 솔루션 파일을 두 개 이상 찾았습니다. 사용할 파일을 지정하세요. @@ -600,7 +600,7 @@ Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - 두 프로젝트 간에 호환되지 않는 대상 프레임워크 때문에 '{0}' 프로젝트를 추가할 수 없습니다. 추가하려는 프로젝트를 검토하고 다음 대상과 호환되는지 확인하세요. + 두 프로젝트 간에 호환되지 않는 대상 프레임워크 때문에 `{0}` 프로젝트를 추가할 수 없습니다. 추가하려는 프로젝트를 검토하고 다음 대상과 호환되는지 확인하세요. @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - '{0}' 프로젝트를 평가할 수 없습니다. 다음 오류와 함께 평가가 실패했습니다. + ‘{0}’ 프로젝트를 평가할 수 없습니다. 다음 오류와 함께 평가가 실패했습니다. {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf b/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf index 184916d09..16bb3e865 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.pt-BR.xlf @@ -580,7 +580,7 @@ Found more than one solution file in {0}. Please specify which one to use. - Foi encontrado mais de um arquivo de solução em {0}. Especifique qual deles deve ser usado. + Foi encontrado mais de um arquivo de solução em {0}. Especifique qual usar. @@ -600,7 +600,7 @@ Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - O projeto '{0}' não pode ser adicionado devido a estruturas de destino incompatíveis entre os dois projetos. Examine o projeto que você está tentando adicionar e verifique se ele é compatível com os seguintes destinos: + O projeto ‘{0}’ não pode ser adicionado devido Pa estruturas de destino incompatíveis entre os dois projetos. Examine o projeto que você está tentando adicionar e verifique se ele é compatível com os seguintes destinos: @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - O projeto '{0}' não pôde ser avaliado. A avaliação falhou com o seguinte erro: + Não foi possível avaliar o projeto "{0}". A avaliação falhou com o seguinte erro: {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf b/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf index 4ab9871e1..3d7b45598 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.ru.xlf @@ -490,7 +490,7 @@ There are no {0} references in project {1}. ;; {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - В проекте {1} нет ссылок {0}. ;; {0} — тип запрашиваемого элемента (проект, пакет, p2p), а {1} — обрабатываемый объект (файл проекта или файл решения). + В проекте {1} нет ссылок {0}. ;; {0} — тип запрашиваемого элемента (проект, пакет, p2p), а {1} — обрабатываемый объект (файл проекта или файл решения). @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - Не удалось оценить проект "{0}". Произошел сбой оценки со следующей ошибкой: + Не удалось вычислить проект {0}. Сбой вычисления со следующей ошибкой: {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf b/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf index 68c4dc0fa..f3031869b 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.tr.xlf @@ -590,17 +590,17 @@ The project or solution to operation on. If a file is not specified, the current directory is searched. - İşlem yapılacak proje veya çözüm. Bir dosya belirtilmezse, geçerli dizin aranır. + Üzerinde işlem yapılacak proje veya çözüm. Bir dosya belirtilmezse, geçerli dizin aranır. FRAMEWORK - FRAMEWORK + ÇERÇEVE Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - `{0}` projesi, iki projede hedeflenen çerçevelerin birbiriyle uyumsuz olması nedeniyle eklenemiyor. Lütfen eklemeye çalıştığınız projeyi inceleyin ve aşağıdaki hedeflerle uyumlu olduğunu doğrulayın: + `{0}` projesi, iki proje arasında uyumsuz çerçeveler hedeflendiğinden eklenemiyor. Lütfen eklemeye çalıştığınız projeyi gözden geçirin ve projenin aşağıdaki hedeflerle uyumlu olduğunu doğrulayın: diff --git a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf index e4b91db1e..ca37592be 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hans.xlf @@ -490,7 +490,7 @@ There are no {0} references in project {1}. ;; {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - 项目 {1} 中没有 {0} 引用。;; {0} 是正在请求的项类型(项目、包、p2p)且 {1} 是项目文件或解决方案文件上操作的对象。 + 项目 {1} 中没有 {0} 引用。;; {0} 是正在请求的项类型(项目、包、p2p)且 {1} 是在其上进行操作的对象(项目文件或解决方案文件)。 @@ -580,7 +580,7 @@ Found more than one solution file in {0}. Please specify which one to use. - 在 {0} 中找到多个解决方案文件。请指定使用哪一个。 + {0} 中找到多个解决方案文件。请指定使用哪一个。 @@ -600,7 +600,7 @@ Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - 由于两个项目之间的目标框架不兼容,无法添加项目“{0}”。请检查要添加的项目,并验证是否与以下目标兼容: + 由于两个项目之间的目标框架不兼容,因此无法添加项目“{0}”。请审阅正在尝试添加的项目,验证其是否与以下目标兼容: @@ -611,7 +611,7 @@ Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - 无法评估项目“{0}”。评估失败,出现以下错误: + 无法评估项目“{0}”。评估失败,出现以下错误: {1} diff --git a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf index 81e977f62..a64b81acc 100644 --- a/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf +++ b/src/dotnet/xlf/CommonLocalizableStrings.zh-Hant.xlf @@ -565,7 +565,7 @@ Mandatory parameter {0} missing for template {1}. - 遺漏範本 {1} 的強制參數 {0}。 + 範本 {1} 遺漏強制參數 {0}。 @@ -575,7 +575,7 @@ Required command was not provided. - 未提供所需的命令。 + 未提供必要命令。 @@ -590,28 +590,28 @@ The project or solution to operation on. If a file is not specified, the current directory is searched. - 要運作的專案或解決方案。若未指定檔案,即會搜尋目前目錄。 + 要操作的專案或解決方案。若未指定檔案,即會搜尋目前目錄。 FRAMEWORK - 架構 + FRAMEWORK Project `{0}` cannot be added due to incompatible targeted frameworks between the two projects. Please review the project you are trying to add and verify that is compatible with the following targets: - 因為兩個專案間的目標 Framework 不相容,所以無法新增專案 `{0}`。請檢閱您嘗試新增的專案,並驗證其與下列目標相容: + 因為兩個專案之前的目標 Framework 不相容,所以無法新增專案 `{0}`。請檢閱您嘗試新增的專案,並驗證該專案與下列目標相容: Project `{0}` does not target framework `{1}`. - 專案 `{0}` 並未將架構 `{1}` 作為目標。 + 專案 `{0}` 未將架構 `{1}` 設為目標。 Project `{0}` could not be evaluated. Evaluation failed with following error: {1} - 無法評估專案 `{0}`。評估失敗,錯誤如下: + 無法評估專案 `{0}`。評估失敗,發生下列錯誤: {1} diff --git a/src/dotnet/xlf/LocalizableStrings.cs.xlf b/src/dotnet/xlf/LocalizableStrings.cs.xlf index 9b310d877..04fa7fafe 100644 --- a/src/dotnet/xlf/LocalizableStrings.cs.xlf +++ b/src/dotnet/xlf/LocalizableStrings.cs.xlf @@ -555,7 +555,7 @@ There are no {0} references in project {1}. ;; {0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). - Projekt {1} neobsahuje odkazy na {0}. ;; {0} je typ požadované položky (projekt, balíček p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). + Projekt {1} neobsahuje odkazy na {0}. ;; {0} je typ požadované položky (projekt, balíček, p2p) a {1} je používaný objekt (soubor projektu nebo soubor řešení). diff --git a/src/dotnet/xlf/LocalizableStrings.it.xlf b/src/dotnet/xlf/LocalizableStrings.it.xlf index dd3c23cae..25ba8a2cf 100644 --- a/src/dotnet/xlf/LocalizableStrings.it.xlf +++ b/src/dotnet/xlf/LocalizableStrings.it.xlf @@ -620,12 +620,12 @@ Specified name {0} already exists. Please specify a different name. - Il nome specificato {0} esiste già. Specificarne uno diverso. + Il nome specificato {0} esiste già. Specificare un nome diverso. Specified alias {0} already exists. Please specify a different alias. - L'alias specificato {0} esiste già. Specificarne uno diverso. + L'alias specificato {0} esiste già. Specificare un alias diverso. From dcbfa163806acadb9161e4cbf2302f705bd8fe7a Mon Sep 17 00:00:00 2001 From: Eric Erhardt Date: Fri, 6 Jan 2017 11:03:38 -0600 Subject: [PATCH 76/94] Add SharedFx 1.1 templates for C# console and web. --- .../CSharp_Console1.1/$projectName$.csproj | 12 + .../dotnet-new/CSharp_Console1.1/Program.cs | 9 + .../CSharp_Web1.1/$projectName$.csproj | 29 + .../dotnet-new/CSharp_Web1.1/.bowerrc | 3 + .../Controllers/HomeController.cs | 35 + .../dotnet-new/CSharp_Web1.1/Program.cs | 24 + .../dotnet-new/CSharp_Web1.1/Startup.cs | 60 + .../CSharp_Web1.1/Views/Home/About.cshtml | 7 + .../CSharp_Web1.1/Views/Home/Contact.cshtml | 17 + .../CSharp_Web1.1/Views/Home/Index.cshtml | 109 + .../CSharp_Web1.1/Views/Shared/Error.cshtml | 14 + .../CSharp_Web1.1/Views/Shared/_Layout.cshtml | 67 + .../CSharp_Web1.1/Views/_ViewImports.cshtml | 2 + .../CSharp_Web1.1/Views/_ViewStart.cshtml | 3 + .../dotnet-new/CSharp_Web1.1/appsettings.json | 10 + .../dotnet-new/CSharp_Web1.1/bower.json | 10 + .../CSharp_Web1.1/bundleconfig.json | 24 + .../dotnet-new/CSharp_Web1.1/web.config | 14 + .../CSharp_Web1.1/wwwroot/_references.js | 6 + .../CSharp_Web1.1/wwwroot/css/site.css | 38 + .../CSharp_Web1.1/wwwroot/css/site.min.css | 1 + .../CSharp_Web1.1/wwwroot/favicon.ico | Bin 0 -> 32038 bytes .../CSharp_Web1.1/wwwroot/images/banner1.svg | 1 + .../CSharp_Web1.1/wwwroot/images/banner2.svg | 1 + .../CSharp_Web1.1/wwwroot/images/banner3.svg | 1 + .../CSharp_Web1.1/wwwroot/images/banner4.svg | 1 + .../CSharp_Web1.1/wwwroot/js/site.js | 1 + .../CSharp_Web1.1/wwwroot/js/site.min.js | 0 .../wwwroot/lib/bootstrap/.bower.json | 44 + .../wwwroot/lib/bootstrap/LICENSE | 21 + .../bootstrap/dist/css/bootstrap-theme.css | 587 + .../dist/css/bootstrap-theme.css.map | 1 + .../dist/css/bootstrap-theme.min.css | 6 + .../dist/css/bootstrap-theme.min.css.map | 1 + .../lib/bootstrap/dist/css/bootstrap.css | 6760 ++++++++++++ .../lib/bootstrap/dist/css/bootstrap.css.map | 1 + .../lib/bootstrap/dist/css/bootstrap.min.css | 6 + .../bootstrap/dist/css/bootstrap.min.css.map | 1 + .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20127 bytes .../fonts/glyphicons-halflings-regular.svg | 288 + .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 45404 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23424 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 0 -> 18028 bytes .../lib/bootstrap/dist/js/bootstrap.js | 2363 ++++ .../lib/bootstrap/dist/js/bootstrap.min.js | 7 + .../wwwroot/lib/bootstrap/dist/js/npm.js | 13 + .../jquery-validation-unobtrusive/.bower.json | 44 + .../jquery.validate.unobtrusive.js | 416 + .../jquery.validate.unobtrusive.min.js | 5 + .../wwwroot/lib/jquery-validation/.bower.json | 40 + .../wwwroot/lib/jquery-validation/LICENSE.md | 22 + .../dist/additional-methods.js | 998 ++ .../dist/additional-methods.min.js | 4 + .../jquery-validation/dist/jquery.validate.js | 1398 +++ .../dist/jquery.validate.min.js | 4 + .../wwwroot/lib/jquery/.bower.json | 25 + .../wwwroot/lib/jquery/LICENSE.txt | 36 + .../wwwroot/lib/jquery/dist/jquery.js | 9831 +++++++++++++++++ .../wwwroot/lib/jquery/dist/jquery.min.js | 4 + .../wwwroot/lib/jquery/dist/jquery.min.map | 1 + src/dotnet/commands/dotnet-new/Program.cs | 122 +- src/dotnet/dotnet.csproj | 6 +- 62 files changed, 23465 insertions(+), 89 deletions(-) create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Console1.1/$projectName$.csproj create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Console1.1/Program.cs create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/$projectName$.csproj create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/.bowerrc create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Controllers/HomeController.cs create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Program.cs create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Startup.cs create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/About.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Contact.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Index.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/Error.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/_Layout.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewImports.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewStart.cshtml create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/appsettings.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/bower.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/bundleconfig.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/web.config create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/_references.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.css create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.min.css create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/favicon.ico create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner1.svg create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner2.svg create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner3.svg create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner4.svg create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.min.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/.bower.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/LICENSE create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css.map create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css.map create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.svg create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/js/bootstrap.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/js/npm.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation-unobtrusive/.bower.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation/.bower.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation/LICENSE.md create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation/dist/additional-methods.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation/dist/additional-methods.min.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation/dist/jquery.validate.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery-validation/dist/jquery.validate.min.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery/.bower.json create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery/LICENSE.txt create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery/dist/jquery.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery/dist/jquery.min.js create mode 100644 src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/jquery/dist/jquery.min.map diff --git a/src/dotnet/commands/dotnet-new/CSharp_Console1.1/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Console1.1/$projectName$.csproj new file mode 100644 index 000000000..2b14f7c95 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Console1.1/$projectName$.csproj @@ -0,0 +1,12 @@ + + + + Exe + netcoreapp1.1 + + + + + + + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Console1.1/Program.cs b/src/dotnet/commands/dotnet-new/CSharp_Console1.1/Program.cs new file mode 100644 index 000000000..c81448f54 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Console1.1/Program.cs @@ -0,0 +1,9 @@ +using System; + +class Program +{ + static void Main(string[] args) + { + Console.WriteLine("Hello World!"); + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/$projectName$.csproj b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/$projectName$.csproj new file mode 100644 index 000000000..0bb135b53 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/$projectName$.csproj @@ -0,0 +1,29 @@ + + + Exe + netcoreapp1.1 + true + + + + $(PackageTargetFallback);portable-net45+win8+wp8+wpa81; + + + + + + + + + + + + + + + + + + + + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/.bowerrc b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/.bowerrc new file mode 100644 index 000000000..6406626ab --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/.bowerrc @@ -0,0 +1,3 @@ +{ + "directory": "wwwroot/lib" +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Controllers/HomeController.cs b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Controllers/HomeController.cs new file mode 100644 index 000000000..e108cae21 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Controllers/HomeController.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; + +namespace MvcApp.Controllers +{ + public class HomeController : Controller + { + public IActionResult Index() + { + return View(); + } + + public IActionResult About() + { + ViewData["Message"] = "Your application description page."; + + return View(); + } + + public IActionResult Contact() + { + ViewData["Message"] = "Your contact page."; + + return View(); + } + + public IActionResult Error() + { + return View(); + } + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Program.cs b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Program.cs new file mode 100644 index 000000000..bffea0a4a --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Program.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Hosting; + +namespace MvcApp +{ + public class Program + { + public static void Main(string[] args) + { + var host = new WebHostBuilder() + .UseKestrel() + .UseContentRoot(Directory.GetCurrentDirectory()) + .UseIISIntegration() + .UseStartup() + .Build(); + + host.Run(); + } + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Startup.cs b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Startup.cs new file mode 100644 index 000000000..4be726474 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Startup.cs @@ -0,0 +1,60 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; + +namespace MvcApp +{ + public class Startup + { + public Startup(IHostingEnvironment env) + { + var builder = new ConfigurationBuilder() + .SetBasePath(env.ContentRootPath) + .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true) + .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true) + .AddEnvironmentVariables(); + Configuration = builder.Build(); + } + + public IConfigurationRoot Configuration { get; } + + // This method gets called by the runtime. Use this method to add services to the container. + public void ConfigureServices(IServiceCollection services) + { + // Add framework services. + services.AddMvc(); + } + + // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. + public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) + { + loggerFactory.AddConsole(Configuration.GetSection("Logging")); + loggerFactory.AddDebug(); + + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); + app.UseBrowserLink(); + } + else + { + app.UseExceptionHandler("/Home/Error"); + } + + app.UseStaticFiles(); + + app.UseMvc(routes => + { + routes.MapRoute( + name: "default", + template: "{controller=Home}/{action=Index}/{id?}"); + }); + } + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/About.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/About.cshtml new file mode 100644 index 000000000..50476d1fb --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/About.cshtml @@ -0,0 +1,7 @@ +@{ + ViewData["Title"] = "About"; +} +

@ViewData["Title"].

+

@ViewData["Message"]

+ +

Use this area to provide additional information.

diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Contact.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Contact.cshtml new file mode 100644 index 000000000..15c12c6d1 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Contact.cshtml @@ -0,0 +1,17 @@ +@{ + ViewData["Title"] = "Contact"; +} +

@ViewData["Title"].

+

@ViewData["Message"]

+ +
+ One Microsoft Way
+ Redmond, WA 98052-6399
+ P: + 425.555.0100 +
+ +
+ Support: Support@example.com
+ Marketing: Marketing@example.com +
diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Index.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Index.cshtml new file mode 100644 index 000000000..39326c038 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Home/Index.cshtml @@ -0,0 +1,109 @@ +@{ + ViewData["Title"] = "Home Page"; +} + + + + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/Error.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/Error.cshtml new file mode 100644 index 000000000..e514139c4 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/Error.cshtml @@ -0,0 +1,14 @@ +@{ + ViewData["Title"] = "Error"; +} + +

Error.

+

An error occurred while processing your request.

+ +

Development Mode

+

+ Swapping to Development environment will display more detailed information about the error that occurred. +

+

+ Development environment should not be enabled in deployed applications, as it can result in sensitive information from exceptions being displayed to end users. For local debugging, development environment can be enabled by setting the ASPNETCORE_ENVIRONMENT environment variable to Development, and restarting the application. +

diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/_Layout.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/_Layout.cshtml new file mode 100644 index 000000000..279e2de30 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/Shared/_Layout.cshtml @@ -0,0 +1,67 @@ + + + + + + @ViewData["Title"] - MvcApp + + + + + + + + + + + + +
+ @RenderBody() +
+
+

© 2016 - MvcApp

+
+
+ + + + + + + + + + + + + @RenderSection("scripts", required: false) + + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewImports.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewImports.cshtml new file mode 100644 index 000000000..f88d7ec05 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewImports.cshtml @@ -0,0 +1,2 @@ +@using MvcApp +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewStart.cshtml b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewStart.cshtml new file mode 100644 index 000000000..a5f10045d --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/Views/_ViewStart.cshtml @@ -0,0 +1,3 @@ +@{ + Layout = "_Layout"; +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/appsettings.json b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/appsettings.json new file mode 100644 index 000000000..fa8ce71a9 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/appsettings.json @@ -0,0 +1,10 @@ +{ + "Logging": { + "IncludeScopes": false, + "LogLevel": { + "Default": "Debug", + "System": "Information", + "Microsoft": "Information" + } + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/bower.json b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/bower.json new file mode 100644 index 000000000..69159b666 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/bower.json @@ -0,0 +1,10 @@ +{ + "name": "asp.net", + "private": true, + "dependencies": { + "bootstrap": "3.3.6", + "jquery": "2.2.0", + "jquery-validation": "1.14.0", + "jquery-validation-unobtrusive": "3.2.6" + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/bundleconfig.json b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/bundleconfig.json new file mode 100644 index 000000000..6d3f9a57a --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/bundleconfig.json @@ -0,0 +1,24 @@ +// Configure bundling and minification for the project. +// More info at https://go.microsoft.com/fwlink/?LinkId=808241 +[ + { + "outputFileName": "wwwroot/css/site.min.css", + // An array of relative input file paths. Globbing patterns supported + "inputFiles": [ + "wwwroot/css/site.css" + ] + }, + { + "outputFileName": "wwwroot/js/site.min.js", + "inputFiles": [ + "wwwroot/js/site.js" + ], + // Optionally specify minification options + "minify": { + "enabled": true, + "renameLocals": true + }, + // Optionally generate .map file + "sourceMap": false + } +] diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/web.config b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/web.config new file mode 100644 index 000000000..b70ce7e43 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/web.config @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/_references.js b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/_references.js new file mode 100644 index 000000000..b6fe9d626 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/_references.js @@ -0,0 +1,6 @@ +/// +/// +/// +/// +/// +/// diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.css b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.css new file mode 100644 index 000000000..a157770cb --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.css @@ -0,0 +1,38 @@ +body { + padding-top: 50px; + padding-bottom: 20px; +} + +/* Wrapping element */ +/* Set some basic padding to keep content from hitting the edges */ +.body-content { + padding-left: 15px; + padding-right: 15px; +} + +/* Set widths on the form inputs since otherwise they're 100% wide */ +input, +select, +textarea { + max-width: 280px; +} + +/* Carousel */ +.carousel-caption p { + font-size: 20px; + line-height: 1.4; +} + +/* Make .svg files in the carousel display properly in older browsers */ +.carousel-inner .item img[src$=".svg"] +{ + width: 100%; +} + +/* Hide/rearrange for smaller screens */ +@media screen and (max-width: 767px) { + /* Hide captions */ + .carousel-caption { + display: none + } +} diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.min.css b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.min.css new file mode 100644 index 000000000..3beb45f52 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/css/site.min.css @@ -0,0 +1 @@ +body{padding-top:50px;padding-bottom:20px}.body-content{padding-left:15px;padding-right:15px}input,select,textarea{max-width:280px}.carousel-caption p{font-size:20px;line-height:1.4}.carousel-inner .item img[src$=".svg"]{width:100%}@media screen and (max-width:767px){.carousel-caption{display:none}} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/favicon.ico b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..a3a799985c43bc7309d701b2cad129023377dc71 GIT binary patch literal 32038 zcmeHwX>eTEbtY7aYbrGrkNjgie?1jXjZ#zP%3n{}GObKv$BxI7Sl;Bwl5E+Qtj&t8 z*p|m4DO#HoJC-FyvNnp8NP<{Na0LMnTtO21(rBP}?EAiNjWgeO?z`{3ZoURUQlV2d zY1Pqv{m|X_oO91|?^z!6@@~od!@OH>&BN;>c@O+yUfy5w>LccTKJJ&`-k<%M^Zvi( z<$dKp=jCnNX5Qa+M_%6g|IEv~4R84q9|7E=|Ho(Wz3f-0wPjaRL;W*N^>q%^KGRr7 zxbjSORb_c&eO;oV_DZ7ua!sPH=0c+W;`vzJ#j~-x3uj};50#vqo*0w4!LUqs*UCh9 zvy2S%$#8$K4EOa&e@~aBS65_hc~Mpu=454VT2^KzWqEpBA=ME|O;1cn?8p<+{MKJf zbK#@1wzL44m$k(?85=Obido7=C|xWKe%66$z)NrzRwR>?hK?_bbwT z@Da?lBrBL}Zemo1@!9pYRau&!ld17h{f+UV0sY(R{ET$PBB|-=Nr@l-nY6w8HEAw* zRMIQU`24Jl_IFEPcS=_HdrOP5yf81z_?@M>83Vv65$QFr9nPg(wr`Ke8 zaY4ogdnMA*F7a4Q1_uXadTLUpCk;$ZPRRJ^sMOch;rlbvUGc1R9=u;dr9YANbQ<4Z z#P|Cp9BP$FXNPolgyr1XGt$^lFPF}rmBF5rj1Kh5%dforrP8W}_qJL$2qMBS-#%-|s#BPZBSETsn_EBYcr(W5dq( z@f%}C|iN7)YN`^)h7R?Cg}Do*w-!zwZb9=BMp%Wsh@nb22hA zA{`wa8Q;yz6S)zfo%sl08^GF`9csI9BlGnEy#0^Y3b);M+n<(}6jziM7nhe57a1rj zC@(2ISYBL^UtWChKzVWgf%4LW2Tqg_^7jMw`C$KvU+mcakFjV(BGAW9g%CzSyM;Df z143=mq0oxaK-H;o>F3~zJ<(3-j&?|QBn)WJfP#JR zRuA;`N?L83wQt78QIA$(Z)lGQY9r^SFal;LB^qi`8%8@y+mwcGsf~nv)bBy2S7z~9 z=;X@Gglk)^jpbNz?1;`!J3QUfAOp4U$Uxm5>92iT`mek#$>s`)M>;e4{#%HAAcb^8_Ax%ersk|}# z0bd;ZPu|2}18KtvmIo8`1@H~@2ejwo(5rFS`Z4&O{$$+ch2hC0=06Jh`@p+p8LZzY z&2M~8T6X^*X?yQ$3N5EzRv$(FtSxhW>>ABUyp!{484f8(%C1_y)3D%Qgfl_!sz`LTXOjR&L!zPA0qH_iNS!tY{!^2WfD%uT}P zI<~&?@&))5&hPPHVRl9);TPO>@UI2d!^ksb!$9T96V(F){puTsn(}qt_WXNw4VvHj zf;6A_XCvE`Z@}E-IOaG0rs>K>^=Sr&OgT_p;F@v0VCN0Y$r|Lw1?Wjt`AKK~RT*kJ z2>QPuVgLNcF+XKno;WBv$yj@d_WFJbl*#*V_Cwzo@%3n5%z4g21G*PVZ)wM5$A{klYozmGlB zT@u2+s}=f}25%IA!yNcXUr!!1)z(Nqbhojg0lv@7@0UlvUMT)*r;M$d0-t)Z?B1@qQk()o!4fqvfr_I0r7 zy1(NdkHEj#Yu{K>T#We#b#FD=c1XhS{hdTh9+8gy-vkcdkk*QS@y(xxEMb1w6z<^~ zYcETGfB#ibR#ql0EiD;PR$L&Vrh2uRv5t_$;NxC;>7_S5_OXxsi8udY3BUUdi55Sk zcyKM+PQ9YMA%D1kH1q48OFG(Gbl=FmV;yk8o>k%0$rJ8%-IYsHclnYuTskkaiCGkUlkMY~mx&K}XRlKIW;odWIeuKjtbc^8bBOTqK zjj(ot`_j?A6y_h%vxE9o*ntx#PGrnK7AljD_r58ylE*oy@{IY%+mA^!|2vW_`>`aC{#3`#3;D_$^S^cM zRcF+uTO2sICledvFgNMU@A%M)%8JbSLq{dD|2|2Sg8vvh_uV6*Q?F&rKaV{v_qz&y z`f;stIb?Cb2!Cg7CG91Bhu@D@RaIrq-+o+T2fwFu#|j>lD6ZS9-t^5cx>p|?flqUA z;Cgs#V)O#`Aw4$Kr)L5?|7f4izl!;n0jux}tEW$&&YBXz9o{+~HhoiYDJ`w5BVTl&ARya=M7zdy$FEe}iGBur8XE>rhLj&_yDk5D4n2GJZ07u7%zyAfNtOLn;)M?h*Py-Xtql5aJOtL4U8e|!t? z((sc6&OJXrPdVef^wZV&x=Z&~uA7^ix8rly^rEj?#d&~pQ{HN8Yq|fZ#*bXn-26P^ z5!)xRzYO9{u6vx5@q_{FE4#7BipS#{&J7*>y}lTyV94}dfE%Yk>@@pDe&F7J09(-0|wuI|$of-MRfK51#t@t2+U|*s=W; z!Y&t{dS%!4VEEi$efA!#<<7&04?kB}Soprd8*jYv;-Qj~h~4v>{XX~kjF+@Z7<t?^|i z#>_ag2i-CRAM8Ret^rZt*^K?`G|o>1o(mLkewxyA)38k93`<~4VFI?5VB!kBh%NNU zxb8K(^-MU1ImWQxG~nFB-Un;6n{lQz_FfsW9^H$Xcn{;+W^ZcG$0qLM#eNV=vGE@# z1~k&!h4@T|IiI<47@pS|i?Qcl=XZJL#$JKve;booMqDUYY{(xcdj6STDE=n?;fsS1 ze`h~Q{CT$K{+{t+#*I1=&&-UU8M&}AwAxD-rMa=e!{0gQXP@6azBq9(ji11uJF%@5 zCvV`#*?;ZguQ7o|nH%bm*s&jLej#@B35gy32ZAE0`Pz@#j6R&kN5w{O4~1rhDoU zEBdU)%Nl?8zi|DR((u|gg~r$aLYmGMyK%FO*qLvwxK5+cn*`;O`16c!&&XT{$j~5k zXb^fbh1GT-CI*Nj{-?r7HNg=e3E{6rxuluPXY z5Nm8ktc$o4-^SO0|Es_sp!A$8GVwOX+%)cH<;=u#R#nz;7QsHl;J@a{5NUAmAHq4D zIU5@jT!h?kUp|g~iN*!>jM6K!W5ar0v~fWrSHK@})@6Lh#h)C6F6@)&-+C3(zO! z8+kV|B7LctM3DpI*~EYo>vCj>_?x&H;>y0*vKwE0?vi$CLt zfSJB##P|M2dEUDBPKW=9cY-F;L;h3Fs4E2ERdN#NSL7ctAC z?-}_a{*L@GA7JHJudxtDVA{K5Yh*k(%#x4W7w+^ zcb-+ofbT5ieG+@QG2lx&7!MyE2JWDP@$k`M;0`*d+oQmJ2A^de!3c53HFcfW_Wtv< zKghQ;*FifmI}kE4dc@1y-u;@qs|V75Z^|Q0l0?teobTE8tGl@EB?k#q_wUjypJ*R zyEI=DJ^Z+d*&}B_xoWvs27LtH7972qqMxVFcX9}c&JbeNCXUZM0`nQIkf&C}&skSt z^9fw@b^Hb)!^hE2IJq~~GktG#ZWwWG<`@V&ckVR&r=JAO4YniJewVcG`HF;59}=bf zLyz0uxf6MhuSyH#-^!ZbHxYl^mmBVrx) zyrb8sQ*qBd_WXm9c~Of$&ZP$b^)<~0%nt#7y$1Jg$e}WCK>TeUB{P>|b1FAB?%K7>;XiOfd}JQ`|IP#Vf%kVy zXa4;XFZ+>n;F>uX&3|4zqWK2u3c<>q;tzjsb1;d{u;L$-hq3qe@82(ob<3qom#%`+ z;vzYAs7TIMl_O75BXu|r`Qhc4UT*vN$3Oo0kAC!{f2#HexDy|qUpgTF;k{o6|L>7l z=?`=*LXaow1o;oNNLXsGTrvC)$R&{m=94Tf+2iTT3Y_Or z-!;^0a{kyWtO4vksG_3cyc7HQ0~detf0+2+qxq(e1NS251N}w5iTSrM)`0p8rem!j zZ56hGD=pHI*B+dd)2B`%|9f0goozCSeXPw3 z+58k~sI02Yz#lOneJzYcG)EB0|F+ggC6D|B`6}d0khAK-gz7U3EGT|M_9$ZINqZjwf>P zJCZ=ogSoE`=yV5YXrcTQZx@Un(64*AlLiyxWnCJ9I<5Nc*eK6eV1Mk}ci0*NrJ=t| zCXuJG`#7GBbPceFtFEpl{(lTm`LX=B_!H+& z>$*Hf}}y zkt@nLXFG9%v**s{z&{H4e?aqp%&l#oU8lxUxk2o%K+?aAe6jLojA& z_|J0<-%u^<;NT*%4)n2-OdqfctSl6iCHE?W_Q2zpJken#_xUJlidzs249H=b#g z?}L4-Tnp6)t_5X?_$v)vz`s9@^BME2X@w<>sKZ3=B{%*B$T5Nj%6!-Hr;I!Scj`lH z&2dHFlOISwWJ&S2vf~@I4i~(0*T%OFiuX|eD*nd2utS4$1_JM?zmp>a#CsVy6Er^z zeNNZZDE?R3pM?>~e?H_N`C`hy%m4jb;6L#8=a7l>3eJS2LGgEUxsau-Yh9l~o7=Yh z2mYg3`m5*3Ik|lKQf~euzZlCWzaN&=vHuHtOwK!2@W6)hqq$Zm|7`Nmu%9^F6UH?+ z@2ii+=iJ;ZzhiUKu$QB()nKk3FooI>Jr_IjzY6=qxYy;&mvi7BlQ?t4kRjIhb|2q? zd^K~{-^cxjVSj?!Xs=Da5IHmFzRj!Kzh~b!?`P7c&T9s77VLYB?8_?F zauM^)p;qFG!9PHLfIsnt43UnmV?Wn?Ki7aXSosgq;f?MYUuSIYwOn(5vWhb{f%$pn z4ySN-z}_%7|B);A@PA5k*7kkdr4xZ@s{e9j+9w;*RFm;XPDQwx%~;8iBzSKTIGKO z{53ZZU*OLr@S5=k;?CM^i#zkxs3Sj%z0U`L%q`qM+tP zX$aL;*^g$7UyM2Go+_4A+f)IQcy^G$h2E zb?nT$XlgTEFJI8GN6NQf%-eVn9mPilRqUbT$pN-|;FEjq@Ao&TxpZg=mEgBHB zU@grU;&sfmqlO=6|G3sU;7t8rbK$?X0y_v9$^{X`m4jZ_BR|B|@?ZCLSPPEzz`w1n zP5nA;4(kQFKm%$enjkkBxM%Y}2si&d|62L)U(dCzCGn56HN+i#6|nV-TGIo0;W;`( zW-y=1KF4dp$$mC_|6}pbb>IHoKQeZajXQB>jVR?u`R>%l1o54?6NnS*arpVopdEF; zeC5J3*M0p`*8lif;!irrcjC?(uExejsi~>4wKYwstGY^N@KY}TujLx`S=Cu+T=!dx zKWlPm->I**E{A*q-Z^FFT5$G%7Ij0_*Mo4-y6~RmyTzUB&lfae(WZfO>um}mnsDXPEbau-!13!!xd!qh*{C)6&bz0j1I{>y$D-S)b*)JMCPk!=~KL&6Ngin0p6MCOxF2L_R9t8N!$2Wpced<#`y!F;w zKTi5V_kX&X09wAIJ#anfg9Dhn0s7(C6Nj3S-mVn(i|C6ZAVq0$hE)874co};g z^hR7pe4lU$P;*ggYc4o&UTQC%liCXooIfkI3TNaBV%t~FRr}yHu7kjQ2J*3;e%;iW zvDVCh8=G80KAeyhCuY2LjrC!Od1rvF7h}zszxGV)&!)6ChP5WAjv-zQAMNJIG!JHS zwl?pLxC-V5II#(hQ`l)ZAp&M0xd4%cxmco*MIk?{BD=BK`1vpc}D39|XlV z{c&0oGdDa~TL2FT4lh=~1NL5O-P~0?V2#ie`v^CnANfGUM!b4F=JkCwd7Q`c8Na2q zJGQQk^?6w}Vg9-{|2047((lAV84uN%sK!N2?V(!_1{{v6rdgZl56f0zDMQ+q)jKzzu^ztsVken;=DjAh6G`Cw`Q4G+BjS+n*=KI~^K{W=%t zbD-rN)O4|*Q~@<#@1Vx$E!0W9`B~IZeFn87sHMXD>$M%|Bh93rdGf1lKoX3K651t&nhsl= zXxG|%@8}Bbrlp_u#t*DZX<}_0Yb{A9*1Pd_)LtqNwy6xT4pZrOY{s?N4)pPwT(i#y zT%`lRi8U#Ken4fw>H+N`{f#FF?ZxFlLZg7z7#cr4X>id z{9kUD`d2=w_Zlb{^c`5IOxWCZ1k<0T1D1Z31IU0Q2edsZ1K0xv$pQVYq2KEp&#v#Z z?{m@Lin;*Str(C2sfF^L>{R3cjY`~#)m>Wm$Y|1fzeS0-$(Q^z@} zEO*vlb-^XK9>w&Ef^=Zzo-1AFSP#9zb~X5_+){$(eB4K z8gtW+nl{q+CTh+>v(gWrsP^DB*ge(~Q$AGxJ-eYc1isti%$%nM<_&Ev?%|??PK`$p z{f-PM{Ym8k<$$)(F9)tqzFJ?h&Dk@D?Dt{4CHKJWLs8$zy6+(R)pr@0ur)xY{=uXFFzH_> z-F^tN1y(2hG8V)GpDg%wW0Px_ep~nIjD~*HCSxDi0y`H!`V*~RHs^uQsb1*bK1qGpmd zB1m`Cjw0`nLBF2|umz+a#2X$c?Lj;M?Lj;MUp*d>7j~ayNAyj@SLpeH`)BgRH}byy zyQSat!;U{@O(<<2fp&oQkIy$z`_CQ-)O@RN;QD9T4y|wIJ^%U#(BF%=`i49}j!D-) zkOwPSJaG03SMkE~BzW}b_v>LA&y)EEYO6sbdnTX*$>UF|JhZ&^MSb4}Tgbne_4n+C zwI8U4i~PI>7a3{kVa8|))*%C0|K+bIbmV~a`|G#+`TU#g zXW;bWIcWsQi9c4X*RUDpIfyoPY)2bI-r9)xulm1CJDkQd6u+f)_N=w1ElgEBjprPF z3o?Ly0RVeY_{3~fPVckRMxe2lM8hj!B8F)JO z!`AP6>u>5Y&3o9t0QxBpNE=lJx#NyIbp1gD zzUYBIPYHIv9ngk-Zt~<)62^1Zs1LLYMh@_tP^I7EX-9)Ed0^@y{k65Gp0KRcTmMWw zU|+)qx{#q0SL+4q?Q`i0>COIIF8a0Cf&C`hbMj?LmG9K&iW-?PJt*u)38tTXAP>@R zZL6uH^!RYNq$p>PKz7f-zvg>OKXcZ8h!%Vo@{VUZp|+iUD_xb(N~G|6c#oQK^nHZU zKg#F6<)+`rf~k*Xjjye+syV{bwU2glMMMs-^ss4`bYaVroXzn`YQUd__UlZL_mLs z(vO}k!~(mi|L+(5&;>r<;|OHnbXBE78LruP;{yBxZ6y7K3)nMo-{6PCI7gQi6+rF_ zkPod!Z8n}q46ykrlQS|hVB(}(2Kf7BCZ>Vc;V>ccbk2~NGaf6wGQH@W9&?Zt3v(h*P4xDrN>ex7+jH*+Qg z%^jH$&+*!v{sQ!xkWN4+>|b}qGvEd6ANzgqoVy5Qfws}ef2QqF{iiR5{pT}PS&yjo z>lron#va-p=v;m>WB+XVz|o;UJFdjo5_!RRD|6W{4}A2a#bZv)gS_`b|KsSH)Sd_JIr%<%n06TX&t{&!H#{)?4W9hlJ`R1>FyugOh3=D_{einr zu(Wf`qTkvED+gEULO0I*Hs%f;&=`=X4;N8Ovf28x$A*11`dmfy2=$+PNqX>XcG`h% zJY&A6@&)*WT^rC(Caj}2+|X|6cICm5h0OK0cGB_!wEKFZJU)OQ+TZ1q2bTx9hxnq& z$9ee|f9|0M^)#E&Pr4)f?o&DMM4w>Ksb{hF(0|wh+5_{vPow{V%TFzU2za&gjttNi zIyR9qA56dX52Qbv2aY^g`U7R43-p`#sO1A=KS2aKgfR+Yu^bQ*i-qu z%0mP;Ap)B~zZgO9lG^`325gOf?iUHF{~7jyGC)3L(eL(SQ70VzR~wLN18tnx(Cz2~ zctBl1kI)wAe+cxWHw*NW-d;=pd+>+wd$a@GBju*wFvabSaPtHiT!o#QFC+wBVwYo3s=y;z1jM+M=Fj!FZM>UzpL-eZzOT( zhmZmEfWa=%KE#V3-ZK5#v!Hzd{zc^{ctF~- z>DT-U`}5!fk$aj24`#uGdB7r`>oX5tU|d*b|N3V1lXmv%MGrvE(dXG)^-J*LA>$LE z7kut4`zE)v{@Op|(|@i#c>tM!12FQh?}PfA0`Bp%=%*RiXVzLDXnXtE@4B)5uR}a> zbNU}q+712pIrM`k^odG8dKtG$zwHmQI^c}tfjx5?egx3!e%JRm_64e+>`Ra1IRfLb z1KQ`SxmH{cZfyVS5m(&`{V}Y4j6J{b17`h6KWqZ&hfc(oR zxM%w!$F(mKy05kY&lco3%zvLCxBW+t*rxO+i=qGMvobx0-<7`VUu)ka`){=ew+Ovt zg%52_{&UbkUA8aJPWsk)gYWV4`dnxI%s?7^fGpq{ZQuu=VH{-t7w~K%_E<8`zS;V- zKTho*>;UQQul^1GT^HCt@I-q?)&4!QDgBndn?3sNKYKCQFU4LGKJ$n@Je$&w9@E$X z^p@iJ(v&`1(tq~1zc>0Vow-KR&vm!GUzT?Eqgnc)leZ9p)-Z*C!zqb=-$XG0 z^!8RfuQs5s>Q~qcz92(a_Q+KH?C*vCTr~UdTiR`JGuNH8v(J|FTiSEcPrBpmHRtmd zI2Jng0J=bXK);YY^rM?jzn?~X-Pe`GbAy{D)Y6D&1GY-EBcy%Bq?bKh?A>DD9DD!p z?{q02wno2sraGUkZv5dx+J8)&K$)No43Zr(*S`FEdL!4C)}WE}vJd%{S6-3VUw>Wp z?Aasv`T0^%P$2vE?L+Qhj~qB~K%eW)xH(=b_jU}TLD&BP*Pc9hz@Z=e0nkpLkWl}> z_5J^i(9Z7$(XG9~I3sY)`OGZ#_L06+Dy4E>UstcP-rU@xJ$&rxvo!n1Ao`P~KLU-8 z{zDgN4-&A6N!kPSYbQ&7sLufi`YtE2uN$S?e&5n>Y4(q#|KP!cc1j)T^QrUXMPFaP z_SoYO8S8G}Z$?AL4`;pE?7J5K8yWqy23>cCT2{=-)+A$X^-I9=e!@J@A&-;Ufc)`H}c(VI&;0x zrrGv()5mjP%jXzS{^|29?bLNXS0bC%p!YXI!;O457rjCEEzMkGf~B3$T}dXBO23tP z+Ci>;5UoM?C@bU@f9G1^X3=ly&ZeFH<@|RnOG--A&)fd)AUgjw?%izq{p(KJ`EP0v z2mU)P!+3t@X14DA=E2RR-|p${GZ9ETX=d+kJRZL$nSa0daI@&oUUxnZg0xd_xu>Vz lzF#z5%kSKX?YLH3ll^(hI(_`L*t#Iva2Ede*Z;>H_ \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner2.svg b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner2.svg new file mode 100644 index 000000000..9679c604d --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner3.svg b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner3.svg new file mode 100644 index 000000000..9be2c2503 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner3.svg @@ -0,0 +1 @@ +banner3b \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner4.svg b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner4.svg new file mode 100644 index 000000000..38b3d7cd1 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/images/banner4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.js b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.js new file mode 100644 index 000000000..82ecce7b4 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.js @@ -0,0 +1 @@ +// Write your Javascript code. diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.min.js b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/js/site.min.js new file mode 100644 index 000000000..e69de29bb diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/.bower.json b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/.bower.json new file mode 100644 index 000000000..e37d6cab3 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/.bower.json @@ -0,0 +1,44 @@ +{ + "name": "bootstrap", + "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", + "keywords": [ + "css", + "js", + "less", + "mobile-first", + "responsive", + "front-end", + "framework", + "web" + ], + "homepage": "http://getbootstrap.com", + "license": "MIT", + "moduleType": "globals", + "main": [ + "less/bootstrap.less", + "dist/js/bootstrap.js" + ], + "ignore": [ + "/.*", + "_config.yml", + "CNAME", + "composer.json", + "CONTRIBUTING.md", + "docs", + "js/tests", + "test-infra" + ], + "dependencies": { + "jquery": "1.9.1 - 2" + }, + "version": "3.3.6", + "_release": "3.3.6", + "_resolution": { + "type": "version", + "tag": "v3.3.6", + "commit": "81df608a40bf0629a1dc08e584849bb1e43e0b7a" + }, + "_source": "git://github.com/twbs/bootstrap.git", + "_target": "3.3.6", + "_originalSource": "bootstrap" +} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/LICENSE b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/LICENSE new file mode 100644 index 000000000..f4c52d6a4 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2011-2015 Twitter, Inc + +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. diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css new file mode 100644 index 000000000..ebe57fbf6 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css @@ -0,0 +1,587 @@ +/*! + * Bootstrap v3.3.6 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +.btn-default, +.btn-primary, +.btn-success, +.btn-info, +.btn-warning, +.btn-danger { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); +} +.btn-default:active, +.btn-primary:active, +.btn-success:active, +.btn-info:active, +.btn-warning:active, +.btn-danger:active, +.btn-default.active, +.btn-primary.active, +.btn-success.active, +.btn-info.active, +.btn-warning.active, +.btn-danger.active { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-default.disabled, +.btn-primary.disabled, +.btn-success.disabled, +.btn-info.disabled, +.btn-warning.disabled, +.btn-danger.disabled, +.btn-default[disabled], +.btn-primary[disabled], +.btn-success[disabled], +.btn-info[disabled], +.btn-warning[disabled], +.btn-danger[disabled], +fieldset[disabled] .btn-default, +fieldset[disabled] .btn-primary, +fieldset[disabled] .btn-success, +fieldset[disabled] .btn-info, +fieldset[disabled] .btn-warning, +fieldset[disabled] .btn-danger { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default .badge, +.btn-primary .badge, +.btn-success .badge, +.btn-info .badge, +.btn-warning .badge, +.btn-danger .badge { + text-shadow: none; +} +.btn:active, +.btn.active { + background-image: none; +} +.btn-default { + text-shadow: 0 1px 0 #fff; + background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); + background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #dbdbdb; + border-color: #ccc; +} +.btn-default:hover, +.btn-default:focus { + background-color: #e0e0e0; + background-position: 0 -15px; +} +.btn-default:active, +.btn-default.active { + background-color: #e0e0e0; + border-color: #dbdbdb; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #e0e0e0; + background-image: none; +} +.btn-primary { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); + background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #245580; +} +.btn-primary:hover, +.btn-primary:focus { + background-color: #265a88; + background-position: 0 -15px; +} +.btn-primary:active, +.btn-primary.active { + background-color: #265a88; + border-color: #245580; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #265a88; + background-image: none; +} +.btn-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #3e8f3e; +} +.btn-success:hover, +.btn-success:focus { + background-color: #419641; + background-position: 0 -15px; +} +.btn-success:active, +.btn-success.active { + background-color: #419641; + border-color: #3e8f3e; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #419641; + background-image: none; +} +.btn-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #28a4c9; +} +.btn-info:hover, +.btn-info:focus { + background-color: #2aabd2; + background-position: 0 -15px; +} +.btn-info:active, +.btn-info.active { + background-color: #2aabd2; + border-color: #28a4c9; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #2aabd2; + background-image: none; +} +.btn-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #e38d13; +} +.btn-warning:hover, +.btn-warning:focus { + background-color: #eb9316; + background-position: 0 -15px; +} +.btn-warning:active, +.btn-warning.active { + background-color: #eb9316; + border-color: #e38d13; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #eb9316; + background-image: none; +} +.btn-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-color: #b92c28; +} +.btn-danger:hover, +.btn-danger:focus { + background-color: #c12e2a; + background-position: 0 -15px; +} +.btn-danger:active, +.btn-danger.active { + background-color: #c12e2a; + border-color: #b92c28; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #c12e2a; + background-image: none; +} +.thumbnail, +.img-thumbnail { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + background-color: #e8e8e8; + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + background-color: #2e6da4; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.navbar-default { + background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); + background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); + background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); +} +.navbar-brand, +.navbar-nav > li > a { + text-shadow: 0 1px 0 rgba(255, 255, 255, .25); +} +.navbar-inverse { + background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); + background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + background-repeat: repeat-x; + border-radius: 4px; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .active > a { + background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); + background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); + background-repeat: repeat-x; + -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); + box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); +} +.navbar-inverse .navbar-brand, +.navbar-inverse .navbar-nav > li > a { + text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); +} +.navbar-static-top, +.navbar-fixed-top, +.navbar-fixed-bottom { + border-radius: 0; +} +@media (max-width: 767px) { + .navbar .navbar-nav .open .dropdown-menu > .active > a, + .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; + } +} +.alert { + text-shadow: 0 1px 0 rgba(255, 255, 255, .2); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); +} +.alert-success { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); + background-repeat: repeat-x; + border-color: #b2dba1; +} +.alert-info { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); + background-repeat: repeat-x; + border-color: #9acfea; +} +.alert-warning { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); + background-repeat: repeat-x; + border-color: #f5e79e; +} +.alert-danger { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); + background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); + background-repeat: repeat-x; + border-color: #dca7a7; +} +.progress { + background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); + background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-success { + background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); + background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-info { + background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); + background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-warning { + background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); + background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-danger { + background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); + background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); + background-repeat: repeat-x; +} +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.list-group { + border-radius: 4px; + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); + box-shadow: 0 1px 2px rgba(0, 0, 0, .075); +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + text-shadow: 0 -1px 0 #286090; + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); + background-repeat: repeat-x; + border-color: #2b669a; +} +.list-group-item.active .badge, +.list-group-item.active:hover .badge, +.list-group-item.active:focus .badge { + text-shadow: none; +} +.panel { + -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); + box-shadow: 0 1px 2px rgba(0, 0, 0, .05); +} +.panel-default > .panel-heading { + background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); + background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); + background-repeat: repeat-x; +} +.panel-primary > .panel-heading { + background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); + background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); + background-repeat: repeat-x; +} +.panel-success > .panel-heading { + background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); + background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); + background-repeat: repeat-x; +} +.panel-info > .panel-heading { + background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); + background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); + background-repeat: repeat-x; +} +.panel-warning > .panel-heading { + background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); + background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); + background-repeat: repeat-x; +} +.panel-danger > .panel-heading { + background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); + background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); + background-repeat: repeat-x; +} +.well { + background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); + background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); + background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); + background-repeat: repeat-x; + border-color: #dcdcdc; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); +} +/*# sourceMappingURL=bootstrap-theme.css.map */ diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map new file mode 100644 index 000000000..21e19101e --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"AAAA;;;;GAIG;ACeH;;;;;;EAME,yCAAA;EC2CA,4FAAA;EACQ,oFAAA;CFvDT;ACgBC;;;;;;;;;;;;ECsCA,yDAAA;EACQ,iDAAA;CFxCT;ACMC;;;;;;;;;;;;;;;;;;ECiCA,yBAAA;EACQ,iBAAA;CFnBT;AC/BD;;;;;;EAuBI,kBAAA;CDgBH;ACyBC;;EAEE,uBAAA;CDvBH;AC4BD;EErEI,sEAAA;EACA,iEAAA;EACA,2FAAA;EAAA,oEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;EAuC2C,0BAAA;EAA2B,mBAAA;CDjBvE;ACpBC;;EAEE,0BAAA;EACA,6BAAA;CDsBH;ACnBC;;EAEE,0BAAA;EACA,sBAAA;CDqBH;ACfG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6BL;ACbD;EEtEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8DD;AC5DC;;EAEE,0BAAA;EACA,6BAAA;CD8DH;AC3DC;;EAEE,0BAAA;EACA,sBAAA;CD6DH;ACvDG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqEL;ACpDD;EEvEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CDsGD;ACpGC;;EAEE,0BAAA;EACA,6BAAA;CDsGH;ACnGC;;EAEE,0BAAA;EACA,sBAAA;CDqGH;AC/FG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6GL;AC3FD;EExEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8ID;AC5IC;;EAEE,0BAAA;EACA,6BAAA;CD8IH;AC3IC;;EAEE,0BAAA;EACA,sBAAA;CD6IH;ACvIG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqJL;AClID;EEzEI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CDsLD;ACpLC;;EAEE,0BAAA;EACA,6BAAA;CDsLH;ACnLC;;EAEE,0BAAA;EACA,sBAAA;CDqLH;AC/KG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CD6LL;ACzKD;EE1EI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EAEA,uHAAA;ECnBF,oEAAA;EH4CA,4BAAA;EACA,sBAAA;CD8ND;AC5NC;;EAEE,0BAAA;EACA,6BAAA;CD8NH;AC3NC;;EAEE,0BAAA;EACA,sBAAA;CD6NH;ACvNG;;;;;;;;;;;;;;;;;;EAME,0BAAA;EACA,uBAAA;CDqOL;AC1MD;;EClCE,mDAAA;EACQ,2CAAA;CFgPT;ACrMD;;EE3FI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF0FF,0BAAA;CD2MD;ACzMD;;;EEhGI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFgGF,0BAAA;CD+MD;ACtMD;EE7GI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ECnBF,oEAAA;EH+HA,mBAAA;ECjEA,4FAAA;EACQ,oFAAA;CF8QT;ACjND;;EE7GI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ED2CF,yDAAA;EACQ,iDAAA;CFwRT;AC9MD;;EAEE,+CAAA;CDgND;AC5MD;EEhII,sEAAA;EACA,iEAAA;EACA,2FAAA;EAAA,oEAAA;EACA,4BAAA;EACA,uHAAA;ECnBF,oEAAA;EHkJA,mBAAA;CDkND;ACrND;;EEhII,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;ED2CF,wDAAA;EACQ,gDAAA;CF+ST;AC/ND;;EAYI,0CAAA;CDuNH;AClND;;;EAGE,iBAAA;CDoND;AC/LD;EAfI;;;IAGE,YAAA;IE7JF,yEAAA;IACA,oEAAA;IACA,8FAAA;IAAA,uEAAA;IACA,4BAAA;IACA,uHAAA;GH+WD;CACF;AC3MD;EACE,8CAAA;EC3HA,2FAAA;EACQ,mFAAA;CFyUT;ACnMD;EEtLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CD+MD;AC1MD;EEvLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CDuND;ACjND;EExLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CD+ND;ACxND;EEzLI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EF8KF,sBAAA;CDuOD;ACxND;EEjMI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH4ZH;ACrND;EE3MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHmaH;AC3ND;EE5MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH0aH;ACjOD;EE7MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHibH;ACvOD;EE9MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHwbH;AC7OD;EE/MI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH+bH;AChPD;EElLI,8MAAA;EACA,yMAAA;EACA,sMAAA;CHqaH;AC5OD;EACE,mBAAA;EC9KA,mDAAA;EACQ,2CAAA;CF6ZT;AC7OD;;;EAGE,8BAAA;EEnOE,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFiOF,sBAAA;CDmPD;ACxPD;;;EAQI,kBAAA;CDqPH;AC3OD;ECnME,kDAAA;EACQ,0CAAA;CFibT;ACrOD;EE5PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHoeH;AC3OD;EE7PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CH2eH;ACjPD;EE9PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHkfH;ACvPD;EE/PI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHyfH;AC7PD;EEhQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHggBH;ACnQD;EEjQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;CHugBH;ACnQD;EExQI,yEAAA;EACA,oEAAA;EACA,8FAAA;EAAA,uEAAA;EACA,4BAAA;EACA,uHAAA;EFsQF,sBAAA;EC3NA,0FAAA;EACQ,kFAAA;CFqeT","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.3.6 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.3.6 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css new file mode 100644 index 000000000..dc95d8e4e --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.3.6 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} +/*# sourceMappingURL=bootstrap-theme.min.css.map */ \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css.map b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css.map new file mode 100644 index 000000000..2c6b65afc --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":";;;;AAmBA,YAAA,aAAA,UAAA,aAAA,aAAA,aAME,YAAA,EAAA,KAAA,EAAA,eC2CA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBDvCR,mBAAA,mBAAA,oBAAA,oBAAA,iBAAA,iBAAA,oBAAA,oBAAA,oBAAA,oBAAA,oBAAA,oBCsCA,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBDlCR,qBAAA,sBAAA,sBAAA,uBAAA,mBAAA,oBAAA,sBAAA,uBAAA,sBAAA,uBAAA,sBAAA,uBAAA,+BAAA,gCAAA,6BAAA,gCAAA,gCAAA,gCCiCA,mBAAA,KACQ,WAAA,KDlDV,mBAAA,oBAAA,iBAAA,oBAAA,oBAAA,oBAuBI,YAAA,KAyCF,YAAA,YAEE,iBAAA,KAKJ,aErEI,YAAA,EAAA,IAAA,EAAA,KACA,iBAAA,iDACA,iBAAA,4CAAA,iBAAA,qEAEA,iBAAA,+CCnBF,OAAA,+GH4CA,OAAA,0DACA,kBAAA,SAuC2C,aAAA,QAA2B,aAAA,KArCtE,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAgBN,aEtEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAiBN,aEvEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAkBN,UExEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,gBAAA,gBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,iBAAA,iBAEE,iBAAA,QACA,aAAA,QAMA,mBAAA,0BAAA,yBAAA,0BAAA,yBAAA,yBAAA,oBAAA,2BAAA,0BAAA,2BAAA,0BAAA,0BAAA,6BAAA,oCAAA,mCAAA,oCAAA,mCAAA,mCAME,iBAAA,QACA,iBAAA,KAmBN,aEzEI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,mBAAA,mBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,oBAAA,oBAEE,iBAAA,QACA,aAAA,QAMA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,uBAAA,8BAAA,6BAAA,8BAAA,6BAAA,6BAAA,gCAAA,uCAAA,sCAAA,uCAAA,sCAAA,sCAME,iBAAA,QACA,iBAAA,KAoBN,YE1EI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDAEA,OAAA,+GCnBF,OAAA,0DH4CA,kBAAA,SACA,aAAA,QAEA,kBAAA,kBAEE,iBAAA,QACA,oBAAA,EAAA,MAGF,mBAAA,mBAEE,iBAAA,QACA,aAAA,QAMA,qBAAA,4BAAA,2BAAA,4BAAA,2BAAA,2BAAA,sBAAA,6BAAA,4BAAA,6BAAA,4BAAA,4BAAA,+BAAA,sCAAA,qCAAA,sCAAA,qCAAA,qCAME,iBAAA,QACA,iBAAA,KA2BN,eAAA,WClCE,mBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,EAAA,IAAA,IAAA,iBD2CV,0BAAA,0BE3FI,iBAAA,QACA,iBAAA,oDACA,iBAAA,+CAAA,iBAAA,wEACA,iBAAA,kDACA,OAAA,+GF0FF,kBAAA,SAEF,yBAAA,+BAAA,+BEhGI,iBAAA,QACA,iBAAA,oDACA,iBAAA,+CAAA,iBAAA,wEACA,iBAAA,kDACA,OAAA,+GFgGF,kBAAA,SASF,gBE7GI,iBAAA,iDACA,iBAAA,4CACA,iBAAA,qEAAA,iBAAA,+CACA,OAAA,+GACA,OAAA,0DCnBF,kBAAA,SH+HA,cAAA,ICjEA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,iBD6DV,sCAAA,oCE7GI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SD2CF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBD0EV,cAAA,iBAEE,YAAA,EAAA,IAAA,EAAA,sBAIF,gBEhII,iBAAA,iDACA,iBAAA,4CACA,iBAAA,qEAAA,iBAAA,+CACA,OAAA,+GACA,OAAA,0DCnBF,kBAAA,SHkJA,cAAA,IAHF,sCAAA,oCEhII,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SD2CF,mBAAA,MAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBDgFV,8BAAA,iCAYI,YAAA,EAAA,KAAA,EAAA,gBAKJ,qBAAA,kBAAA,mBAGE,cAAA,EAqBF,yBAfI,mDAAA,yDAAA,yDAGE,MAAA,KE7JF,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,UFqKJ,OACE,YAAA,EAAA,IAAA,EAAA,qBC3HA,mBAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,IAAA,IAAA,gBDsIV,eEtLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAKF,YEvLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAMF,eExLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAOF,cEzLI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF8KF,aAAA,QAeF,UEjMI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFuMJ,cE3MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFwMJ,sBE5MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFyMJ,mBE7MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF0MJ,sBE9MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF2MJ,qBE/MI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF+MJ,sBElLI,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKFyLJ,YACE,cAAA,IC9KA,mBAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,EAAA,IAAA,IAAA,iBDgLV,wBAAA,8BAAA,8BAGE,YAAA,EAAA,KAAA,EAAA,QEnOE,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFiOF,aAAA,QALF,+BAAA,qCAAA,qCAQI,YAAA,KAUJ,OCnME,mBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,EAAA,IAAA,IAAA,gBD4MV,8BE5PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFyPJ,8BE7PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF0PJ,8BE9PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF2PJ,2BE/PI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF4PJ,8BEhQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SF6PJ,6BEjQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFoQJ,MExQI,iBAAA,oDACA,iBAAA,+CACA,iBAAA,wEAAA,iBAAA,kDACA,OAAA,+GACA,kBAAA,SFsQF,aAAA,QC3NA,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,EAAA,IAAA,EAAA,qBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,EAAA,IAAA,EAAA"} \ No newline at end of file diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css new file mode 100644 index 000000000..42c79d6e4 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css @@ -0,0 +1,6760 @@ +/*! + * Bootstrap v3.3.6 (http://getbootstrap.com) + * Copyright 2011-2015 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + padding-right: 15px; + padding-left: 15px; + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + filter: alpha(opacity=0); + opacity: 0; + + line-break: auto; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + + line-break: auto; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + background-color: rgba(0, 0, 0, 0); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -10px; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +/*# sourceMappingURL=bootstrap.css.map */ diff --git a/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map new file mode 100644 index 000000000..09f8cda78 --- /dev/null +++ b/src/dotnet/commands/dotnet-new/CSharp_Web1.1/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap.css","less/normalize.less","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,4EAA4E;ACG5E;EACE,wBAAA;EACA,2BAAA;EACA,+BAAA;CDDD;ACQD;EACE,UAAA;CDND;ACmBD;;;;;;;;;;;;;EAaE,eAAA;CDjBD;ACyBD;;;;EAIE,sBAAA;EACA,yBAAA;CDvBD;AC+BD;EACE,cAAA;EACA,UAAA;CD7BD;ACqCD;;EAEE,cAAA;CDnCD;AC6CD;EACE,8BAAA;CD3CD;ACmDD;;EAEE,WAAA;CDjDD;AC2DD;EACE,0BAAA;CDzDD;ACgED;;EAEE,kBAAA;CD9DD;ACqED;EACE,mBAAA;CDnED;AC2ED;EACE,eAAA;EACA,iBAAA;CDzED;ACgFD;EACE,iBAAA;EACA,YAAA;CD9ED;ACqFD;EACE,eAAA;CDnFD;AC0FD;;EAEE,eAAA;EACA,eAAA;EACA,mBAAA;EACA,yBAAA;CDxFD;AC2FD;EACE,YAAA;CDzFD;AC4FD;EACE,gBAAA;CD1FD;ACoGD;EACE,UAAA;CDlGD;ACyGD;EACE,iBAAA;CDvGD;ACiHD;EACE,iBAAA;CD/GD;ACsHD;EACE,gCAAA;KAAA,6BAAA;UAAA,wBAAA;EACA,UAAA;CDpHD;AC2HD;EACE,eAAA;CDzHD;ACgID;;;;EAIE,kCAAA;EACA,eAAA;CD9HD;ACgJD;;;;;EAKE,eAAA;EACA,cAAA;EACA,UAAA;CD9ID;ACqJD;EACE,kBAAA;CDnJD;AC6JD;;EAEE,qBAAA;CD3JD;ACsKD;;;;EAIE,2BAAA;EACA,gBAAA;CDpKD;AC2KD;;EAEE,gBAAA;CDzKD;ACgLD;;EAEE,UAAA;EACA,WAAA;CD9KD;ACsLD;EACE,oBAAA;CDpLD;AC+LD;;EAEE,+BAAA;KAAA,4BAAA;UAAA,uBAAA;EACA,WAAA;CD7LD;ACsMD;;EAEE,aAAA;CDpMD;AC4MD;EACE,8BAAA;EACA,gCAAA;KAAA,6BAAA;UAAA,wBAAA;CD1MD;ACmND;;EAEE,yBAAA;CDjND;ACwND;EACE,0BAAA;EACA,cAAA;EACA,+BAAA;CDtND;AC8ND;EACE,UAAA;EACA,WAAA;CD5ND;ACmOD;EACE,eAAA;CDjOD;ACyOD;EACE,kBAAA;CDvOD;ACiPD;EACE,0BAAA;EACA,kBAAA;CD/OD;ACkPD;;EAEE,WAAA;CDhPD;AACD,qFAAqF;AElFrF;EA7FI;;;IAGI,mCAAA;IACA,uBAAA;IACA,oCAAA;YAAA,4BAAA;IACA,6BAAA;GFkLL;EE/KC;;IAEI,2BAAA;GFiLL;EE9KC;IACI,6BAAA;GFgLL;EE7KC;IACI,8BAAA;GF+KL;EE1KC;;IAEI,YAAA;GF4KL;EEzKC;;IAEI,uBAAA;IACA,yBAAA;GF2KL;EExKC;IACI,4BAAA;GF0KL;EEvKC;;IAEI,yBAAA;GFyKL;EEtKC;IACI,2BAAA;GFwKL;EErKC;;;IAGI,WAAA;IACA,UAAA;GFuKL;EEpKC;;IAEI,wBAAA;GFsKL;EEhKC;IACI,cAAA;GFkKL;EEhKC;;IAGQ,kCAAA;GFiKT;EE9JC;IACI,uBAAA;GFgKL;EE7JC;IACI,qCAAA;GF+JL;EEhKC;;IAKQ,kCAAA;GF+JT;EE5JC;;IAGQ,kCAAA;GF6JT;CACF;AGnPD;EACE,oCAAA;EACA,sDAAA;EACA,gYAAA;CHqPD;AG7OD;EACE,mBAAA;EACA,SAAA;EACA,sBAAA;EACA,oCAAA;EACA,mBAAA;EACA,oBAAA;EACA,eAAA;EACA,oCAAA;EACA,mCAAA;CH+OD;AG3OmC;EAAW,iBAAA;CH8O9C;AG7OmC;EAAW,iBAAA;CHgP9C;AG9OmC;;EAAW,iBAAA;CHkP9C;AGjPmC;EAAW,iBAAA;CHoP9C;AGnPmC;EAAW,iBAAA;CHsP9C;AGrPmC;EAAW,iBAAA;CHwP9C;AGvPmC;EAAW,iBAAA;CH0P9C;AGzPmC;EAAW,iBAAA;CH4P9C;AG3PmC;EAAW,iBAAA;CH8P9C;AG7PmC;EAAW,iBAAA;CHgQ9C;AG/PmC;EAAW,iBAAA;CHkQ9C;AGjQmC;EAAW,iBAAA;CHoQ9C;AGnQmC;EAAW,iBAAA;CHsQ9C;AGrQmC;EAAW,iBAAA;CHwQ9C;AGvQmC;EAAW,iBAAA;CH0Q9C;AGzQmC;EAAW,iBAAA;CH4Q9C;AG3QmC;EAAW,iBAAA;CH8Q9C;AG7QmC;EAAW,iBAAA;CHgR9C;AG/QmC;EAAW,iBAAA;CHkR9C;AGjRmC;EAAW,iBAAA;CHoR9C;AGnRmC;EAAW,iBAAA;CHsR9C;AGrRmC;EAAW,iBAAA;CHwR9C;AGvRmC;EAAW,iBAAA;CH0R9C;AGzRmC;EAAW,iBAAA;CH4R9C;AG3RmC;EAAW,iBAAA;CH8R9C;AG7RmC;EAAW,iBAAA;CHgS9C;AG/RmC;EAAW,iBAAA;CHkS9C;AGjSmC;EAAW,iBAAA;CHoS9C;AGnSmC;EAAW,iBAAA;CHsS9C;AGrSmC;EAAW,iBAAA;CHwS9C;AGvSmC;EAAW,iBAAA;CH0S9C;AGzSmC;EAAW,iBAAA;CH4S9C;AG3SmC;EAAW,iBAAA;CH8S9C;AG7SmC;EAAW,iBAAA;CHgT9C;AG/SmC;EAAW,iBAAA;CHkT9C;AGjTmC;EAAW,iBAAA;CHoT9C;AGnTmC;EAAW,iBAAA;CHsT9C;AGrTmC;EAAW,iBAAA;CHwT9C;AGvTmC;EAAW,iBAAA;CH0T9C;AGzTmC;EAAW,iBAAA;CH4T9C;AG3TmC;EAAW,iBAAA;CH8T9C;AG7TmC;EAAW,iBAAA;CHgU9C;AG/TmC;EAAW,iBAAA;CHkU9C;AGjUmC;EAAW,iBAAA;CHoU9C;AGnUmC;EAAW,iBAAA;CHsU9C;AGrUmC;EAAW,iBAAA;CHwU9C;AGvUmC;EAAW,iBAAA;CH0U9C;AGzUmC;EAAW,iBAAA;CH4U9C;AG3UmC;EAAW,iBAAA;CH8U9C;AG7UmC;EAAW,iBAAA;CHgV9C;AG/UmC;EAAW,iBAAA;CHkV9C;AGjVmC;EAAW,iBAAA;CHoV9C;AGnVmC;EAAW,iBAAA;CHsV9C;AGrVmC;EAAW,iBAAA;CHwV9C;AGvVmC;EAAW,iBAAA;CH0V9C;AGzVmC;EAAW,iBAAA;CH4V9C;AG3VmC;EAAW,iBAAA;CH8V9C;AG7VmC;EAAW,iBAAA;CHgW9C;AG/VmC;EAAW,iBAAA;CHkW9C;AGjWmC;EAAW,iBAAA;CHoW9C;AGnWmC;EAAW,iBAAA;CHsW9C;AGrWmC;EAAW,iBAAA;CHwW9C;AGvWmC;EAAW,iBAAA;CH0W9C;AGzWmC;EAAW,iBAAA;CH4W9C;AG3WmC;EAAW,iBAAA;CH8W9C;AG7WmC;EAAW,iBAAA;CHgX9C;AG/WmC;EAAW,iBAAA;CHkX9C;AGjXmC;EAAW,iBAAA;CHoX9C;AGnXmC;EAAW,iBAAA;CHsX9C;AGrXmC;EAAW,iBAAA;CHwX9C;AGvXmC;EAAW,iBAAA;CH0X9C;AGzXmC;EAAW,iBAAA;CH4X9C;AG3XmC;EAAW,iBAAA;CH8X9C;AG7XmC;EAAW,iBAAA;CHgY9C;AG/XmC;EAAW,iBAAA;CHkY9C;AGjYmC;EAAW,iBAAA;CHoY9C;AGnYmC;EAAW,iBAAA;CHsY9C;AGrYmC;EAAW,iBAAA;CHwY9C;AGvYmC;EAAW,iBAAA;CH0Y9C;AGzYmC;EAAW,iBAAA;CH4Y9C;AG3YmC;EAAW,iBAAA;CH8Y9C;AG7YmC;EAAW,iBAAA;CHgZ9C;AG/YmC;EAAW,iBAAA;CHkZ9C;AGjZmC;EAAW,iBAAA;CHoZ9C;AGnZmC;EAAW,iBAAA;CHsZ9C;AGrZmC;EAAW,iBAAA;CHwZ9C;AGvZmC;EAAW,iBAAA;CH0Z9C;AGzZmC;EAAW,iBAAA;CH4Z9C;AG3ZmC;EAAW,iBAAA;CH8Z9C;AG7ZmC;EAAW,iBAAA;CHga9C;AG/ZmC;EAAW,iBAAA;CHka9C;AGjamC;EAAW,iBAAA;CHoa9C;AGnamC;EAAW,iBAAA;CHsa9C;AGramC;EAAW,iBAAA;CHwa9C;AGvamC;EAAW,iBAAA;CH0a9C;AGzamC;EAAW,iBAAA;CH4a9C;AG3amC;EAAW,iBAAA;CH8a9C;AG7amC;EAAW,iBAAA;CHgb9C;AG/amC;EAAW,iBAAA;CHkb9C;AGjbmC;EAAW,iBAAA;CHob9C;AGnbmC;EAAW,iBAAA;CHsb9C;AGrbmC;EAAW,iBAAA;CHwb9C;AGvbmC;EAAW,iBAAA;CH0b9C;AGzbmC;EAAW,iBAAA;CH4b9C;AG3bmC;EAAW,iBAAA;CH8b9C;AG7bmC;EAAW,iBAAA;CHgc9C;AG/bmC;EAAW,iBAAA;CHkc9C;AGjcmC;EAAW,iBAAA;CHoc9C;AGncmC;EAAW,iBAAA;CHsc9C;AGrcmC;EAAW,iBAAA;CHwc9C;AGvcmC;EAAW,iBAAA;CH0c9C;AGzcmC;EAAW,iBAAA;CH4c9C;AG3cmC;EAAW,iBAAA;CH8c9C;AG7cmC;EAAW,iBAAA;CHgd9C;AG/cmC;EAAW,iBAAA;CHkd9C;AGjdmC;EAAW,iBAAA;CHod9C;AGndmC;EAAW,iBAAA;CHsd9C;AGrdmC;EAAW,iBAAA;CHwd9C;AGvdmC;EAAW,iBAAA;CH0d9C;AGzdmC;EAAW,iBAAA;CH4d9C;AG3dmC;EAAW,iBAAA;CH8d9C;AG7dmC;EAAW,iBAAA;CHge9C;AG/dmC;EAAW,iBAAA;CHke9C;AGjemC;EAAW,iBAAA;CHoe9C;AGnemC;EAAW,iBAAA;CHse9C;AGremC;EAAW,iBAAA;CHwe9C;AGvemC;EAAW,iBAAA;CH0e9C;AGzemC;EAAW,iBAAA;CH4e9C;AG3emC;EAAW,iBAAA;CH8e9C;AG7emC;EAAW,iBAAA;CHgf9C;AG/emC;EAAW,iBAAA;CHkf9C;AGjfmC;EAAW,iBAAA;CHof9C;AGnfmC;EAAW,iBAAA;CHsf9C;AGrfmC;EAAW,iBAAA;CHwf9C;AGvfmC;EAAW,iBAAA;CH0f9C;AGzfmC;EAAW,iBAAA;CH4f9C;AG3fmC;EAAW,iBAAA;CH8f9C;AG7fmC;EAAW,iBAAA;CHggB9C;AG/fmC;EAAW,iBAAA;CHkgB9C;AGjgBmC;EAAW,iBAAA;CHogB9C;AGngBmC;EAAW,iBAAA;CHsgB9C;AGrgBmC;EAAW,iBAAA;CHwgB9C;AGvgBmC;EAAW,iBAAA;CH0gB9C;AGzgBmC;EAAW,iBAAA;CH4gB9C;AG3gBmC;EAAW,iBAAA;CH8gB9C;AG7gBmC;EAAW,iBAAA;CHghB9C;AG/gBmC;EAAW,iBAAA;CHkhB9C;AGjhBmC;EAAW,iBAAA;CHohB9C;AGnhBmC;EAAW,iBAAA;CHshB9C;AGrhBmC;EAAW,iBAAA;CHwhB9C;AGvhBmC;EAAW,iBAAA;CH0hB9C;AGzhBmC;EAAW,iBAAA;CH4hB9C;AG3hBmC;EAAW,iBAAA;CH8hB9C;AG7hBmC;EAAW,iBAAA;CHgiB9C;AG/hBmC;EAAW,iBAAA;CHkiB9C;AGjiBmC;EAAW,iBAAA;CHoiB9C;AGniBmC;EAAW,iBAAA;CHsiB9C;AGriBmC;EAAW,iBAAA;CHwiB9C;AGviBmC;EAAW,iBAAA;CH0iB9C;AGziBmC;EAAW,iBAAA;CH4iB9C;AG3iBmC;EAAW,iBAAA;CH8iB9C;AG7iBmC;EAAW,iBAAA;CHgjB9C;AG/iBmC;EAAW,iBAAA;CHkjB9C;AGjjBmC;EAAW,iBAAA;CHojB9C;AGnjBmC;EAAW,iBAAA;CHsjB9C;AGrjBmC;EAAW,iBAAA;CHwjB9C;AGvjBmC;EAAW,iBAAA;CH0jB9C;AGzjBmC;EAAW,iBAAA;CH4jB9C;AG3jBmC;EAAW,iBAAA;CH8jB9C;AG7jBmC;EAAW,iBAAA;CHgkB9C;AG/jBmC;EAAW,iBAAA;CHkkB9C;AGjkBmC;EAAW,iBAAA;CHokB9C;AGnkBmC;EAAW,iBAAA;CHskB9C;AGrkBmC;EAAW,iBAAA;CHwkB9C;AGvkBmC;EAAW,iBAAA;CH0kB9C;AGzkBmC;EAAW,iBAAA;CH4kB9C;AG3kBmC;EAAW,iBAAA;CH8kB9C;AG7kBmC;EAAW,iBAAA;CHglB9C;AG/kBmC;EAAW,iBAAA;CHklB9C;AGjlBmC;EAAW,iBAAA;CHolB9C;AGnlBmC;EAAW,iBAAA;CHslB9C;AGrlBmC;EAAW,iBAAA;CHwlB9C;AGvlBmC;EAAW,iBAAA;CH0lB9C;AGzlBmC;EAAW,iBAAA;CH4lB9C;AG3lBmC;EAAW,iBAAA;CH8lB9C;AG7lBmC;EAAW,iBAAA;CHgmB9C;AG/lBmC;EAAW,iBAAA;CHkmB9C;AGjmBmC;EAAW,iBAAA;CHomB9C;AGnmBmC;EAAW,iBAAA;CHsmB9C;AGrmBmC;EAAW,iBAAA;CHwmB9C;AGvmBmC;EAAW,iBAAA;CH0mB9C;AGzmBmC;EAAW,iBAAA;CH4mB9C;AG3mBmC;EAAW,iBAAA;CH8mB9C;AG7mBmC;EAAW,iBAAA;CHgnB9C;AG/mBmC;EAAW,iBAAA;CHknB9C;AGjnBmC;EAAW,iBAAA;CHonB9C;AGnnBmC;EAAW,iBAAA;CHsnB9C;AGrnBmC;EAAW,iBAAA;CHwnB9C;AGvnBmC;EAAW,iBAAA;CH0nB9C;AGznBmC;EAAW,iBAAA;CH4nB9C;AG3nBmC;EAAW,iBAAA;CH8nB9C;AG7nBmC;EAAW,iBAAA;CHgoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AGvoBmC;EAAW,iBAAA;CH0oB9C;AGzoBmC;EAAW,iBAAA;CH4oB9C;AG3oBmC;EAAW,iBAAA;CH8oB9C;AG7oBmC;EAAW,iBAAA;CHgpB9C;AG/oBmC;EAAW,iBAAA;CHkpB9C;AGjpBmC;EAAW,iBAAA;CHopB9C;AGnpBmC;EAAW,iBAAA;CHspB9C;AGrpBmC;EAAW,iBAAA;CHwpB9C;AGvpBmC;EAAW,iBAAA;CH0pB9C;AGzpBmC;EAAW,iBAAA;CH4pB9C;AG3pBmC;EAAW,iBAAA;CH8pB9C;AG7pBmC;EAAW,iBAAA;CHgqB9C;AG/pBmC;EAAW,iBAAA;CHkqB9C;AGjqBmC;EAAW,iBAAA;CHoqB9C;AGnqBmC;EAAW,iBAAA;CHsqB9C;AGrqBmC;EAAW,iBAAA;CHwqB9C;AGvqBmC;EAAW,iBAAA;CH0qB9C;AGzqBmC;EAAW,iBAAA;CH4qB9C;AG3qBmC;EAAW,iBAAA;CH8qB9C;AG7qBmC;EAAW,iBAAA;CHgrB9C;AG/qBmC;EAAW,iBAAA;CHkrB9C;AGjrBmC;EAAW,iBAAA;CHorB9C;AGnrBmC;EAAW,iBAAA;CHsrB9C;AGrrBmC;EAAW,iBAAA;CHwrB9C;AGvrBmC;EAAW,iBAAA;CH0rB9C;AGzrBmC;EAAW,iBAAA;CH4rB9C;AG3rBmC;EAAW,iBAAA;CH8rB9C;AG7rBmC;EAAW,iBAAA;CHgsB9C;AG/rBmC;EAAW,iBAAA;CHksB9C;AGjsBmC;EAAW,iBAAA;CHosB9C;AGnsBmC;EAAW,iBAAA;CHssB9C;AGrsBmC;EAAW,iBAAA;CHwsB9C;AGvsBmC;EAAW,iBAAA;CH0sB9C;AGzsBmC;EAAW,iBAAA;CH4sB9C;AG3sBmC;EAAW,iBAAA;CH8sB9C;AG7sBmC;EAAW,iBAAA;CHgtB9C;AG/sBmC;EAAW,iBAAA;CHktB9C;AGjtBmC;EAAW,iBAAA;CHotB9C;AGntBmC;EAAW,iBAAA;CHstB9C;AGrtBmC;EAAW,iBAAA;CHwtB9C;AGvtBmC;EAAW,iBAAA;CH0tB9C;AGztBmC;EAAW,iBAAA;CH4tB9C;AG3tBmC;EAAW,iBAAA;CH8tB9C;AG7tBmC;EAAW,iBAAA;CHguB9C;AG/tBmC;EAAW,iBAAA;CHkuB9C;AGjuBmC;EAAW,iBAAA;CHouB9C;AGnuBmC;EAAW,iBAAA;CHsuB9C;AGruBmC;EAAW,iBAAA;CHwuB9C;AGvuBmC;EAAW,iBAAA;CH0uB9C;AGzuBmC;EAAW,iBAAA;CH4uB9C;AG3uBmC;EAAW,iBAAA;CH8uB9C;AG7uBmC;EAAW,iBAAA;CHgvB9C;AIthCD;ECgEE,+BAAA;EACG,4BAAA;EACK,uBAAA;CLy9BT;AIxhCD;;EC6DE,+BAAA;EACG,4BAAA;EACK,uBAAA;CL+9BT;AIthCD;EACE,gBAAA;EACA,8CAAA;CJwhCD;AIrhCD;EACE,4DAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,uBAAA;CJuhCD;AInhCD;;;;EAIE,qBAAA;EACA,mBAAA;EACA,qBAAA;CJqhCD;AI/gCD;EACE,eAAA;EACA,sBAAA;CJihCD;AI/gCC;;EAEE,eAAA;EACA,2BAAA;CJihCH;AI9gCC;EErDA,qBAAA;EAEA,2CAAA;EACA,qBAAA;CNqkCD;AIxgCD;EACE,UAAA;CJ0gCD;AIpgCD;EACE,uBAAA;CJsgCD;AIlgCD;;;;;EGvEE,eAAA;EACA,gBAAA;EACA,aAAA;CPglCD;AItgCD;EACE,mBAAA;CJwgCD;AIlgCD;EACE,aAAA;EACA,wBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;EC6FA,yCAAA;EACK,oCAAA;EACG,iCAAA;EEvLR,sBAAA;EACA,gBAAA;EACA,aAAA;CPgmCD;AIlgCD;EACE,mBAAA;CJogCD;AI9/BD;EACE,iBAAA;EACA,oBAAA;EACA,UAAA;EACA,8BAAA;CJggCD;AIx/BD;EACE,mBAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,WAAA;EACA,iBAAA;EACA,uBAAA;EACA,UAAA;CJ0/BD;AIl/BC;;EAEE,iBAAA;EACA,YAAA;EACA,aAAA;EACA,UAAA;EACA,kBAAA;EACA,WAAA;CJo/BH;AIz+BD;EACE,gBAAA;CJ2+BD;AQloCD;;;;;;;;;;;;EAEE,qBAAA;EACA,iBAAA;EACA,iBAAA;EACA,eAAA;CR8oCD;AQnpCD;;;;;;;;;;;;;;;;;;;;;;;;EASI,oBAAA;EACA,eAAA;EACA,eAAA;CRoqCH;AQhqCD;;;;;;EAGE,iBAAA;EACA,oBAAA;CRqqCD;AQzqCD;;;;;;;;;;;;EAQI,eAAA;CR+qCH;AQ5qCD;;;;;;EAGE,iBAAA;EACA,oBAAA;CRirCD;AQrrCD;;;;;;;;;;;;EAQI,eAAA;CR2rCH;AQvrCD;;EAAU,gBAAA;CR2rCT;AQ1rCD;;EAAU,gBAAA;CR8rCT;AQ7rCD;;EAAU,gBAAA;CRisCT;AQhsCD;;EAAU,gBAAA;CRosCT;AQnsCD;;EAAU,gBAAA;CRusCT;AQtsCD;;EAAU,gBAAA;CR0sCT;AQpsCD;EACE,iBAAA;CRssCD;AQnsCD;EACE,oBAAA;EACA,gBAAA;EACA,iBAAA;EACA,iBAAA;CRqsCD;AQhsCD;EAwOA;IA1OI,gBAAA;GRssCD;CACF;AQ9rCD;;EAEE,eAAA;CRgsCD;AQ7rCD;;EAEE,0BAAA;EACA,cAAA;CR+rCD;AQ3rCD;EAAuB,iBAAA;CR8rCtB;AQ7rCD;EAAuB,kBAAA;CRgsCtB;AQ/rCD;EAAuB,mBAAA;CRksCtB;AQjsCD;EAAuB,oBAAA;CRosCtB;AQnsCD;EAAuB,oBAAA;CRssCtB;AQnsCD;EAAuB,0BAAA;CRssCtB;AQrsCD;EAAuB,0BAAA;CRwsCtB;AQvsCD;EAAuB,2BAAA;CR0sCtB;AQvsCD;EACE,eAAA;CRysCD;AQvsCD;ECrGE,eAAA;CT+yCD;AS9yCC;;EAEE,eAAA;CTgzCH;AQ3sCD;ECxGE,eAAA;CTszCD;ASrzCC;;EAEE,eAAA;CTuzCH;AQ/sCD;EC3GE,eAAA;CT6zCD;AS5zCC;;EAEE,eAAA;CT8zCH;AQntCD;EC9GE,eAAA;CTo0CD;ASn0CC;;EAEE,eAAA;CTq0CH;AQvtCD;ECjHE,eAAA;CT20CD;AS10CC;;EAEE,eAAA;CT40CH;AQvtCD;EAGE,YAAA;EE3HA,0BAAA;CVm1CD;AUl1CC;;EAEE,0BAAA;CVo1CH;AQztCD;EE9HE,0BAAA;CV01CD;AUz1CC;;EAEE,0BAAA;CV21CH;AQ7tCD;EEjIE,0BAAA;CVi2CD;AUh2CC;;EAEE,0BAAA;CVk2CH;AQjuCD;EEpIE,0BAAA;CVw2CD;AUv2CC;;EAEE,0BAAA;CVy2CH;AQruCD;EEvIE,0BAAA;CV+2CD;AU92CC;;EAEE,0BAAA;CVg3CH;AQpuCD;EACE,oBAAA;EACA,oBAAA;EACA,iCAAA;CRsuCD;AQ9tCD;;EAEE,cAAA;EACA,oBAAA;CRguCD;AQnuCD;;;;EAMI,iBAAA;CRmuCH;AQ5tCD;EACE,gBAAA;EACA,iBAAA;CR8tCD;AQ1tCD;EALE,gBAAA;EACA,iBAAA;EAMA,kBAAA;CR6tCD;AQ/tCD;EAKI,sBAAA;EACA,kBAAA;EACA,mBAAA;CR6tCH;AQxtCD;EACE,cAAA;EACA,oBAAA;CR0tCD;AQxtCD;;EAEE,wBAAA;CR0tCD;AQxtCD;EACE,kBAAA;CR0tCD;AQxtCD;EACE,eAAA;CR0tCD;AQjsCD;EA6EA;IAvFM,YAAA;IACA,aAAA;IACA,YAAA;IACA,kBAAA;IGtNJ,iBAAA;IACA,wBAAA;IACA,oBAAA;GXs6CC;EQ9nCH;IAhFM,mBAAA;GRitCH;CACF;AQxsCD;;EAGE,aAAA;EACA,kCAAA;CRysCD;AQvsCD;EACE,eAAA;EA9IqB,0BAAA;CRw1CtB;AQrsCD;EACE,mBAAA;EACA,iBAAA;EACA,kBAAA;EACA,+BAAA;CRusCD;AQlsCG;;;EACE,iBAAA;CRssCL;AQhtCD;;;EAmBI,eAAA;EACA,eAAA;EACA,wBAAA;EACA,eAAA;CRksCH;AQhsCG;;;EACE,uBAAA;CRosCL;AQ5rCD;;EAEE,oBAAA;EACA,gBAAA;EACA,gCAAA;EACA,eAAA;EACA,kBAAA;CR8rCD;AQxrCG;;;;;;EAAW,YAAA;CRgsCd;AQ/rCG;;;;;;EACE,uBAAA;CRssCL;AQhsCD;EACE,oBAAA;EACA,mBAAA;EACA,wBAAA;CRksCD;AYx+CD;;;;EAIE,+DAAA;CZ0+CD;AYt+CD;EACE,iBAAA;EACA,eAAA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;CZw+CD;AYp+CD;EACE,iBAAA;EACA,eAAA;EACA,YAAA;EACA,uBAAA;EACA,mBAAA;EACA,uDAAA;UAAA,+CAAA;CZs+CD;AY5+CD;EASI,WAAA;EACA,gBAAA;EACA,kBAAA;EACA,yBAAA;UAAA,iBAAA;CZs+CH;AYj+CD;EACE,eAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,wBAAA;EACA,sBAAA;EACA,sBAAA;EACA,eAAA;EACA,0BAAA;EACA,uBAAA;EACA,mBAAA;CZm+CD;AY9+CD;EAeI,WAAA;EACA,mBAAA;EACA,eAAA;EACA,sBAAA;EACA,8BAAA;EACA,iBAAA;CZk+CH;AY79CD;EACE,kBAAA;EACA,mBAAA;CZ+9CD;AazhDD;ECHE,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,oBAAA;Cd+hDD;AazhDC;EAqEF;IAvEI,aAAA;Gb+hDD;CACF;Aa3hDC;EAkEF;IApEI,aAAA;GbiiDD;CACF;Aa7hDD;EA+DA;IAjEI,cAAA;GbmiDD;CACF;Aa1hDD;ECvBE,mBAAA;EACA,kBAAA;EACA,mBAAA;EACA,oBAAA;CdojDD;AavhDD;ECvBE,mBAAA;EACA,oBAAA;CdijDD;AejjDG;EACE,mBAAA;EAEA,gBAAA;EAEA,mBAAA;EACA,oBAAA;CfijDL;AejiDG;EACE,YAAA;CfmiDL;Ae5hDC;EACE,YAAA;Cf8hDH;Ae/hDC;EACE,oBAAA;CfiiDH;AeliDC;EACE,oBAAA;CfoiDH;AeriDC;EACE,WAAA;CfuiDH;AexiDC;EACE,oBAAA;Cf0iDH;Ae3iDC;EACE,oBAAA;Cf6iDH;Ae9iDC;EACE,WAAA;CfgjDH;AejjDC;EACE,oBAAA;CfmjDH;AepjDC;EACE,oBAAA;CfsjDH;AevjDC;EACE,WAAA;CfyjDH;Ae1jDC;EACE,oBAAA;Cf4jDH;Ae7jDC;EACE,mBAAA;Cf+jDH;AejjDC;EACE,YAAA;CfmjDH;AepjDC;EACE,oBAAA;CfsjDH;AevjDC;EACE,oBAAA;CfyjDH;Ae1jDC;EACE,WAAA;Cf4jDH;Ae7jDC;EACE,oBAAA;Cf+jDH;AehkDC;EACE,oBAAA;CfkkDH;AenkDC;EACE,WAAA;CfqkDH;AetkDC;EACE,oBAAA;CfwkDH;AezkDC;EACE,oBAAA;Cf2kDH;Ae5kDC;EACE,WAAA;Cf8kDH;Ae/kDC;EACE,oBAAA;CfilDH;AellDC;EACE,mBAAA;CfolDH;AehlDC;EACE,YAAA;CfklDH;AelmDC;EACE,WAAA;CfomDH;AermDC;EACE,mBAAA;CfumDH;AexmDC;EACE,mBAAA;Cf0mDH;Ae3mDC;EACE,UAAA;Cf6mDH;Ae9mDC;EACE,mBAAA;CfgnDH;AejnDC;EACE,mBAAA;CfmnDH;AepnDC;EACE,UAAA;CfsnDH;AevnDC;EACE,mBAAA;CfynDH;Ae1nDC;EACE,mBAAA;Cf4nDH;Ae7nDC;EACE,UAAA;Cf+nDH;AehoDC;EACE,mBAAA;CfkoDH;AenoDC;EACE,kBAAA;CfqoDH;AejoDC;EACE,WAAA;CfmoDH;AernDC;EACE,kBAAA;CfunDH;AexnDC;EACE,0BAAA;Cf0nDH;Ae3nDC;EACE,0BAAA;Cf6nDH;Ae9nDC;EACE,iBAAA;CfgoDH;AejoDC;EACE,0BAAA;CfmoDH;AepoDC;EACE,0BAAA;CfsoDH;AevoDC;EACE,iBAAA;CfyoDH;Ae1oDC;EACE,0BAAA;Cf4oDH;Ae7oDC;EACE,0BAAA;Cf+oDH;AehpDC;EACE,iBAAA;CfkpDH;AenpDC;EACE,0BAAA;CfqpDH;AetpDC;EACE,yBAAA;CfwpDH;AezpDC;EACE,gBAAA;Cf2pDH;Aa3pDD;EElCI;IACE,YAAA;GfgsDH;EezrDD;IACE,YAAA;Gf2rDD;Ee5rDD;IACE,oBAAA;Gf8rDD;Ee/rDD;IACE,oBAAA;GfisDD;EelsDD;IACE,WAAA;GfosDD;EersDD;IACE,oBAAA;GfusDD;EexsDD;IACE,oBAAA;Gf0sDD;Ee3sDD;IACE,WAAA;Gf6sDD;Ee9sDD;IACE,oBAAA;GfgtDD;EejtDD;IACE,oBAAA;GfmtDD;EeptDD;IACE,WAAA;GfstDD;EevtDD;IACE,oBAAA;GfytDD;Ee1tDD;IACE,mBAAA;Gf4tDD;Ee9sDD;IACE,YAAA;GfgtDD;EejtDD;IACE,oBAAA;GfmtDD;EeptDD;IACE,oBAAA;GfstDD;EevtDD;IACE,WAAA;GfytDD;Ee1tDD;IACE,oBAAA;Gf4tDD;Ee7tDD;IACE,oBAAA;Gf+tDD;EehuDD;IACE,WAAA;GfkuDD;EenuDD;IACE,oBAAA;GfquDD;EetuDD;IACE,oBAAA;GfwuDD;EezuDD;IACE,WAAA;Gf2uDD;Ee5uDD;IACE,oBAAA;Gf8uDD;Ee/uDD;IACE,mBAAA;GfivDD;Ee7uDD;IACE,YAAA;Gf+uDD;Ee/vDD;IACE,WAAA;GfiwDD;EelwDD;IACE,mBAAA;GfowDD;EerwDD;IACE,mBAAA;GfuwDD;EexwDD;IACE,UAAA;Gf0wDD;Ee3wDD;IACE,mBAAA;Gf6wDD;Ee9wDD;IACE,mBAAA;GfgxDD;EejxDD;IACE,UAAA;GfmxDD;EepxDD;IACE,mBAAA;GfsxDD;EevxDD;IACE,mBAAA;GfyxDD;Ee1xDD;IACE,UAAA;Gf4xDD;Ee7xDD;IACE,mBAAA;Gf+xDD;EehyDD;IACE,kBAAA;GfkyDD;Ee9xDD;IACE,WAAA;GfgyDD;EelxDD;IACE,kBAAA;GfoxDD;EerxDD;IACE,0BAAA;GfuxDD;EexxDD;IACE,0BAAA;Gf0xDD;Ee3xDD;IACE,iBAAA;Gf6xDD;Ee9xDD;IACE,0BAAA;GfgyDD;EejyDD;IACE,0BAAA;GfmyDD;EepyDD;IACE,iBAAA;GfsyDD;EevyDD;IACE,0BAAA;GfyyDD;Ee1yDD;IACE,0BAAA;Gf4yDD;Ee7yDD;IACE,iBAAA;Gf+yDD;EehzDD;IACE,0BAAA;GfkzDD;EenzDD;IACE,yBAAA;GfqzDD;EetzDD;IACE,gBAAA;GfwzDD;CACF;AahzDD;EE3CI;IACE,YAAA;Gf81DH;Eev1DD;IACE,YAAA;Gfy1DD;Ee11DD;IACE,oBAAA;Gf41DD;Ee71DD;IACE,oBAAA;Gf+1DD;Eeh2DD;IACE,WAAA;Gfk2DD;Een2DD;IACE,oBAAA;Gfq2DD;Eet2DD;IACE,oBAAA;Gfw2DD;Eez2DD;IACE,WAAA;Gf22DD;Ee52DD;IACE,oBAAA;Gf82DD;Ee/2DD;IACE,oBAAA;Gfi3DD;Eel3DD;IACE,WAAA;Gfo3DD;Eer3DD;IACE,oBAAA;Gfu3DD;Eex3DD;IACE,mBAAA;Gf03DD;Ee52DD;IACE,YAAA;Gf82DD;Ee/2DD;IACE,oBAAA;Gfi3DD;Eel3DD;IACE,oBAAA;Gfo3DD;Eer3DD;IACE,WAAA;Gfu3DD;Eex3DD;IACE,oBAAA;Gf03DD;Ee33DD;IACE,oBAAA;Gf63DD;Ee93DD;IACE,WAAA;Gfg4DD;Eej4DD;IACE,oBAAA;Gfm4DD;Eep4DD;IACE,oBAAA;Gfs4DD;Eev4DD;IACE,WAAA;Gfy4DD;Ee14DD;IACE,oBAAA;Gf44DD;Ee74DD;IACE,mBAAA;Gf+4DD;Ee34DD;IACE,YAAA;Gf64DD;Ee75DD;IACE,WAAA;Gf+5DD;Eeh6DD;IACE,mBAAA;Gfk6DD;Een6DD;IACE,mBAAA;Gfq6DD;Eet6DD;IACE,UAAA;Gfw6DD;Eez6DD;IACE,mBAAA;Gf26DD;Ee56DD;IACE,mBAAA;Gf86DD;Ee/6DD;IACE,UAAA;Gfi7DD;Eel7DD;IACE,mBAAA;Gfo7DD;Eer7DD;IACE,mBAAA;Gfu7DD;Eex7DD;IACE,UAAA;Gf07DD;Ee37DD;IACE,mBAAA;Gf67DD;Ee97DD;IACE,kBAAA;Gfg8DD;Ee57DD;IACE,WAAA;Gf87DD;Eeh7DD;IACE,kBAAA;Gfk7DD;Een7DD;IACE,0BAAA;Gfq7DD;Eet7DD;IACE,0BAAA;Gfw7DD;Eez7DD;IACE,iBAAA;Gf27DD;Ee57DD;IACE,0BAAA;Gf87DD;Ee/7DD;IACE,0BAAA;Gfi8DD;Eel8DD;IACE,iBAAA;Gfo8DD;Eer8DD;IACE,0BAAA;Gfu8DD;Eex8DD;IACE,0BAAA;Gf08DD;Ee38DD;IACE,iBAAA;Gf68DD;Ee98DD;IACE,0BAAA;Gfg9DD;Eej9DD;IACE,yBAAA;Gfm9DD;Eep9DD;IACE,gBAAA;Gfs9DD;CACF;Aa38DD;EE9CI;IACE,YAAA;Gf4/DH;Eer/DD;IACE,YAAA;Gfu/DD;Eex/DD;IACE,oBAAA;Gf0/DD;Ee3/DD;IACE,oBAAA;Gf6/DD;Ee9/DD;IACE,WAAA;GfggED;EejgED;IACE,oBAAA;GfmgED;EepgED;IACE,oBAAA;GfsgED;EevgED;IACE,WAAA;GfygED;Ee1gED;IACE,oBAAA;Gf4gED;Ee7gED;IACE,oBAAA;Gf+gED;EehhED;IACE,WAAA;GfkhED;EenhED;IACE,oBAAA;GfqhED;EethED;IACE,mBAAA;GfwhED;Ee1gED;IACE,YAAA;Gf4gED;Ee7gED;IACE,oBAAA;Gf+gED;EehhED;IACE,oBAAA;GfkhED;EenhED;IACE,WAAA;GfqhED;EethED;IACE,oBAAA;GfwhED;EezhED;IACE,oBAAA;Gf2hED;Ee5hED;IACE,WAAA;Gf8hED;Ee/hED;IACE,oBAAA;GfiiED;EeliED;IACE,oBAAA;GfoiED;EeriED;IACE,WAAA;GfuiED;EexiED;IACE,oBAAA;Gf0iED;Ee3iED;IACE,mBAAA;Gf6iED;EeziED;IACE,YAAA;Gf2iED;Ee3jED;IACE,WAAA;Gf6jED;Ee9jED;IACE,mBAAA;GfgkED;EejkED;IACE,mBAAA;GfmkED;EepkED;IACE,UAAA;GfskED;EevkED;IACE,mBAAA;GfykED;Ee1kED;IACE,mBAAA;Gf4kED;Ee7kED;IACE,UAAA;Gf+kED;EehlED;IACE,mBAAA;GfklED;EenlED;IACE,mBAAA;GfqlED;EetlED;IACE,UAAA;GfwlED;EezlED;IACE,mBAAA;Gf2lED;Ee5lED;IACE,kBAAA;Gf8lED;Ee1lED;IACE,WAAA;Gf4lED;Ee9kED;IACE,kBAAA;GfglED;EejlED;IACE,0BAAA;GfmlED;EeplED;IACE,0BAAA;GfslED;EevlED;IACE,iBAAA;GfylED;Ee1lED;IACE,0BAAA;Gf4lED;Ee7lED;IACE,0BAAA;Gf+lED;EehmED;IACE,iBAAA;GfkmED;EenmED;IACE,0BAAA;GfqmED;EetmED;IACE,0BAAA;GfwmED;EezmED;IACE,iBAAA;Gf2mED;Ee5mED;IACE,0BAAA;Gf8mED;Ee/mED;IACE,yBAAA;GfinED;EelnED;IACE,gBAAA;GfonED;CACF;AgBxrED;EACE,8BAAA;ChB0rED;AgBxrED;EACE,iBAAA;EACA,oBAAA;EACA,eAAA;EACA,iBAAA;ChB0rED;AgBxrED;EACE,iBAAA;ChB0rED;AgBprED;EACE,YAAA;EACA,gBAAA;EACA,oBAAA;ChBsrED;AgBzrED;;;;;;EAWQ,aAAA;EACA,wBAAA;EACA,oBAAA;EACA,2BAAA;ChBsrEP;AgBpsED;EAoBI,uBAAA;EACA,8BAAA;ChBmrEH;AgBxsED;;;;;;EA8BQ,cAAA;ChBkrEP;AgBhtED;EAoCI,2BAAA;ChB+qEH;AgBntED;EAyCI,uBAAA;ChB6qEH;AgBtqED;;;;;;EAOQ,aAAA;ChBuqEP;AgB5pED;EACE,uBAAA;ChB8pED;AgB/pED;;;;;;EAQQ,uBAAA;ChB+pEP;AgBvqED;;EAeM,yBAAA;ChB4pEL;AgBlpED;EAEI,0BAAA;ChBmpEH;AgB1oED;EAEI,0BAAA;ChB2oEH;AgBloED;EACE,iBAAA;EACA,YAAA;EACA,sBAAA;ChBooED;AgB/nEG;;EACE,iBAAA;EACA,YAAA;EACA,oBAAA;ChBkoEL;AiB9wEC;;;;;;;;;;;;EAOI,0BAAA;CjBqxEL;AiB/wEC;;;;;EAMI,0BAAA;CjBgxEL;AiBnyEC;;;;;;;;;;;;EAOI,0BAAA;CjB0yEL;AiBpyEC;;;;;EAMI,0BAAA;CjBqyEL;AiBxzEC;;;;;;;;;;;;EAOI,0BAAA;CjB+zEL;AiBzzEC;;;;;EAMI,0BAAA;CjB0zEL;AiB70EC;;;;;;;;;;;;EAOI,0BAAA;CjBo1EL;AiB90EC;;;;;EAMI,0BAAA;CjB+0EL;AiBl2EC;;;;;;;;;;;;EAOI,0BAAA;CjBy2EL;AiBn2EC;;;;;EAMI,0BAAA;CjBo2EL;AgBltED;EACE,iBAAA;EACA,kBAAA;ChBotED;AgBvpED;EACA;IA3DI,YAAA;IACA,oBAAA;IACA,mBAAA;IACA,6CAAA;IACA,uBAAA;GhBqtED;EgB9pEH;IAnDM,iBAAA;GhBotEH;EgBjqEH;;;;;;IA1CY,oBAAA;GhBmtET;EgBzqEH;IAlCM,UAAA;GhB8sEH;EgB5qEH;;;;;;IAzBY,eAAA;GhB6sET;EgBprEH;;;;;;IArBY,gBAAA;GhBitET;EgB5rEH;;;;IARY,iBAAA;GhB0sET;CACF;AkBp6ED;EACE,WAAA;EACA,UAAA;EACA,UAAA;EAIA,aAAA;ClBm6ED;AkBh6ED;EACE,eAAA;EACA,YAAA;EACA,WAAA;EACA,oBAAA;EACA,gBAAA;EACA,qBAAA;EACA,eAAA;EACA,UAAA;EACA,iCAAA;ClBk6ED;AkB/5ED;EACE,sBAAA;EACA,gBAAA;EACA,mBAAA;EACA,kBAAA;ClBi6ED;AkBt5ED;Eb4BE,+BAAA;EACG,4BAAA;EACK,uBAAA;CL63ET;AkBt5ED;;EAEE,gBAAA;EACA,mBAAA;EACA,oBAAA;ClBw5ED;AkBr5ED;EACE,eAAA;ClBu5ED;AkBn5ED;EACE,eAAA;EACA,YAAA;ClBq5ED;AkBj5ED;;EAEE,aAAA;ClBm5ED;AkB/4ED;;;EZvEE,qBAAA;EAEA,2CAAA;EACA,qBAAA;CN09ED;AkB/4ED;EACE,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;ClBi5ED;AkBv3ED;EACE,eAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;EbxDA,yDAAA;EACQ,iDAAA;EAyHR,uFAAA;EACK,0EAAA;EACG,uEAAA;CL0zET;AmBl8EC;EACE,sBAAA;EACA,WAAA;EdUF,uFAAA;EACQ,+EAAA;CL27ET;AK15EC;EACE,YAAA;EACA,WAAA;CL45EH;AK15EC;EAA0B,YAAA;CL65E3B;AK55EC;EAAgC,YAAA;CL+5EjC;AkBn4EC;EACE,UAAA;EACA,8BAAA;ClBq4EH;AkB73EC;;;EAGE,0BAAA;EACA,WAAA;ClB+3EH;AkB53EC;;EAEE,oBAAA;ClB83EH;AkB13EC;EACE,aAAA;ClB43EH;AkBh3ED;EACE,yBAAA;ClBk3ED;AkB10ED;EAtBI;;;;IACE,kBAAA;GlBs2EH;EkBn2EC;;;;;;;;IAEE,kBAAA;GlB22EH;EkBx2EC;;;;;;;;IAEE,kBAAA;GlBg3EH;CACF;AkBt2ED;EACE,oBAAA;ClBw2ED;AkBh2ED;;EAEE,mBAAA;EACA,eAAA;EACA,iBAAA;EACA,oBAAA;ClBk2ED;AkBv2ED;;EAQI,iBAAA;EACA,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,gBAAA;ClBm2EH;AkBh2ED;;;;EAIE,mBAAA;EACA,mBAAA;EACA,mBAAA;ClBk2ED;AkB/1ED;;EAEE,iBAAA;ClBi2ED;AkB71ED;;EAEE,mBAAA;EACA,sBAAA;EACA,mBAAA;EACA,iBAAA;EACA,uBAAA;EACA,oBAAA;EACA,gBAAA;ClB+1ED;AkB71ED;;EAEE,cAAA;EACA,kBAAA;ClB+1ED;AkBt1EC;;;;;;EAGE,oBAAA;ClB21EH;AkBr1EC;;;;EAEE,oBAAA;ClBy1EH;AkBn1EC;;;;EAGI,oBAAA;ClBs1EL;AkB30ED;EAEE,iBAAA;EACA,oBAAA;EAEA,iBAAA;EACA,iBAAA;ClB20ED;AkBz0EC;;EAEE,gBAAA;EACA,iBAAA;ClB20EH;AkB9zED;ECnQE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CnBokFD;AmBlkFC;EACE,aAAA;EACA,kBAAA;CnBokFH;AmBjkFC;;EAEE,aAAA;CnBmkFH;AkB10ED;EAEI,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;ClB20EH;AkBj1ED;EASI,aAAA;EACA,kBAAA;ClB20EH;AkBr1ED;;EAcI,aAAA;ClB20EH;AkBz1ED;EAiBI,aAAA;EACA,iBAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;ClB20EH;AkBv0ED;EC/RE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CnBymFD;AmBvmFC;EACE,aAAA;EACA,kBAAA;CnBymFH;AmBtmFC;;EAEE,aAAA;CnBwmFH;AkBn1ED;EAEI,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;ClBo1EH;AkB11ED;EASI,aAAA;EACA,kBAAA;ClBo1EH;AkB91ED;;EAcI,aAAA;ClBo1EH;AkBl2ED;EAiBI,aAAA;EACA,iBAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;ClBo1EH;AkB30ED;EAEE,mBAAA;ClB40ED;AkB90ED;EAMI,sBAAA;ClB20EH;AkBv0ED;EACE,mBAAA;EACA,OAAA;EACA,SAAA;EACA,WAAA;EACA,eAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,mBAAA;EACA,qBAAA;ClBy0ED;AkBv0ED;;;EAGE,YAAA;EACA,aAAA;EACA,kBAAA;ClBy0ED;AkBv0ED;;;EAGE,YAAA;EACA,aAAA;EACA,kBAAA;ClBy0ED;AkBr0ED;;;;;;;;;;EC1ZI,eAAA;CnB2uFH;AkBj1ED;ECtZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CL4rFT;AmB1uFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CLisFT;AkB31ED;EC5YI,eAAA;EACA,sBAAA;EACA,0BAAA;CnB0uFH;AkBh2ED;ECtYI,eAAA;CnByuFH;AkBh2ED;;;;;;;;;;EC7ZI,eAAA;CnBywFH;AkB52ED;ECzZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CL0tFT;AmBxwFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL+tFT;AkBt3ED;EC/YI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBwwFH;AkB33ED;ECzYI,eAAA;CnBuwFH;AkB33ED;;;;;;;;;;EChaI,eAAA;CnBuyFH;AkBv4ED;EC5ZI,sBAAA;Ed+CF,yDAAA;EACQ,iDAAA;CLwvFT;AmBtyFG;EACE,sBAAA;Ed4CJ,0EAAA;EACQ,kEAAA;CL6vFT;AkBj5ED;EClZI,eAAA;EACA,sBAAA;EACA,0BAAA;CnBsyFH;AkBt5ED;EC5YI,eAAA;CnBqyFH;AkBl5EC;EACE,UAAA;ClBo5EH;AkBl5EC;EACE,OAAA;ClBo5EH;AkB14ED;EACE,eAAA;EACA,gBAAA;EACA,oBAAA;EACA,eAAA;ClB44ED;AkBzzED;EAwEA;IAtIM,sBAAA;IACA,iBAAA;IACA,uBAAA;GlB23EH;EkBvvEH;IA/HM,sBAAA;IACA,YAAA;IACA,uBAAA;GlBy3EH;EkB5vEH;IAxHM,sBAAA;GlBu3EH;EkB/vEH;IApHM,sBAAA;IACA,uBAAA;GlBs3EH;EkBnwEH;;;IA9GQ,YAAA;GlBs3EL;EkBxwEH;IAxGM,YAAA;GlBm3EH;EkB3wEH;IApGM,iBAAA;IACA,uBAAA;GlBk3EH;EkB/wEH;;IA5FM,sBAAA;IACA,cAAA;IACA,iBAAA;IACA,uBAAA;GlB+2EH;EkBtxEH;;IAtFQ,gBAAA;GlBg3EL;EkB1xEH;;IAjFM,mBAAA;IACA,eAAA;GlB+2EH;EkB/xEH;IA3EM,OAAA;GlB62EH;CACF;AkBn2ED;;;;EASI,cAAA;EACA,iBAAA;EACA,iBAAA;ClBg2EH;AkB32ED;;EAiBI,iBAAA;ClB81EH;AkB/2ED;EJthBE,mBAAA;EACA,oBAAA;Cdw4FD;AkB50EC;EAyBF;IAnCM,kBAAA;IACA,iBAAA;IACA,iBAAA;GlB01EH;CACF;AkB13ED;EAwCI,YAAA;ClBq1EH;AkBv0EC;EAUF;IAdQ,kBAAA;IACA,gBAAA;GlB+0EL;CACF;AkBr0EC;EAEF;IANQ,iBAAA;IACA,gBAAA;GlB60EL;CACF;AoBt6FD;EACE,sBAAA;EACA,iBAAA;EACA,oBAAA;EACA,mBAAA;EACA,uBAAA;EACA,+BAAA;MAAA,2BAAA;EACA,gBAAA;EACA,uBAAA;EACA,8BAAA;EACA,oBAAA;EC0CA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,mBAAA;EhB+JA,0BAAA;EACG,uBAAA;EACC,sBAAA;EACI,kBAAA;CLiuFT;AoBz6FG;;;;;;EdrBF,qBAAA;EAEA,2CAAA;EACA,qBAAA;CNq8FD;AoB76FC;;;EAGE,YAAA;EACA,sBAAA;CpB+6FH;AoB56FC;;EAEE,WAAA;EACA,uBAAA;Ef2BF,yDAAA;EACQ,iDAAA;CLo5FT;AoB56FC;;;EAGE,oBAAA;EE7CF,cAAA;EAGA,0BAAA;EjB8DA,yBAAA;EACQ,iBAAA;CL65FT;AoB56FG;;EAEE,qBAAA;CpB86FL;AoBr6FD;EC3DE,YAAA;EACA,uBAAA;EACA,mBAAA;CrBm+FD;AqBj+FC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBm+FP;AqBj+FC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBm+FP;AqBj+FC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBm+FP;AqBj+FG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBy+FT;AqBt+FC;;;EAGE,uBAAA;CrBw+FH;AqBn+FG;;;;;;;;;EAGE,uBAAA;EACI,mBAAA;CrB2+FT;AoB19FD;ECZI,YAAA;EACA,uBAAA;CrBy+FH;AoB39FD;EC9DE,YAAA;EACA,0BAAA;EACA,sBAAA;CrB4hGD;AqB1hGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB4hGP;AqB1hGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB4hGP;AqB1hGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB4hGP;AqB1hGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBkiGT;AqB/hGC;;;EAGE,uBAAA;CrBiiGH;AqB5hGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBoiGT;AoBhhGD;ECfI,eAAA;EACA,uBAAA;CrBkiGH;AoBhhGD;EClEE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBqlGD;AqBnlGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBqlGP;AqBnlGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBqlGP;AqBnlGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBqlGP;AqBnlGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB2lGT;AqBxlGC;;;EAGE,uBAAA;CrB0lGH;AqBrlGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrB6lGT;AoBrkGD;ECnBI,eAAA;EACA,uBAAA;CrB2lGH;AoBrkGD;ECtEE,YAAA;EACA,0BAAA;EACA,sBAAA;CrB8oGD;AqB5oGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB8oGP;AqB5oGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB8oGP;AqB5oGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB8oGP;AqB5oGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBopGT;AqBjpGC;;;EAGE,uBAAA;CrBmpGH;AqB9oGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBspGT;AoB1nGD;ECvBI,eAAA;EACA,uBAAA;CrBopGH;AoB1nGD;EC1EE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBusGD;AqBrsGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBusGP;AqBrsGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBusGP;AqBrsGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBusGP;AqBrsGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrB6sGT;AqB1sGC;;;EAGE,uBAAA;CrB4sGH;AqBvsGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrB+sGT;AoB/qGD;EC3BI,eAAA;EACA,uBAAA;CrB6sGH;AoB/qGD;EC9EE,YAAA;EACA,0BAAA;EACA,sBAAA;CrBgwGD;AqB9vGC;;EAEE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBgwGP;AqB9vGC;EACE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBgwGP;AqB9vGC;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBgwGP;AqB9vGG;;;;;;;;;EAGE,YAAA;EACA,0BAAA;EACI,sBAAA;CrBswGT;AqBnwGC;;;EAGE,uBAAA;CrBqwGH;AqBhwGG;;;;;;;;;EAGE,0BAAA;EACI,sBAAA;CrBwwGT;AoBpuGD;EC/BI,eAAA;EACA,uBAAA;CrBswGH;AoB/tGD;EACE,eAAA;EACA,oBAAA;EACA,iBAAA;CpBiuGD;AoB/tGC;;;;;EAKE,8BAAA;EfnCF,yBAAA;EACQ,iBAAA;CLqwGT;AoBhuGC;;;;EAIE,0BAAA;CpBkuGH;AoBhuGC;;EAEE,eAAA;EACA,2BAAA;EACA,8BAAA;CpBkuGH;AoB9tGG;;;;EAEE,eAAA;EACA,sBAAA;CpBkuGL;AoBztGD;;ECxEE,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CrBqyGD;AoB5tGD;;EC5EE,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CrB4yGD;AoB/tGD;;EChFE,iBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CrBmzGD;AoB9tGD;EACE,eAAA;EACA,YAAA;CpBguGD;AoB5tGD;EACE,gBAAA;CpB8tGD;AoBvtGC;;;EACE,YAAA;CpB2tGH;AuBr3GD;EACE,WAAA;ElBoLA,yCAAA;EACK,oCAAA;EACG,iCAAA;CLosGT;AuBx3GC;EACE,WAAA;CvB03GH;AuBt3GD;EACE,cAAA;CvBw3GD;AuBt3GC;EAAY,eAAA;CvBy3Gb;AuBx3GC;EAAY,mBAAA;CvB23Gb;AuB13GC;EAAY,yBAAA;CvB63Gb;AuB13GD;EACE,mBAAA;EACA,UAAA;EACA,iBAAA;ElBuKA,gDAAA;EACQ,2CAAA;KAAA,wCAAA;EAOR,mCAAA;EACQ,8BAAA;KAAA,2BAAA;EAGR,yCAAA;EACQ,oCAAA;KAAA,iCAAA;CL8sGT;AwBx5GD;EACE,sBAAA;EACA,SAAA;EACA,UAAA;EACA,iBAAA;EACA,uBAAA;EACA,uBAAA;EACA,yBAAA;EACA,oCAAA;EACA,mCAAA;CxB05GD;AwBt5GD;;EAEE,mBAAA;CxBw5GD;AwBp5GD;EACE,WAAA;CxBs5GD;AwBl5GD;EACE,mBAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,cAAA;EACA,YAAA;EACA,iBAAA;EACA,eAAA;EACA,gBAAA;EACA,iBAAA;EACA,gBAAA;EACA,iBAAA;EACA,uBAAA;EACA,uBAAA;EACA,sCAAA;EACA,mBAAA;EnBsBA,oDAAA;EACQ,4CAAA;EmBrBR,qCAAA;UAAA,6BAAA;CxBq5GD;AwBh5GC;EACE,SAAA;EACA,WAAA;CxBk5GH;AwB36GD;ECzBE,YAAA;EACA,cAAA;EACA,iBAAA;EACA,0BAAA;CzBu8GD;AwBj7GD;EAmCI,eAAA;EACA,kBAAA;EACA,YAAA;EACA,oBAAA;EACA,wBAAA;EACA,eAAA;EACA,oBAAA;CxBi5GH;AwB34GC;;EAEE,sBAAA;EACA,eAAA;EACA,0BAAA;CxB64GH;AwBv4GC;;;EAGE,YAAA;EACA,sBAAA;EACA,WAAA;EACA,0BAAA;CxBy4GH;AwBh4GC;;;EAGE,eAAA;CxBk4GH;AwB93GC;;EAEE,sBAAA;EACA,8BAAA;EACA,uBAAA;EE3GF,oEAAA;EF6GE,oBAAA;CxBg4GH;AwB33GD;EAGI,eAAA;CxB23GH;AwB93GD;EAQI,WAAA;CxBy3GH;AwBj3GD;EACE,WAAA;EACA,SAAA;CxBm3GD;AwB32GD;EACE,QAAA;EACA,YAAA;CxB62GD;AwBz2GD;EACE,eAAA;EACA,kBAAA;EACA,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,oBAAA;CxB22GD;AwBv2GD;EACE,gBAAA;EACA,QAAA;EACA,SAAA;EACA,UAAA;EACA,OAAA;EACA,aAAA;CxBy2GD;AwBr2GD;EACE,SAAA;EACA,WAAA;CxBu2GD;AwB/1GD;;EAII,cAAA;EACA,0BAAA;EACA,4BAAA;EACA,YAAA;CxB+1GH;AwBt2GD;;EAWI,UAAA;EACA,aAAA;EACA,mBAAA;CxB+1GH;AwB10GD;EAXE;IApEA,WAAA;IACA,SAAA;GxB65GC;EwB11GD;IA1DA,QAAA;IACA,YAAA;GxBu5GC;CACF;A2BviHD;;EAEE,mBAAA;EACA,sBAAA;EACA,uBAAA;C3ByiHD;A2B7iHD;;EAMI,mBAAA;EACA,YAAA;C3B2iHH;A2BziHG;;;;;;;;EAIE,WAAA;C3B+iHL;A2BziHD;;;;EAKI,kBAAA;C3B0iHH;A2BriHD;EACE,kBAAA;C3BuiHD;A2BxiHD;;;EAOI,YAAA;C3BsiHH;A2B7iHD;;;EAYI,iBAAA;C3BsiHH;A2BliHD;EACE,iBAAA;C3BoiHD;A2BhiHD;EACE,eAAA;C3BkiHD;A2BjiHC;EClDA,8BAAA;EACG,2BAAA;C5BslHJ;A2BhiHD;;EC/CE,6BAAA;EACG,0BAAA;C5BmlHJ;A2B/hHD;EACE,YAAA;C3BiiHD;A2B/hHD;EACE,iBAAA;C3BiiHD;A2B/hHD;;ECnEE,8BAAA;EACG,2BAAA;C5BsmHJ;A2B9hHD;ECjEE,6BAAA;EACG,0BAAA;C5BkmHJ;A2B7hHD;;EAEE,WAAA;C3B+hHD;A2B9gHD;EACE,kBAAA;EACA,mBAAA;C3BghHD;A2B9gHD;EACE,mBAAA;EACA,oBAAA;C3BghHD;A2B3gHD;EtB/CE,yDAAA;EACQ,iDAAA;CL6jHT;A2B3gHC;EtBnDA,yBAAA;EACQ,iBAAA;CLikHT;A2BxgHD;EACE,eAAA;C3B0gHD;A2BvgHD;EACE,wBAAA;EACA,uBAAA;C3BygHD;A2BtgHD;EACE,wBAAA;C3BwgHD;A2BjgHD;;;EAII,eAAA;EACA,YAAA;EACA,YAAA;EACA,gBAAA;C3BkgHH;A2BzgHD;EAcM,YAAA;C3B8/GL;A2B5gHD;;;;EAsBI,iBAAA;EACA,eAAA;C3B4/GH;A2Bv/GC;EACE,iBAAA;C3By/GH;A2Bv/GC;EC3KA,6BAAA;EACC,4BAAA;EAOD,8BAAA;EACC,6BAAA;C5B+pHF;A2Bz/GC;EC/KA,2BAAA;EACC,0BAAA;EAOD,gCAAA;EACC,+BAAA;C5BqqHF;A2B1/GD;EACE,iBAAA;C3B4/GD;A2B1/GD;;EC/KE,8BAAA;EACC,6BAAA;C5B6qHF;A2Bz/GD;EC7LE,2BAAA;EACC,0BAAA;C5ByrHF;A2Br/GD;EACE,eAAA;EACA,YAAA;EACA,oBAAA;EACA,0BAAA;C3Bu/GD;A2B3/GD;;EAOI,YAAA;EACA,oBAAA;EACA,UAAA;C3Bw/GH;A2BjgHD;EAYI,YAAA;C3Bw/GH;A2BpgHD;EAgBI,WAAA;C3Bu/GH;A2Bt+GD;;;;EAKM,mBAAA;EACA,uBAAA;EACA,qBAAA;C3Bu+GL;A6BjtHD;EACE,mBAAA;EACA,eAAA;EACA,0BAAA;C7BmtHD;A6BhtHC;EACE,YAAA;EACA,gBAAA;EACA,iBAAA;C7BktHH;A6B3tHD;EAeI,mBAAA;EACA,WAAA;EAKA,YAAA;EAEA,YAAA;EACA,iBAAA;C7B0sHH;A6BxsHG;EACE,WAAA;C7B0sHL;A6BhsHD;;;EV0BE,aAAA;EACA,mBAAA;EACA,gBAAA;EACA,uBAAA;EACA,mBAAA;CnB2qHD;AmBzqHC;;;EACE,aAAA;EACA,kBAAA;CnB6qHH;AmB1qHC;;;;;;EAEE,aAAA;CnBgrHH;A6BltHD;;;EVqBE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;CnBksHD;AmBhsHC;;;EACE,aAAA;EACA,kBAAA;CnBosHH;AmBjsHC;;;;;;EAEE,aAAA;CnBusHH;A6BhuHD;;;EAGE,oBAAA;C7BkuHD;A6BhuHC;;;EACE,iBAAA;C7BouHH;A6BhuHD;;EAEE,UAAA;EACA,oBAAA;EACA,uBAAA;C7BkuHD;A6B7tHD;EACE,kBAAA;EACA,gBAAA;EACA,oBAAA;EACA,eAAA;EACA,eAAA;EACA,mBAAA;EACA,0BAAA;EACA,uBAAA;EACA,mBAAA;C7B+tHD;A6B5tHC;EACE,kBAAA;EACA,gBAAA;EACA,mBAAA;C7B8tHH;A6B5tHC;EACE,mBAAA;EACA,gBAAA;EACA,mBAAA;C7B8tHH;A6BlvHD;;EA0BI,cAAA;C7B4tHH;A6BvtHD;;;;;;;EDpGE,8BAAA;EACG,2BAAA;C5Bo0HJ;A6BxtHD;EACE,gBAAA;C7B0tHD;A6BxtHD;;;;;;;EDxGE,6BAAA;EACG,0BAAA;C5By0HJ;A6BztHD;EACE,eAAA;C7B2tHD;A6BttHD;EACE,mBAAA;EAGA,aAAA;EACA,oBAAA;C7BstHD;A6B3tHD;EAUI,mBAAA;C7BotHH;A6B9tHD;EAYM,kBAAA;C7BqtHL;A6BltHG;;;EAGE,WAAA;C7BotHL;A6B/sHC;;EAGI,mBAAA;C7BgtHL;A6B7sHC;;EAGI,WAAA;EACA,kBAAA;C7B8sHL;A8B72HD;EACE,iBAAA;EACA,gBAAA;EACA,iBAAA;C9B+2HD;A8Bl3HD;EAOI,mBAAA;EACA,eAAA;C9B82HH;A8Bt3HD;EAWM,mBAAA;EACA,eAAA;EACA,mBAAA;C9B82HL;A8B72HK;;EAEE,sBAAA;EACA,0BAAA;C9B+2HP;A8B12HG;EACE,eAAA;C9B42HL;A8B12HK;;EAEE,eAAA;EACA,sBAAA;EACA,8BAAA;EACA,oBAAA;C9B42HP;A8Br2HG;;;EAGE,0BAAA;EACA,sBAAA;C9Bu2HL;A8Bh5HD;ELHE,YAAA;EACA,cAAA;EACA,iBAAA;EACA,0BAAA;CzBs5HD;A8Bt5HD;EA0DI,gBAAA;C9B+1HH;A8Bt1HD;EACE,8BAAA;C9Bw1HD;A8Bz1HD;EAGI,YAAA;EAEA,oBAAA;C9Bw1HH;A8B71HD;EASM,kBAAA;EACA,wBAAA;EACA,8BAAA;EACA,2BAAA;C9Bu1HL;A8Bt1HK;EACE,mCAAA;C9Bw1HP;A8Bl1HK;;;EAGE,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,iCAAA;EACA,gBAAA;C9Bo1HP;A8B/0HC;EAqDA,YAAA;EA8BA,iBAAA;C9BgwHD;A8Bn1HC;EAwDE,YAAA;C9B8xHH;A8Bt1HC;EA0DI,mBAAA;EACA,mBAAA;C9B+xHL;A8B11HC;EAgEE,UAAA;EACA,WAAA;C9B6xHH;A8BjxHD;EA0DA;IAjEM,oBAAA;IACA,UAAA;G9B4xHH;E8B5tHH;IA9DQ,iBAAA;G9B6xHL;CACF;A8Bv2HC;EAuFE,gBAAA;EACA,mBAAA;C9BmxHH;A8B32HC;;;EA8FE,uBAAA;C9BkxHH;A8BpwHD;EA2BA;IApCM,8BAAA;IACA,2BAAA;G9BixHH;E8B9uHH;;;IA9BM,0BAAA;G9BixHH;CACF;A8Bl3HD;EAEI,YAAA;C9Bm3HH;A8Br3HD;EAMM,mBAAA;C9Bk3HL;A8Bx3HD;EASM,iBAAA;C9Bk3HL;A8B72HK;;;EAGE,YAAA;EACA,0BAAA;C9B+2HP;A8Bv2HD;EAEI,YAAA;C9Bw2HH;A8B12HD;EAIM,gBAAA;EACA,eAAA;C9By2HL;A8B71HD;EACE,YAAA;C9B+1HD;A8Bh2HD;EAII,YAAA;C9B+1HH;A8Bn2HD;EAMM,mBAAA;EACA,mBAAA;C9Bg2HL;A8Bv2HD;EAYI,UAAA;EACA,WAAA;C9B81HH;A8Bl1HD;EA0DA;IAjEM,oBAAA;IACA,UAAA;G9B61HH;E8B7xHH;IA9DQ,iBAAA;G9B81HL;CACF;A8Bt1HD;EACE,iBAAA;C9Bw1HD;A8Bz1HD;EAKI,gBAAA;EACA,mBAAA;C9Bu1HH;A8B71HD;;;EAYI,uBAAA;C9Bs1HH;A8Bx0HD;EA2BA;IApCM,8BAAA;IACA,2BAAA;G9Bq1HH;E8BlzHH;;;IA9BM,0BAAA;G9Bq1HH;CACF;A8B50HD;EAEI,cAAA;C9B60HH;A8B/0HD;EAKI,eAAA;C9B60HH;A8Bp0HD;EAEE,iBAAA;EF3OA,2BAAA;EACC,0BAAA;C5BijIF;A+B3iID;EACE,mBAAA;EACA,iBAAA;EACA,oBAAA;EACA,8BAAA;C/B6iID;A+BriID;EA8nBA;IAhoBI,mBAAA;G/B2iID;CACF;A+B5hID;EAgnBA;IAlnBI,YAAA;G/BkiID;CACF;A+BphID;EACE,oBAAA;EACA,oBAAA;EACA,mBAAA;EACA,kCAAA;EACA,2DAAA;UAAA,mDAAA;EAEA,kCAAA;C/BqhID;A+BnhIC;EACE,iBAAA;C/BqhIH;A+Bz/HD;EA6jBA;IArlBI,YAAA;IACA,cAAA;IACA,yBAAA;YAAA,iBAAA;G/BqhID;E+BnhIC;IACE,0BAAA;IACA,wBAAA;IACA,kBAAA;IACA,6BAAA;G/BqhIH;E+BlhIC;IACE,oBAAA;G/BohIH;E+B/gIC;;;IAGE,gBAAA;IACA,iBAAA;G/BihIH;CACF;A+B7gID;;EAGI,kBAAA;C/B8gIH;A+BzgIC;EAmjBF;;IArjBM,kBAAA;G/BghIH;CACF;A+BvgID;;;;EAII,oBAAA;EACA,mBAAA;C/BygIH;A+BngIC;EAgiBF;;;;IAniBM,gBAAA;IACA,eAAA;G/B6gIH;CACF;A+BjgID;EACE,cAAA;EACA,sBAAA;C/BmgID;A+B9/HD;EA8gBA;IAhhBI,iBAAA;G/BogID;CACF;A+BhgID;;EAEE,gBAAA;EACA,SAAA;EACA,QAAA;EACA,cAAA;C/BkgID;A+B5/HD;EAggBA;;IAlgBI,iBAAA;G/BmgID;CACF;A+BjgID;EACE,OAAA;EACA,sBAAA;C/BmgID;A+BjgID;EACE,UAAA;EACA,iBAAA;EACA,sBAAA;C/BmgID;A+B7/HD;EACE,YAAA;EACA,mBAAA;EACA,gBAAA;EACA,kBAAA;EACA,aAAA;C/B+/HD;A+B7/HC;;EAEE,sBAAA;C/B+/HH;A+BxgID;EAaI,eAAA;C/B8/HH;A+Br/HD;EALI;;IAEE,mBAAA;G/B6/HH;CACF;A+Bn/HD;EACE,mBAAA;EACA,aAAA;EACA,mBAAA;EACA,kBAAA;EC9LA,gBAAA;EACA,mBAAA;ED+LA,8BAAA;EACA,uBAAA;EACA,8BAAA;EACA,mBAAA;C/Bs/HD;A+Bl/HC;EACE,WAAA;C/Bo/HH;A+BlgID;EAmBI,eAAA;EACA,YAAA;EACA,YAAA;EACA,mBAAA;C/Bk/HH;A+BxgID;EAyBI,gBAAA;C/Bk/HH;A+B5+HD;EAqbA;IAvbI,cAAA;G/Bk/HD;CACF;A+Bz+HD;EACE,oBAAA;C/B2+HD;A+B5+HD;EAII,kBAAA;EACA,qBAAA;EACA,kBAAA;C/B2+HH;A+B/8HC;EA2YF;IAjaM,iBAAA;IACA,YAAA;IACA,YAAA;IACA,cAAA;IACA,8BAAA;IACA,UAAA;IACA,yBAAA;YAAA,iBAAA;G/By+HH;E+B9kHH;;IAxZQ,2BAAA;G/B0+HL;E+BllHH;IArZQ,kBAAA;G/B0+HL;E+Bz+HK;;IAEE,uBAAA;G/B2+HP;CACF;A+Bz9HD;EA+XA;IA1YI,YAAA;IACA,UAAA;G/Bw+HD;E+B/lHH;IAtYM,YAAA;G/Bw+HH;E+BlmHH;IApYQ,kBAAA;IACA,qBAAA;G/By+HL;CACF;A+B99HD;EACE,mBAAA;EACA,oBAAA;EACA,mBAAA;EACA,kCAAA;EACA,qCAAA;E1B9NA,6FAAA;EACQ,qFAAA;E2B/DR,gBAAA;EACA,mBAAA;ChC+vID;AkBzuHD;EAwEA;IAtIM,sBAAA;IACA,iBAAA;IACA,uBAAA;GlB2yHH;EkBvqHH;IA/HM,sBAAA;IACA,YAAA;IACA,uBAAA;GlByyHH;EkB5qHH;IAxHM,sBAAA;GlBuyHH;EkB/qHH;IApHM,sBAAA;IACA,uBAAA;GlBsyHH;EkBnrHH;;;IA9GQ,YAAA;GlBsyHL;EkBxrHH;IAxGM,YAAA;GlBmyHH;EkB3rHH;IApGM,iBAAA;IACA,uBAAA;GlBkyHH;EkB/rHH;;IA5FM,sBAAA;IACA,cAAA;IACA,iBAAA;IACA,uBAAA;GlB+xHH;EkBtsHH;;IAtFQ,gBAAA;GlBgyHL;EkB1sHH;;IAjFM,mBAAA;IACA,eAAA;GlB+xHH;EkB/sHH;IA3EM,OAAA;GlB6xHH;CACF;A+BvgIC;EAmWF;IAzWM,mBAAA;G/BihIH;E+B/gIG;IACE,iBAAA;G/BihIL;CACF;A+BhgID;EAoVA;IA5VI,YAAA;IACA,UAAA;IACA,eAAA;IACA,gBAAA;IACA,eAAA;IACA,kBAAA;I1BzPF,yBAAA;IACQ,iBAAA;GLswIP;CACF;A+BtgID;EACE,cAAA;EHpUA,2BAAA;EACC,0BAAA;C5B60IF;A+BtgID;EACE,iBAAA;EHzUA,6BAAA;EACC,4BAAA;EAOD,8BAAA;EACC,6BAAA;C5B40IF;A+BlgID;EChVE,gBAAA;EACA,mBAAA;ChCq1ID;A+BngIC;ECnVA,iBAAA;EACA,oBAAA;ChCy1ID;A+BpgIC;ECtVA,iBAAA;EACA,oBAAA;ChC61ID;A+B9/HD;EChWE,iBAAA;EACA,oBAAA;ChCi2ID;A+B1/HD;EAsSA;IA1SI,YAAA;IACA,kBAAA;IACA,mBAAA;G/BkgID;CACF;A+Br+HD;EAhBE;IExWA,uBAAA;GjCi2IC;E+Bx/HD;IE5WA,wBAAA;IF8WE,oBAAA;G/B0/HD;E+B5/HD;IAKI,gBAAA;G/B0/HH;CACF;A+Bj/HD;EACE,0BAAA;EACA,sBAAA;C/Bm/HD;A+Br/HD;EAKI,YAAA;C/Bm/HH;A+Bl/HG;;EAEE,eAAA;EACA,8BAAA;C/Bo/HL;A+B7/HD;EAcI,YAAA;C/Bk/HH;A+BhgID;EAmBM,YAAA;C/Bg/HL;A+B9+HK;;EAEE,YAAA;EACA,8BAAA;C/Bg/HP;A+B5+HK;;;EAGE,YAAA;EACA,0BAAA;C/B8+HP;A+B1+HK;;;EAGE,YAAA;EACA,8BAAA;C/B4+HP;A+BphID;EA8CI,mBAAA;C/By+HH;A+Bx+HG;;EAEE,uBAAA;C/B0+HL;A+B3hID;EAoDM,uBAAA;C/B0+HL;A+B9hID;;EA0DI,sBAAA;C/Bw+HH;A+Bj+HK;;;EAGE,0BAAA;EACA,YAAA;C/Bm+HP;A+Bl8HC;EAoKF;IA7LU,YAAA;G/B+9HP;E+B99HO;;IAEE,YAAA;IACA,8BAAA;G/Bg+HT;E+B59HO;;;IAGE,YAAA;IACA,0BAAA;G/B89HT;E+B19HO;;;IAGE,YAAA;IACA,8BAAA;G/B49HT;CACF;A+B9jID;EA8GI,YAAA;C/Bm9HH;A+Bl9HG;EACE,YAAA;C/Bo9HL;A+BpkID;EAqHI,YAAA;C/Bk9HH;A+Bj9HG;;EAEE,YAAA;C/Bm9HL;A+B/8HK;;;;EAEE,YAAA;C/Bm9HP;A+B38HD;EACE,uBAAA;EACA,sBAAA;C/B68HD;A+B/8HD;EAKI,eAAA;C/B68HH;A+B58HG;;EAEE,YAAA;EACA,8BAAA;C/B88HL;A+Bv9HD;EAcI,eAAA;C/B48HH;A+B19HD;EAmBM,eAAA;C/B08HL;A+Bx8HK;;EAEE,YAAA;EACA,8BAAA;C/B08HP;A+Bt8HK;;;EAGE,YAAA;EACA,0BAAA;C/Bw8HP;A+Bp8HK;;;EAGE,YAAA;EACA,8BAAA;C/Bs8HP;A+B9+HD;EA+CI,mBAAA;C/Bk8HH;A+Bj8HG;;EAEE,uBAAA;C/Bm8HL;A+Br/HD;EAqDM,uBAAA;C/Bm8HL;A+Bx/HD;;EA2DI,sBAAA;C/Bi8HH;A+B37HK;;;EAGE,0BAAA;EACA,YAAA;C/B67HP;A+Bt5HC;EAwBF;IAvDU,sBAAA;G/By7HP;E+Bl4HH;IApDU,0BAAA;G/By7HP;E+Br4HH;IAjDU,eAAA;G/By7HP;E+Bx7HO;;IAEE,YAAA;IACA,8BAAA;G/B07HT;E+Bt7HO;;;IAGE,YAAA;IACA,0BAAA;G/Bw7HT;E+Bp7HO;;;IAGE,YAAA;IACA,8BAAA;G/Bs7HT;CACF;A+B9hID;EA+GI,eAAA;C/Bk7HH;A+Bj7HG;EACE,YAAA;C/Bm7HL;A+BpiID;EAsHI,eAAA;C/Bi7HH;A+Bh7HG;;EAEE,YAAA;C/Bk7HL;A+B96HK;;;;EAEE,YAAA;C/Bk7HP;AkC5jJD;EACE,kBAAA;EACA,oBAAA;EACA,iBAAA;EACA,0BAAA;EACA,mBAAA;ClC8jJD;AkCnkJD;EAQI,sBAAA;ClC8jJH;AkCtkJD;EAWM,kBAAA;EACA,eAAA;EACA,YAAA;ClC8jJL;AkC3kJD;EAkBI,eAAA;ClC4jJH;AmChlJD;EACE,sBAAA;EACA,gBAAA;EACA,eAAA;EACA,mBAAA;CnCklJD;AmCtlJD;EAOI,gBAAA;CnCklJH;AmCzlJD;;EAUM,mBAAA;EACA,YAAA;EACA,kBAAA;EACA,wBAAA;EACA,sBAAA;EACA,eAAA;EACA,uBAAA;EACA,uBAAA;EACA,kBAAA;CnCmlJL;AmCjlJG;;EAGI,eAAA;EPXN,+BAAA;EACG,4BAAA;C5B8lJJ;AmChlJG;;EPvBF,gCAAA;EACG,6BAAA;C5B2mJJ;AmC3kJG;;;;EAEE,WAAA;EACA,eAAA;EACA,0BAAA;EACA,mBAAA;CnC+kJL;AmCzkJG;;;;;;EAGE,WAAA;EACA,YAAA;EACA,0BAAA;EACA,sBAAA;EACA,gBAAA;CnC8kJL;AmCroJD;;;;;;EAkEM,eAAA;EACA,uBAAA;EACA,mBAAA;EACA,oBAAA;CnC2kJL;AmClkJD;;EC3EM,mBAAA;EACA,gBAAA;EACA,uBAAA;CpCipJL;AoC/oJG;;ERKF,+BAAA;EACG,4BAAA;C5B8oJJ;AoC9oJG;;ERTF,gCAAA;EACG,6BAAA;C5B2pJJ;AmC7kJD;;EChFM,kBAAA;EACA,gBAAA;EACA,iBAAA;CpCiqJL;AoC/pJG;;ERKF,+BAAA;EACG,4BAAA;C5B8pJJ;AoC9pJG;;ERTF,gCAAA;EACG,6BAAA;C5B2qJJ;AqC9qJD;EACE,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,mBAAA;CrCgrJD;AqCprJD;EAOI,gBAAA;CrCgrJH;AqCvrJD;;EAUM,sBAAA;EACA,kBAAA;EACA,uBAAA;EACA,uBAAA;EACA,oBAAA;CrCirJL;AqC/rJD;;EAmBM,sBAAA;EACA,0BAAA;CrCgrJL;AqCpsJD;;EA2BM,aAAA;CrC6qJL;AqCxsJD;;EAkCM,YAAA;CrC0qJL;AqC5sJD;;;;EA2CM,eAAA;EACA,uBAAA;EACA,oBAAA;CrCuqJL;AsCrtJD;EACE,gBAAA;EACA,wBAAA;EACA,eAAA;EACA,kBAAA;EACA,eAAA;EACA,YAAA;EACA,mBAAA;EACA,oBAAA;EACA,yBAAA;EACA,qBAAA;CtCutJD;AsCntJG;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;CtCqtJL;AsChtJC;EACE,cAAA;CtCktJH;AsC9sJC;EACE,mBAAA;EACA,UAAA;CtCgtJH;AsCzsJD;ECtCE,0BAAA;CvCkvJD;AuC/uJG;;EAEE,0BAAA;CvCivJL;AsC5sJD;EC1CE,0BAAA;CvCyvJD;AuCtvJG;;EAEE,0BAAA;CvCwvJL;AsC/sJD;EC9CE,0BAAA;CvCgwJD;AuC7vJG;;EAEE,0BAAA;CvC+vJL;AsCltJD;EClDE,0BAAA;CvCuwJD;AuCpwJG;;EAEE,0BAAA;CvCswJL;AsCrtJD;ECtDE,0BAAA;CvC8wJD;AuC3wJG;;EAEE,0BAAA;CvC6wJL;AsCxtJD;EC1DE,0BAAA;CvCqxJD;AuClxJG;;EAEE,0BAAA;CvCoxJL;AwCtxJD;EACE,sBAAA;EACA,gBAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,eAAA;EACA,uBAAA;EACA,oBAAA;EACA,mBAAA;EACA,0BAAA;EACA,oBAAA;CxCwxJD;AwCrxJC;EACE,cAAA;CxCuxJH;AwCnxJC;EACE,mBAAA;EACA,UAAA;CxCqxJH;AwClxJC;;EAEE,OAAA;EACA,iBAAA;CxCoxJH;AwC/wJG;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;CxCixJL;AwC5wJC;;EAEE,eAAA;EACA,uBAAA;CxC8wJH;AwC3wJC;EACE,aAAA;CxC6wJH;AwC1wJC;EACE,kBAAA;CxC4wJH;AwCzwJC;EACE,iBAAA;CxC2wJH;AyCr0JD;EACE,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,eAAA;EACA,0BAAA;CzCu0JD;AyC50JD;;EASI,eAAA;CzCu0JH;AyCh1JD;EAaI,oBAAA;EACA,gBAAA;EACA,iBAAA;CzCs0JH;AyCr1JD;EAmBI,0BAAA;CzCq0JH;AyCl0JC;;EAEE,mBAAA;EACA,mBAAA;EACA,oBAAA;CzCo0JH;AyC91JD;EA8BI,gBAAA;CzCm0JH;AyCjzJD;EACA;IAfI,kBAAA;IACA,qBAAA;GzCm0JD;EyCj0JC;;IAEE,mBAAA;IACA,oBAAA;GzCm0JH;EyC1zJH;;IAJM,gBAAA;GzCk0JH;CACF;A0C/2JD;EACE,eAAA;EACA,aAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;EACA,uBAAA;EACA,mBAAA;ErCiLA,4CAAA;EACK,uCAAA;EACG,oCAAA;CLisJT;A0C33JD;;EAaI,kBAAA;EACA,mBAAA;C1Ck3JH;A0C92JC;;;EAGE,sBAAA;C1Cg3JH;A0Cr4JD;EA0BI,aAAA;EACA,eAAA;C1C82JH;A2Cv4JD;EACE,cAAA;EACA,oBAAA;EACA,8BAAA;EACA,mBAAA;C3Cy4JD;A2C74JD;EAQI,cAAA;EAEA,eAAA;C3Cu4JH;A2Cj5JD;EAeI,kBAAA;C3Cq4JH;A2Cp5JD;;EAqBI,iBAAA;C3Cm4JH;A2Cx5JD;EAyBI,gBAAA;C3Ck4JH;A2C13JD;;EAEE,oBAAA;C3C43JD;A2C93JD;;EAMI,mBAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;C3C43JH;A2Cp3JD;ECvDE,0BAAA;EACA,sBAAA;EACA,eAAA;C5C86JD;A2Cz3JD;EClDI,0BAAA;C5C86JH;A2C53JD;EC/CI,eAAA;C5C86JH;A2C33JD;EC3DE,0BAAA;EACA,sBAAA;EACA,eAAA;C5Cy7JD;A2Ch4JD;ECtDI,0BAAA;C5Cy7JH;A2Cn4JD;ECnDI,eAAA;C5Cy7JH;A2Cl4JD;EC/DE,0BAAA;EACA,sBAAA;EACA,eAAA;C5Co8JD;A2Cv4JD;EC1DI,0BAAA;C5Co8JH;A2C14JD;ECvDI,eAAA;C5Co8JH;A2Cz4JD;ECnEE,0BAAA;EACA,sBAAA;EACA,eAAA;C5C+8JD;A2C94JD;EC9DI,0BAAA;C5C+8JH;A2Cj5JD;EC3DI,eAAA;C5C+8JH;A6Cj9JD;EACE;IAAQ,4BAAA;G7Co9JP;E6Cn9JD;IAAQ,yBAAA;G7Cs9JP;CACF;A6Cn9JD;EACE;IAAQ,4BAAA;G7Cs9JP;E6Cr9JD;IAAQ,yBAAA;G7Cw9JP;CACF;A6C39JD;EACE;IAAQ,4BAAA;G7Cs9JP;E6Cr9JD;IAAQ,yBAAA;G7Cw9JP;CACF;A6Cj9JD;EACE,iBAAA;EACA,aAAA;EACA,oBAAA;EACA,0BAAA;EACA,mBAAA;ExCsCA,uDAAA;EACQ,+CAAA;CL86JT;A6Ch9JD;EACE,YAAA;EACA,UAAA;EACA,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,mBAAA;EACA,0BAAA;ExCyBA,uDAAA;EACQ,+CAAA;EAyHR,oCAAA;EACK,+BAAA;EACG,4BAAA;CLk0JT;A6C78JD;;ECCI,8MAAA;EACA,yMAAA;EACA,sMAAA;EDAF,mCAAA;UAAA,2BAAA;C7Ci9JD;A6C18JD;;ExC5CE,2DAAA;EACK,sDAAA;EACG,mDAAA;CL0/JT;A6Cv8JD;EErEE,0BAAA;C/C+gKD;A+C5gKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9C+9JH;A6C38JD;EEzEE,0BAAA;C/CuhKD;A+CphKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9Cu+JH;A6C/8JD;EE7EE,0BAAA;C/C+hKD;A+C5hKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9C++JH;A6Cn9JD;EEjFE,0BAAA;C/CuiKD;A+CpiKC;EDgDE,8MAAA;EACA,yMAAA;EACA,sMAAA;C9Cu/JH;AgD/iKD;EAEE,iBAAA;ChDgjKD;AgD9iKC;EACE,cAAA;ChDgjKH;AgD5iKD;;EAEE,QAAA;EACA,iBAAA;ChD8iKD;AgD3iKD;EACE,eAAA;ChD6iKD;AgD1iKD;EACE,eAAA;ChD4iKD;AgDziKC;EACE,gBAAA;ChD2iKH;AgDviKD;;EAEE,mBAAA;ChDyiKD;AgDtiKD;;EAEE,oBAAA;ChDwiKD;AgDriKD;;;EAGE,oBAAA;EACA,oBAAA;ChDuiKD;AgDpiKD;EACE,uBAAA;ChDsiKD;AgDniKD;EACE,uBAAA;ChDqiKD;AgDjiKD;EACE,cAAA;EACA,mBAAA;ChDmiKD;AgD7hKD;EACE,gBAAA;EACA,iBAAA;ChD+hKD;AiDtlKD;EAEE,oBAAA;EACA,gBAAA;CjDulKD;AiD/kKD;EACE,mBAAA;EACA,eAAA;EACA,mBAAA;EAEA,oBAAA;EACA,uBAAA;EACA,uBAAA;CjDglKD;AiD7kKC;ErB3BA,6BAAA;EACC,4BAAA;C5B2mKF;AiD9kKC;EACE,iBAAA;ErBvBF,gCAAA;EACC,+BAAA;C5BwmKF;AiDvkKD;;EAEE,YAAA;CjDykKD;AiD3kKD;;EAKI,YAAA;CjD0kKH;AiDtkKC;;;;EAEE,sBAAA;EACA,YAAA;EACA,0BAAA;CjD0kKH;AiDtkKD;EACE,YAAA;EACA,iBAAA;CjDwkKD;AiDnkKC;;;EAGE,0BAAA;EACA,eAAA;EACA,oBAAA;CjDqkKH;AiD1kKC;;;EASI,eAAA;CjDskKL;AiD/kKC;;;EAYI,eAAA;CjDwkKL;AiDnkKC;;;EAGE,WAAA;EACA,YAAA;EACA,0BAAA;EACA,sBAAA;CjDqkKH;AiD3kKC;;;;;;;;;EAYI,eAAA;CjD0kKL;AiDtlKC;;;EAeI,eAAA;CjD4kKL;AkD9qKC;EACE,eAAA;EACA,0BAAA;ClDgrKH;AkD9qKG;;EAEE,eAAA;ClDgrKL;AkDlrKG;;EAKI,eAAA;ClDirKP;AkD9qKK;;;;EAEE,eAAA;EACA,0BAAA;ClDkrKP;AkDhrKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClDqrKP;AkD3sKC;EACE,eAAA;EACA,0BAAA;ClD6sKH;AkD3sKG;;EAEE,eAAA;ClD6sKL;AkD/sKG;;EAKI,eAAA;ClD8sKP;AkD3sKK;;;;EAEE,eAAA;EACA,0BAAA;ClD+sKP;AkD7sKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClDktKP;AkDxuKC;EACE,eAAA;EACA,0BAAA;ClD0uKH;AkDxuKG;;EAEE,eAAA;ClD0uKL;AkD5uKG;;EAKI,eAAA;ClD2uKP;AkDxuKK;;;;EAEE,eAAA;EACA,0BAAA;ClD4uKP;AkD1uKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClD+uKP;AkDrwKC;EACE,eAAA;EACA,0BAAA;ClDuwKH;AkDrwKG;;EAEE,eAAA;ClDuwKL;AkDzwKG;;EAKI,eAAA;ClDwwKP;AkDrwKK;;;;EAEE,eAAA;EACA,0BAAA;ClDywKP;AkDvwKK;;;;;;EAGE,YAAA;EACA,0BAAA;EACA,sBAAA;ClD4wKP;AiD3qKD;EACE,cAAA;EACA,mBAAA;CjD6qKD;AiD3qKD;EACE,iBAAA;EACA,iBAAA;CjD6qKD;AmDvyKD;EACE,oBAAA;EACA,uBAAA;EACA,8BAAA;EACA,mBAAA;E9C0DA,kDAAA;EACQ,0CAAA;CLgvKT;AmDtyKD;EACE,cAAA;CnDwyKD;AmDnyKD;EACE,mBAAA;EACA,qCAAA;EvBpBA,6BAAA;EACC,4BAAA;C5B0zKF;AmDzyKD;EAMI,eAAA;CnDsyKH;AmDjyKD;EACE,cAAA;EACA,iBAAA;EACA,gBAAA;EACA,eAAA;CnDmyKD;AmDvyKD;;;;;EAWI,eAAA;CnDmyKH;AmD9xKD;EACE,mBAAA;EACA,0BAAA;EACA,2BAAA;EvBxCA,gCAAA;EACC,+BAAA;C5By0KF;AmDxxKD;;EAGI,iBAAA;CnDyxKH;AmD5xKD;;EAMM,oBAAA;EACA,iBAAA;CnD0xKL;AmDtxKG;;EAEI,cAAA;EvBvEN,6BAAA;EACC,4BAAA;C5Bg2KF;AmDpxKG;;EAEI,iBAAA;EvBvEN,gCAAA;EACC,+BAAA;C5B81KF;AmD7yKD;EvB1DE,2BAAA;EACC,0BAAA;C5B02KF;AmDhxKD;EAEI,oBAAA;CnDixKH;AmD9wKD;EACE,oBAAA;CnDgxKD;AmDxwKD;;;EAII,iBAAA;CnDywKH;AmD7wKD;;;EAOM,mBAAA;EACA,oBAAA;CnD2wKL;AmDnxKD;;EvBzGE,6BAAA;EACC,4BAAA;C5Bg4KF;AmDxxKD;;;;EAmBQ,4BAAA;EACA,6BAAA;CnD2wKP;AmD/xKD;;;;;;;;EAwBU,4BAAA;CnDixKT;AmDzyKD;;;;;;;;EA4BU,6BAAA;CnDuxKT;AmDnzKD;;EvBjGE,gCAAA;EACC,+BAAA;C5Bw5KF;AmDxzKD;;;;EAyCQ,+BAAA;EACA,gCAAA;CnDqxKP;AmD/zKD;;;;;;;;EA8CU,+BAAA;CnD2xKT;AmDz0KD;;;;;;;;EAkDU,gCAAA;CnDiyKT;AmDn1KD;;;;EA2DI,2BAAA;CnD8xKH;AmDz1KD;;EA+DI,cAAA;CnD8xKH;AmD71KD;;EAmEI,UAAA;CnD8xKH;AmDj2KD;;;;;;;;;;;;EA0EU,eAAA;CnDqyKT;AmD/2KD;;;;;;;;;;;;EA8EU,gBAAA;CnD+yKT;AmD73KD;;;;;;;;EAuFU,iBAAA;CnDgzKT;AmDv4KD;;;;;;;;EAgGU,iBAAA;CnDizKT;AmDj5KD;EAsGI,UAAA;EACA,iBAAA;CnD8yKH;AmDpyKD;EACE,oBAAA;CnDsyKD;AmDvyKD;EAKI,iBAAA;EACA,mBAAA;CnDqyKH;AmD3yKD;EASM,gBAAA;CnDqyKL;AmD9yKD;EAcI,iBAAA;CnDmyKH;AmDjzKD;;EAkBM,2BAAA;CnDmyKL;AmDrzKD;EAuBI,cAAA;CnDiyKH;AmDxzKD;EAyBM,8BAAA;CnDkyKL;AmD3xKD;EC1PE,mBAAA;CpDwhLD;AoDthLC;EACE,eAAA;EACA,0BAAA;EACA,mBAAA;CpDwhLH;AoD3hLC;EAMI,uBAAA;CpDwhLL;AoD9hLC;EASI,eAAA;EACA,0BAAA;CpDwhLL;AoDrhLC;EAEI,0BAAA;CpDshLL;AmD1yKD;EC7PE,sBAAA;CpD0iLD;AoDxiLC;EACE,YAAA;EACA,0BAAA;EACA,sBAAA;CpD0iLH;AoD7iLC;EAMI,0BAAA;CpD0iLL;AoDhjLC;EASI,eAAA;EACA,uBAAA;CpD0iLL;AoDviLC;EAEI,6BAAA;CpDwiLL;AmDzzKD;EChQE,sBAAA;CpD4jLD;AoD1jLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD4jLH;AoD/jLC;EAMI,0BAAA;CpD4jLL;AoDlkLC;EASI,eAAA;EACA,0BAAA;CpD4jLL;AoDzjLC;EAEI,6BAAA;CpD0jLL;AmDx0KD;ECnQE,sBAAA;CpD8kLD;AoD5kLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpD8kLH;AoDjlLC;EAMI,0BAAA;CpD8kLL;AoDplLC;EASI,eAAA;EACA,0BAAA;CpD8kLL;AoD3kLC;EAEI,6BAAA;CpD4kLL;AmDv1KD;ECtQE,sBAAA;CpDgmLD;AoD9lLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpDgmLH;AoDnmLC;EAMI,0BAAA;CpDgmLL;AoDtmLC;EASI,eAAA;EACA,0BAAA;CpDgmLL;AoD7lLC;EAEI,6BAAA;CpD8lLL;AmDt2KD;ECzQE,sBAAA;CpDknLD;AoDhnLC;EACE,eAAA;EACA,0BAAA;EACA,sBAAA;CpDknLH;AoDrnLC;EAMI,0BAAA;CpDknLL;AoDxnLC;EASI,eAAA;EACA,0BAAA;CpDknLL;AoD/mLC;EAEI,6BAAA;CpDgnLL;AqDhoLD;EACE,mBAAA;EACA,eAAA;EACA,UAAA;EACA,WAAA;EACA,iBAAA;CrDkoLD;AqDvoLD;;;;;EAYI,mBAAA;EACA,OAAA;EACA,QAAA;EACA,UAAA;EACA,aAAA;EACA,YAAA;EACA,UAAA;CrDkoLH;AqD7nLD;EACE,uBAAA;CrD+nLD;AqD3nLD;EACE,oBAAA;CrD6nLD;AsDxpLD;EACE,iBAAA;EACA,cAAA;EACA,oBAAA;EACA,0BAAA;EACA,0BAAA;EACA,mBAAA;EjDwDA,wDAAA;EACQ,gDAAA;CLmmLT;AsDlqLD;EASI,mBAAA;EACA,kCAAA;CtD4pLH;AsDvpLD;EACE,cAAA;EACA,mBAAA;CtDypLD;AsDvpLD;EACE,aAAA;EACA,mBAAA;CtDypLD;AuD/qLD;EACE,aAAA;EACA,gBAAA;EACA,kBAAA;EACA,eAAA;EACA,YAAA;EACA,0BAAA;EjCRA,aAAA;EAGA,0BAAA;CtBwrLD;AuDhrLC;;EAEE,YAAA;EACA,sBAAA;EACA,gBAAA;EjCfF,aAAA;EAGA,0BAAA;CtBgsLD;AuD5qLC;EACE,WAAA;EACA,gBAAA;EACA,wBAAA;EACA,UAAA;EACA,yBAAA;CvD8qLH;AwDnsLD;EACE,iBAAA;CxDqsLD;AwDjsLD;EACE,cAAA;EACA,iBAAA;EACA,gBAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,kCAAA;EAIA,WAAA;CxDgsLD;AwD7rLC;EnD+GA,sCAAA;EACI,kCAAA;EACC,iCAAA;EACG,8BAAA;EAkER,oDAAA;EAEK,0CAAA;EACG,oCAAA;CLghLT;AwDnsLC;EnD2GA,mCAAA;EACI,+BAAA;EACC,8BAAA;EACG,2BAAA;CL2lLT;AwDvsLD;EACE,mBAAA;EACA,iBAAA;CxDysLD;AwDrsLD;EACE,mBAAA;EACA,YAAA;EACA,aAAA;CxDusLD;AwDnsLD;EACE,mBAAA;EACA,uBAAA;EACA,uBAAA;EACA,qCAAA;EACA,mBAAA;EnDaA,iDAAA;EACQ,yCAAA;EmDZR,qCAAA;UAAA,6BAAA;EAEA,WAAA;CxDqsLD;AwDjsLD;EACE,gBAAA;EACA,OAAA;EACA,SAAA;EACA,UAAA;EACA,QAAA;EACA,cAAA;EACA,uBAAA;CxDmsLD;AwDjsLC;ElCrEA,WAAA;EAGA,yBAAA;CtBuwLD;AwDpsLC;ElCtEA,aAAA;EAGA,0BAAA;CtB2wLD;AwDnsLD;EACE,cAAA;EACA,iCAAA;CxDqsLD;AwDjsLD;EACE,iBAAA;CxDmsLD;AwD/rLD;EACE,UAAA;EACA,wBAAA;CxDisLD;AwD5rLD;EACE,mBAAA;EACA,cAAA;CxD8rLD;AwD1rLD;EACE,cAAA;EACA,kBAAA;EACA,8BAAA;CxD4rLD;AwD/rLD;EAQI,iBAAA;EACA,iBAAA;CxD0rLH;AwDnsLD;EAaI,kBAAA;CxDyrLH;AwDtsLD;EAiBI,eAAA;CxDwrLH;AwDnrLD;EACE,mBAAA;EACA,aAAA;EACA,YAAA;EACA,aAAA;EACA,iBAAA;CxDqrLD;AwDnqLD;EAZE;IACE,aAAA;IACA,kBAAA;GxDkrLD;EwDhrLD;InDvEA,kDAAA;IACQ,0CAAA;GL0vLP;EwD/qLD;IAAY,aAAA;GxDkrLX;CACF;AwD7qLD;EAFE;IAAY,aAAA;GxDmrLX;CACF;AyDl0LD;EACE,mBAAA;EACA,cAAA;EACA,eAAA;ECRA,4DAAA;EAEA,mBAAA;EACA,oBAAA;EACA,uBAAA;EACA,iBAAA;EACA,wBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;EDHA,gBAAA;EnCVA,WAAA;EAGA,yBAAA;CtBy1LD;AyD90LC;EnCdA,aAAA;EAGA,0BAAA;CtB61LD;AyDj1LC;EAAW,iBAAA;EAAmB,eAAA;CzDq1L/B;AyDp1LC;EAAW,iBAAA;EAAmB,eAAA;CzDw1L/B;AyDv1LC;EAAW,gBAAA;EAAmB,eAAA;CzD21L/B;AyD11LC;EAAW,kBAAA;EAAmB,eAAA;CzD81L/B;AyD11LD;EACE,iBAAA;EACA,iBAAA;EACA,YAAA;EACA,mBAAA;EACA,uBAAA;EACA,mBAAA;CzD41LD;AyDx1LD;EACE,mBAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,oBAAA;CzD01LD;AyDt1LC;EACE,UAAA;EACA,UAAA;EACA,kBAAA;EACA,wBAAA;EACA,uBAAA;CzDw1LH;AyDt1LC;EACE,UAAA;EACA,WAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;CzDw1LH;AyDt1LC;EACE,UAAA;EACA,UAAA;EACA,oBAAA;EACA,wBAAA;EACA,uBAAA;CzDw1LH;AyDt1LC;EACE,SAAA;EACA,QAAA;EACA,iBAAA;EACA,4BAAA;EACA,yBAAA;CzDw1LH;AyDt1LC;EACE,SAAA;EACA,SAAA;EACA,iBAAA;EACA,4BAAA;EACA,wBAAA;CzDw1LH;AyDt1LC;EACE,OAAA;EACA,UAAA;EACA,kBAAA;EACA,wBAAA;EACA,0BAAA;CzDw1LH;AyDt1LC;EACE,OAAA;EACA,WAAA;EACA,iBAAA;EACA,wBAAA;EACA,0BAAA;CzDw1LH;AyDt1LC;EACE,OAAA;EACA,UAAA;EACA,iBAAA;EACA,wBAAA;EACA,0BAAA;CzDw1LH;A2Dr7LD;EACE,mBAAA;EACA,OAAA;EACA,QAAA;EACA,cAAA;EACA,cAAA;EACA,iBAAA;EACA,aAAA;EDXA,4DAAA;EAEA,mBAAA;EACA,oBAAA;EACA,uBAAA;EACA,iBAAA;EACA,wBAAA;EACA,iBAAA;EACA,kBAAA;EACA,sBAAA;EACA,kBAAA;EACA,qBAAA;EACA,oBAAA;EACA,mBAAA;EACA,qBAAA;EACA,kBAAA;ECAA,gBAAA;EAEA,uBAAA;EACA,qCAAA;UAAA,6BAAA;EACA,uBAAA;EACA,qCAAA;EACA,mBAAA;EtD8CA,kDAAA;EACQ,0CAAA;CLq5LT;A2Dh8LC;EAAY,kBAAA;C3Dm8Lb;A2Dl8LC;EAAY,kBAAA;C3Dq8Lb;A2Dp8LC;EAAY,iBAAA;C3Du8Lb;A2Dt8LC;EAAY,mBAAA;C3Dy8Lb;A2Dt8LD;EACE,UAAA;EACA,kBAAA;EACA,gBAAA;EACA,0BAAA;EACA,iCAAA;EACA,2BAAA;C3Dw8LD;A2Dr8LD;EACE,kBAAA;C3Du8LD;A2D/7LC;;EAEE,mBAAA;EACA,eAAA;EACA,SAAA;EACA,UAAA;EACA,0BAAA;EACA,oBAAA;C3Di8LH;A2D97LD;EACE,mBAAA;C3Dg8LD;A2D97LD;EACE,mBAAA;EACA,YAAA;C3Dg8LD;A2D57LC;EACE,UAAA;EACA,mBAAA;EACA,uBAAA;EACA,0BAAA;EACA,sCAAA;EACA,cAAA;C3D87LH;A2D77LG;EACE,aAAA;EACA,YAAA;EACA,mBAAA;EACA,uBAAA;EACA,uBAAA;C3D+7LL;A2D57LC;EACE,SAAA;EACA,YAAA;EACA,kBAAA;EACA,qBAAA;EACA,4BAAA;EACA,wCAAA;C3D87LH;A2D77LG;EACE,aAAA;EACA,UAAA;EACA,cAAA;EACA,qBAAA;EACA,yBAAA;C3D+7LL;A2D57LC;EACE,UAAA;EACA,mBAAA;EACA,oBAAA;EACA,6BAAA;EACA,yCAAA;EACA,WAAA;C3D87LH;A2D77LG;EACE,aAAA;EACA,SAAA;EACA,mBAAA;EACA,oBAAA;EACA,0BAAA;C3D+7LL;A2D37LC;EACE,SAAA;EACA,aAAA;EACA,kBAAA;EACA,sBAAA;EACA,2BAAA;EACA,uCAAA;C3D67LH;A2D57LG;EACE,aAAA;EACA,WAAA;EACA,sBAAA;EACA,wBAAA;EACA,cAAA;C3D87LL;A4DvjMD;EACE,mBAAA;C5DyjMD;A4DtjMD;EACE,mBAAA;EACA,iBAAA;EACA,YAAA;C5DwjMD;A4D3jMD;EAMI,cAAA;EACA,mBAAA;EvD6KF,0CAAA;EACK,qCAAA;EACG,kCAAA;CL44LT;A4DlkMD;;EAcM,eAAA;C5DwjML;A4D9hMC;EA4NF;IvD3DE,uDAAA;IAEK,6CAAA;IACG,uCAAA;IA7JR,oCAAA;IAEQ,4BAAA;IA+GR,4BAAA;IAEQ,oBAAA;GLi7LP;E4D5jMG;;IvDmHJ,2CAAA;IACQ,mCAAA;IuDjHF,QAAA;G5D+jML;E4D7jMG;;IvD8GJ,4CAAA;IACQ,oCAAA;IuD5GF,QAAA;G5DgkML;E4D9jMG;;;IvDyGJ,wCAAA;IACQ,gCAAA;IuDtGF,QAAA;G5DikML;CACF;A4DvmMD;;;EA6CI,eAAA;C5D+jMH;A4D5mMD;EAiDI,QAAA;C5D8jMH;A4D/mMD;;EAsDI,mBAAA;EACA,OAAA;EACA,YAAA;C5D6jMH;A4DrnMD;EA4DI,WAAA;C5D4jMH;A4DxnMD;EA+DI,YAAA;C5D4jMH;A4D3nMD;;EAmEI,QAAA;C5D4jMH;A4D/nMD;EAuEI,YAAA;C5D2jMH;A4DloMD;EA0EI,WAAA;C5D2jMH;A4DnjMD;EACE,mBAAA;EACA,OAAA;EACA,QAAA;EACA,UAAA;EACA,WAAA;EtC9FA,aAAA;EAGA,0BAAA;EsC6FA,gBAAA;EACA,YAAA;EACA,mBAAA;EACA,0CAAA;EACA,mCAAA;C5DsjMD;A4DjjMC;EdnGE,mGAAA;EACA,8FAAA;EACA,qHAAA;EAAA,+FAAA;EACA,4BAAA;EACA,uHAAA;C9CupMH;A4DrjMC;EACE,WAAA;EACA,SAAA;EdxGA,mGAAA;EACA,8FAAA;EACA,qHAAA;EAAA,+FAAA;EACA,4BAAA;EACA,uHAAA;C9CgqMH;A4DvjMC;;EAEE,WAAA;EACA,YAAA;EACA,sBAAA;EtCvHF,aAAA;EAGA,0BAAA;CtB+qMD;A4DzlMD;;;;EAuCI,mBAAA;EACA,SAAA;EACA,kBAAA;EACA,WAAA;EACA,sBAAA;C5DwjMH;A4DnmMD;;EA+CI,UAAA;EACA,mBAAA;C5DwjMH;A4DxmMD;;EAoDI,WAAA;EACA,oBAAA;C5DwjMH;A4D7mMD;;EAyDI,YAAA;EACA,aAAA;EACA,eAAA;EACA,mBAAA;C5DwjMH;A4DnjMG;EACE,iBAAA;C5DqjML;A4DjjMG;EACE,iBAAA;C5DmjML;A4DziMD;EACE,mBAAA;EACA,aAAA;EACA,UAAA;EACA,YAAA;EACA,WAAA;EACA,kBAAA;EACA,gBAAA;EACA,iBAAA;EACA,mBAAA;C5D2iMD;A4DpjMD;EAYI,sBAAA;EACA,YAAA;EACA,aAAA;EACA,YAAA;EACA,oBAAA;EACA,uBAAA;EACA,oBAAA;EACA,gBAAA;EAWA,0BAAA;EACA,mCAAA;C5DiiMH;A4DhkMD;EAkCI,UAAA;EACA,YAAA;EACA,aAAA;EACA,uBAAA;C5DiiMH;A4D1hMD;EACE,mBAAA;EACA,UAAA;EACA,WAAA;EACA,aAAA;EACA,YAAA;EACA,kBAAA;EACA,qBAAA;EACA,YAAA;EACA,mBAAA;EACA,0CAAA;C5D4hMD;A4D3hMC;EACE,kBAAA;C5D6hMH;A4Dp/LD;EAhCE;;;;IAKI,YAAA;IACA,aAAA;IACA,kBAAA;IACA,gBAAA;G5DshMH;E4D9hMD;;IAYI,mBAAA;G5DshMH;E4DliMD;;IAgBI,oBAAA;G5DshMH;E4DjhMD;IACE,UAAA;IACA,WAAA;IACA,qBAAA;G5DmhMD;E4D/gMD;IACE,aAAA;G5DihMD;CACF;A6DhxMC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEE,aAAA;EACA,eAAA;C7DgzMH;A6D9yMC;;;;;;;;;;;;;;;;EACE,YAAA;C7D+zMH;AiCv0MD;E6BRE,eAAA;EACA,kBAAA;EACA,mBAAA;C9Dk1MD;AiCz0MD;EACE,wBAAA;CjC20MD;AiCz0MD;EACE,uBAAA;CjC20MD;AiCn0MD;EACE,yBAAA;CjCq0MD;AiCn0MD;EACE,0BAAA;CjCq0MD;AiCn0MD;EACE,mBAAA;CjCq0MD;AiCn0MD;E8BzBE,YAAA;EACA,mBAAA;EACA,kBAAA;EACA,8BAAA;EACA,UAAA;C/D+1MD;AiCj0MD;EACE,yBAAA;CjCm0MD;AiC5zMD;EACE,gBAAA;CjC8zMD;AgE/1MD;EACE,oBAAA;ChEi2MD;AgE31MD;;;;ECdE,yBAAA;CjE+2MD;AgE11MD;;;;;;;;;;;;EAYE,yBAAA;ChE41MD;AgEr1MD;EA6IA;IC7LE,0BAAA;GjEy4MC;EiEx4MD;IAAU,0BAAA;GjE24MT;EiE14MD;IAAU,8BAAA;GjE64MT;EiE54MD;;IACU,+BAAA;GjE+4MT;CACF;AgE/1MD;EAwIA;IA1II,0BAAA;GhEq2MD;CACF;AgE/1MD;EAmIA;IArII,2BAAA;GhEq2MD;CACF;AgE/1MD;EA8HA;IAhII,iCAAA;GhEq2MD;CACF;AgE91MD;EAwHA;IC7LE,0BAAA;GjEu6MC;EiEt6MD;IAAU,0BAAA;GjEy6MT;EiEx6MD;IAAU,8BAAA;GjE26MT;EiE16MD;;IACU,+BAAA;GjE66MT;CACF;AgEx2MD;EAmHA;IArHI,0BAAA;GhE82MD;CACF;AgEx2MD;EA8GA;IAhHI,2BAAA;GhE82MD;CACF;AgEx2MD;EAyGA;IA3GI,iCAAA;GhE82MD;CACF;AgEv2MD;EAmGA;IC7LE,0BAAA;GjEq8MC;EiEp8MD;IAAU,0BAAA;GjEu8MT;EiEt8MD;IAAU,8BAAA;GjEy8MT;EiEx8MD;;IACU,+BAAA;GjE28MT;CACF;AgEj3MD;EA8FA;IAhGI,0BAAA;GhEu3MD;CACF;AgEj3MD;EAyFA;IA3FI,2BAAA;GhEu3MD;CACF;AgEj3MD;EAoFA;IAtFI,iCAAA;GhEu3MD;CACF;AgEh3MD;EA8EA;IC7LE,0BAAA;GjEm+MC;EiEl+MD;IAAU,0BAAA;GjEq+MT;EiEp+MD;IAAU,8BAAA;GjEu+MT;EiEt+MD;;IACU,+BAAA;GjEy+MT;CACF;AgE13MD;EAyEA;IA3EI,0BAAA;GhEg4MD;CACF;AgE13MD;EAoEA;IAtEI,2BAAA;GhEg4MD;CACF;AgE13MD;EA+DA;IAjEI,iCAAA;GhEg4MD;CACF;AgEz3MD;EAyDA;ICrLE,yBAAA;GjEy/MC;CACF;AgEz3MD;EAoDA;ICrLE,yBAAA;GjE8/MC;CACF;AgEz3MD;EA+CA;ICrLE,yBAAA;GjEmgNC;CACF;AgEz3MD;EA0CA;ICrLE,yBAAA;GjEwgNC;CACF;AgEt3MD;ECnJE,yBAAA;CjE4gND;AgEn3MD;EA4BA;IC7LE,0BAAA;GjEwhNC;EiEvhND;IAAU,0BAAA;GjE0hNT;EiEzhND;IAAU,8BAAA;GjE4hNT;EiE3hND;;IACU,+BAAA;GjE8hNT;CACF;AgEj4MD;EACE,yBAAA;ChEm4MD;AgE93MD;EAqBA;IAvBI,0BAAA;GhEo4MD;CACF;AgEl4MD;EACE,yBAAA;ChEo4MD;AgE/3MD;EAcA;IAhBI,2BAAA;GhEq4MD;CACF;AgEn4MD;EACE,yBAAA;ChEq4MD;AgEh4MD;EAOA;IATI,iCAAA;GhEs4MD;CACF;AgE/3MD;EACA;ICrLE,yBAAA;GjEujNC;CACF","file":"bootstrap.css","sourcesContent":["/*!\n * Bootstrap v3.3.6 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: 1px dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important;\n box-shadow: none !important;\n text-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('../fonts/glyphicons-halflings-regular.eot');\n src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: normal;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n background-color: #fcf8e3;\n padding: .2em;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted #777777;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: '\\2014 \\00A0';\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n text-align: right;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: '';\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: '\\00A0 \\2014';\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333333;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.row {\n margin-left: -15px;\n margin-right: -15px;\n}\n.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\ntable col[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-column;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-cell;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n min-width: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n border: 0;\n background-color: transparent;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.form-control-static {\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n min-height: 34px;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-left: 0;\n padding-right: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n border-color: #3c763d;\n background-color: #dff0d8;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n border-color: #8a6d3b;\n background-color: #fcf8e3;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n border-color: #a94442;\n background-color: #f2dede;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: 7px;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-left: -15px;\n margin-right: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n text-align: right;\n margin-bottom: 0;\n padding-top: 7px;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n background-image: none;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n background-image: none;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n background-image: none;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n background-image: none;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n background-image: none;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n background-image: none;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n color: #337ab7;\n font-weight: normal;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n list-style: none;\n font-size: 14px;\n text-align: left;\n background-color: #fff;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n background-clip: padding-box;\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n text-decoration: none;\n color: #262626;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n background-color: #337ab7;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n cursor: not-allowed;\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n left: auto;\n right: 0;\n}\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n content: \"\";\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n left: auto;\n right: 0;\n }\n .navbar-right .dropdown-menu-left {\n left: 0;\n right: auto;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: normal;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n margin-bottom: 0;\n padding-left: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n background-color: transparent;\n cursor: not-allowed;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n cursor: default;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n overflow-x: visible;\n padding-right: 15px;\n padding-left: 15px;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-left: 0;\n padding-right: 0;\n }\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.navbar-brand {\n float: left;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n height: 50px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: 15px;\n padding: 9px 10px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n margin-left: -15px;\n margin-right: -15px;\n padding: 10px 15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-left: 15px;\n margin-right: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n background-color: #e7e7e7;\n color: #555;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n background-color: #080808;\n color: #fff;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n content: \"/\\00a0\";\n padding: 0 5px;\n color: #ccc;\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n line-height: 1.42857143;\n text-decoration: none;\n color: #337ab7;\n background-color: #fff;\n border: 1px solid #ddd;\n margin-left: -1px;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-bottom-right-radius: 4px;\n border-top-right-radius: 4px;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n cursor: default;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n background-color: #fff;\n border-color: #ddd;\n cursor: not-allowed;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-bottom-left-radius: 3px;\n border-top-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-bottom-right-radius: 3px;\n border-top-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n list-style: none;\n text-align: center;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n background-color: #fff;\n cursor: not-allowed;\n}\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n color: #fff;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n border-radius: 6px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-left: 60px;\n padding-right: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-left: auto;\n margin-right: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n background-color: #dff0d8;\n border-color: #d6e9c6;\n color: #3c763d;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n background-color: #d9edf7;\n border-color: #bce8f1;\n color: #31708f;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n background-color: #fcf8e3;\n border-color: #faebcc;\n color: #8a6d3b;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n background-color: #f2dede;\n border-color: #ebccd1;\n color: #a94442;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n overflow: hidden;\n height: 20px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n margin-bottom: 20px;\n padding-left: 0;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n text-decoration: none;\n color: #555;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n background-color: #eeeeee;\n color: #777777;\n cursor: not-allowed;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-left: 15px;\n padding-right: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n border: 0;\n margin-bottom: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n height: 100%;\n width: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: 0.2;\n filter: alpha(opacity=20);\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n display: none;\n overflow: hidden;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n background-clip: padding-box;\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.modal-backdrop.in {\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-left: 5px;\n margin-bottom: 0;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 12px;\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.tooltip.in {\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.tooltip.top {\n margin-top: -3px;\n padding: 5px 0;\n}\n.tooltip.right {\n margin-left: 3px;\n padding: 0 5px;\n}\n.tooltip.bottom {\n margin-top: 3px;\n padding: 5px 0;\n}\n.tooltip.left {\n margin-left: -3px;\n padding: 0 5px;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n bottom: 0;\n right: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover-title {\n margin: 0;\n padding: 8px 14px;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow:after {\n border-width: 10px;\n content: \"\";\n}\n.popover.top > .arrow {\n left: 50%;\n margin-left: -11px;\n border-bottom-width: 0;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n bottom: -11px;\n}\n.popover.top > .arrow:after {\n content: \" \";\n bottom: 1px;\n margin-left: -10px;\n border-bottom-width: 0;\n border-top-color: #fff;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-left-width: 0;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n.popover.right > .arrow:after {\n content: \" \";\n left: 1px;\n bottom: -10px;\n border-left-width: 0;\n border-right-color: #fff;\n}\n.popover.bottom > .arrow {\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n top: -11px;\n}\n.popover.bottom > .arrow:after {\n content: \" \";\n top: 1px;\n margin-left: -10px;\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n content: \" \";\n right: 1px;\n border-right-width: 0;\n border-left-color: #fff;\n bottom: -10px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n.carousel-inner > .item {\n display: none;\n position: relative;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 15%;\n opacity: 0.5;\n filter: alpha(opacity=50);\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n}\n.carousel-control.right {\n left: auto;\n right: 0;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n}\n.carousel-control:hover,\n.carousel-control:focus {\n outline: 0;\n color: #fff;\n text-decoration: none;\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n margin-top: -10px;\n z-index: 5;\n display: inline-block;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n line-height: 1;\n font-family: serif;\n}\n.carousel-control .icon-prev:before {\n content: '\\2039';\n}\n.carousel-control .icon-next:before {\n content: '\\203a';\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid #fff;\n border-radius: 10px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-indicators .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n content: \" \";\n display: table;\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n//\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important; // Black prints faster: h5bp.com/s\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n\n // Bootstrap specific changes end\n}\n","//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('@{icon-font-path}@{icon-font-name}.eot');\n src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),\n url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),\n url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),\n url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),\n url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\002a\"; } }\n.glyphicon-plus { &:before { content: \"\\002b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// http://getbootstrap.com/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: http://a11yproject.com/posts/how-to-hide-content/\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0,0,0,0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // Default\n outline: thin dotted;\n // WebKit\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: normal;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n background-color: @state-warning-bg;\n padding: .2em;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @dl-horizontal-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\nabbr[title],\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted @abbr-border-color;\n}\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: '\\2014 \\00A0'; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n text-align: right;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: ''; }\n &:after {\n content: '\\00A0 \\2014'; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n margin-right: auto;\n margin-left: auto;\n padding-left: floor((@gutter / 2));\n padding-right: ceil((@gutter / 2));\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: ceil((@gutter / -2));\n margin-right: floor((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: ceil((@grid-gutter-width / 2));\n padding-right: floor((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n}\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table cell sizing\n//\n// Reset default table behavior\n\ntable col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-column;\n}\ntable {\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-cell;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * 0.75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn't specific enough)\ninput[type=\"search\"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Unstyle the caret on ``\n// element gets special love because it's special, and that's a fact!\n.input-size(@input-height; @padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n height: @input-height;\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n\n select& {\n height: @input-height;\n line-height: @input-height;\n }\n\n textarea&,\n select[multiple]& {\n height: auto;\n }\n}\n","//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus,\n &.focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus,\n &.focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n .opacity(.65);\n .box-shadow(none);\n }\n\n a& {\n &.disabled,\n fieldset[disabled] & {\n pointer-events: none; // Future-proof disabling of clicks on `` elements\n }\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n color: @link-color;\n font-weight: normal;\n border-radius: 0;\n\n &,\n &:active,\n &.active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type=\"submit\"],\ninput[type=\"reset\"],\ninput[type=\"button\"] {\n &.btn-block {\n width: 100%;\n }\n}\n","// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 25%);\n }\n &:hover {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n\n &:hover,\n &:focus,\n &.focus {\n color: @color;\n background-color: darken(@background, 17%);\n border-color: darken(@border, 25%);\n }\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus,\n &.focus {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n","// Opacity\n\n.opacity(@opacity) {\n opacity: @opacity;\n // IE8 filter\n @opacity-ie: (@opacity * 100);\n filter: ~\"alpha(opacity=@{opacity-ie})\";\n}\n","//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don't use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n\n &.in { display: block; }\n tr&.in { display: table-row; }\n tbody&.in { display: table-row-group; }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition-property(~\"height, visibility\");\n .transition-duration(.35s);\n .transition-timing-function(ease);\n}\n","//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base dashed;\n border-top: @caret-width-base solid ~\"\\9\"; // IE8\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropup,\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on \"open\" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n list-style: none;\n font-size: @font-size-base;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n background-clip: padding-box;\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n }\n}\n\n// Hover/Focus state\n.dropdown-menu > li > a {\n &:hover,\n &:focus {\n text-decoration: none;\n color: @dropdown-link-hover-color;\n background-color: @dropdown-link-hover-bg;\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n outline: 0;\n background-color: @dropdown-link-active-bg;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n\n // Nuke hover/focus effects\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n cursor: @cursor-disabled;\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n left: auto; // Reset the default from `.dropdown-menu`\n right: 0;\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n white-space: nowrap; // as with > li > a\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you're set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n border-top: 0;\n border-bottom: @caret-width-base dashed;\n border-bottom: @caret-width-base solid ~\"\\9\"; // IE8\n content: \"\";\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n","// Horizontal dividers\n//\n// Dividers (basically an hr) within dropdowns and nav lists\n\n.nav-divider(@color: #e5e5e5) {\n height: 1px;\n margin: ((@line-height-computed / 2) - 1) 0;\n overflow: hidden;\n background-color: @color;\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n","//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child's margin\n &:extend(.clearfix all);\n\n .btn,\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don't show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n .border-top-radius(@btn-border-radius-base);\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n .border-top-radius(0);\n .border-bottom-radius(@btn-border-radius-base);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n\n > .btn-group .dropdown-menu {\n left: auto;\n }\n}\n\n\n// Checkbox and radio options\n//\n// In order to support the browser's form validation feedback, powered by the\n// `required` attribute, we have to \"hide\" the inputs via `clip`. We cannot use\n// `display: none;` or `visibility: hidden;` as that also hides the popover.\n// Simply visually hiding the inputs via `opacity` would leave them clickable in\n// certain cases which is prevented by using `clip` and `pointer-events`.\n// This way, we ensure a DOM element is visible to position the popover from.\n//\n// See https://github.com/twbs/bootstrap/pull/12794 and\n// https://github.com/twbs/bootstrap/pull/14559 for more information.\n\n[data-toggle=\"buttons\"] {\n > .btn,\n > .btn-group > .btn {\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0,0,0,0);\n pointer-events: none;\n }\n }\n}\n","// Single side border-radius\n\n.border-top-radius(@radius) {\n border-top-right-radius: @radius;\n border-top-left-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-bottom-left-radius: @radius;\n border-top-left-radius: @radius;\n}\n","//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n \n &:focus {\n z-index: 3;\n }\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n .input-lg();\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n .input-sm();\n}\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @input-border-radius;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @input-border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @input-border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type=\"radio\"],\n input[type=\"checkbox\"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the \"active\" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n z-index: 2;\n margin-left: -1px;\n }\n }\n}\n","//\n// Navs\n// --------------------------------------------------\n\n\n// Base class\n// --------------------------------------------------\n\n.nav {\n margin-bottom: 0;\n padding-left: 0; // Override default ul/ol\n list-style: none;\n &:extend(.clearfix all);\n\n > li {\n position: relative;\n display: block;\n\n > a {\n position: relative;\n display: block;\n padding: @nav-link-padding;\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: @nav-link-hover-bg;\n }\n }\n\n // Disabled state sets text to gray and nukes hover/tab effects\n &.disabled > a {\n color: @nav-disabled-link-color;\n\n &:hover,\n &:focus {\n color: @nav-disabled-link-hover-color;\n text-decoration: none;\n background-color: transparent;\n cursor: @cursor-disabled;\n }\n }\n }\n\n // Open dropdowns\n .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @nav-link-hover-bg;\n border-color: @link-color;\n }\n }\n\n // Nav dividers (deprecated with v3.0.1)\n //\n // This should have been removed in v3 with the dropping of `.nav-list`, but\n // we missed it. We don't currently support this anywhere, but in the interest\n // of maintaining backward compatibility in case you use it, it's deprecated.\n .nav-divider {\n .nav-divider();\n }\n\n // Prevent IE8 from misplacing imgs\n //\n // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989\n > li > a > img {\n max-width: none;\n }\n}\n\n\n// Tabs\n// -------------------------\n\n// Give the tabs something to sit on\n.nav-tabs {\n border-bottom: 1px solid @nav-tabs-border-color;\n > li {\n float: left;\n // Make the list-items overlay the bottom border\n margin-bottom: -1px;\n\n // Actual tabs (as links)\n > a {\n margin-right: 2px;\n line-height: @line-height-base;\n border: 1px solid transparent;\n border-radius: @border-radius-base @border-radius-base 0 0;\n &:hover {\n border-color: @nav-tabs-link-hover-border-color @nav-tabs-link-hover-border-color @nav-tabs-border-color;\n }\n }\n\n // Active state, and its :hover to override normal :hover\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-tabs-active-link-hover-color;\n background-color: @nav-tabs-active-link-hover-bg;\n border: 1px solid @nav-tabs-active-link-hover-border-color;\n border-bottom-color: transparent;\n cursor: default;\n }\n }\n }\n // pulling this in mainly for less shorthand\n &.nav-justified {\n .nav-justified();\n .nav-tabs-justified();\n }\n}\n\n\n// Pills\n// -------------------------\n.nav-pills {\n > li {\n float: left;\n\n // Links rendered as pills\n > a {\n border-radius: @nav-pills-border-radius;\n }\n + li {\n margin-left: 2px;\n }\n\n // Active state\n &.active > a {\n &,\n &:hover,\n &:focus {\n color: @nav-pills-active-link-hover-color;\n background-color: @nav-pills-active-link-hover-bg;\n }\n }\n }\n}\n\n\n// Stacked pills\n.nav-stacked {\n > li {\n float: none;\n + li {\n margin-top: 2px;\n margin-left: 0; // no need for this gap between nav items\n }\n }\n}\n\n\n// Nav variations\n// --------------------------------------------------\n\n// Justified nav links\n// -------------------------\n\n.nav-justified {\n width: 100%;\n\n > li {\n float: none;\n > a {\n text-align: center;\n margin-bottom: 5px;\n }\n }\n\n > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n }\n\n @media (min-width: @screen-sm-min) {\n > li {\n display: table-cell;\n width: 1%;\n > a {\n margin-bottom: 0;\n }\n }\n }\n}\n\n// Move borders to anchors instead of bottom of list\n//\n// Mixin for adding on top the shared `.nav-justified` styles for our tabs\n.nav-tabs-justified {\n border-bottom: 0;\n\n > li > a {\n // Override margin from .nav-tabs\n margin-right: 0;\n border-radius: @border-radius-base;\n }\n\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border: 1px solid @nav-tabs-justified-link-border-color;\n }\n\n @media (min-width: @screen-sm-min) {\n > li > a {\n border-bottom: 1px solid @nav-tabs-justified-link-border-color;\n border-radius: @border-radius-base @border-radius-base 0 0;\n }\n > .active > a,\n > .active > a:hover,\n > .active > a:focus {\n border-bottom-color: @nav-tabs-justified-active-link-border-color;\n }\n }\n}\n\n\n// Tabbable tabs\n// -------------------------\n\n// Hide tabbable panes to start, show them when `.active`\n.tab-content {\n > .tab-pane {\n display: none;\n }\n > .active {\n display: block;\n }\n}\n\n\n// Dropdowns\n// -------------------------\n\n// Specific dropdowns\n.nav-tabs .dropdown-menu {\n // make dropdown border overlap tab border\n margin-top: -1px;\n // Remove the top rounded corners here since there is a hard edge above the menu\n .border-top-radius(0);\n}\n","//\n// Navbars\n// --------------------------------------------------\n\n\n// Wrapper and base class\n//\n// Provide a static navbar from which we expand to create full-width, fixed, and\n// other navbar variations.\n\n.navbar {\n position: relative;\n min-height: @navbar-height; // Ensure a navbar always shows (e.g., without a .navbar-brand in collapsed mode)\n margin-bottom: @navbar-margin-bottom;\n border: 1px solid transparent;\n\n // Prevent floats from breaking the navbar\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: @navbar-border-radius;\n }\n}\n\n\n// Navbar heading\n//\n// Groups `.navbar-brand` and `.navbar-toggle` into a single component for easy\n// styling of responsive aspects.\n\n.navbar-header {\n &:extend(.clearfix all);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n }\n}\n\n\n// Navbar collapse (body)\n//\n// Group your navbar content into this for easy collapsing and expanding across\n// various device sizes. By default, this content is collapsed when <768px, but\n// will expand past that for a horizontal display.\n//\n// To start (on mobile devices) the navbar links, forms, and buttons are stacked\n// vertically and include a `max-height` to overflow in case you have too much\n// content for the user's viewport.\n\n.navbar-collapse {\n overflow-x: visible;\n padding-right: @navbar-padding-horizontal;\n padding-left: @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255,255,255,.1);\n &:extend(.clearfix all);\n -webkit-overflow-scrolling: touch;\n\n &.in {\n overflow-y: auto;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border-top: 0;\n box-shadow: none;\n\n &.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0; // Override default setting\n overflow: visible !important;\n }\n\n &.in {\n overflow-y: visible;\n }\n\n // Undo the collapse side padding for navbars with containers to ensure\n // alignment of right-aligned contents.\n .navbar-fixed-top &,\n .navbar-static-top &,\n .navbar-fixed-bottom & {\n padding-left: 0;\n padding-right: 0;\n }\n }\n}\n\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n .navbar-collapse {\n max-height: @navbar-collapse-max-height;\n\n @media (max-device-width: @screen-xs-min) and (orientation: landscape) {\n max-height: 200px;\n }\n }\n}\n\n\n// Both navbar header and collapse\n//\n// When a container is present, change the behavior of the header and collapse.\n\n.container,\n.container-fluid {\n > .navbar-header,\n > .navbar-collapse {\n margin-right: -@navbar-padding-horizontal;\n margin-left: -@navbar-padding-horizontal;\n\n @media (min-width: @grid-float-breakpoint) {\n margin-right: 0;\n margin-left: 0;\n }\n }\n}\n\n\n//\n// Navbar alignment options\n//\n// Display the navbar across the entirety of the page or fixed it to the top or\n// bottom of the page.\n\n// Static top (unfixed, but 100% wide) navbar\n.navbar-static-top {\n z-index: @zindex-navbar;\n border-width: 0 0 1px;\n\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n\n// Fix the top/bottom navbars when screen real estate supports it\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: @zindex-navbar-fixed;\n\n // Undo the rounded corners\n @media (min-width: @grid-float-breakpoint) {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0; // override .navbar defaults\n border-width: 1px 0 0;\n}\n\n\n// Brand/project name\n\n.navbar-brand {\n float: left;\n padding: @navbar-padding-vertical @navbar-padding-horizontal;\n font-size: @font-size-large;\n line-height: @line-height-computed;\n height: @navbar-height;\n\n &:hover,\n &:focus {\n text-decoration: none;\n }\n\n > img {\n display: block;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n .navbar > .container &,\n .navbar > .container-fluid & {\n margin-left: -@navbar-padding-horizontal;\n }\n }\n}\n\n\n// Navbar toggle\n//\n// Custom button for toggling the `.navbar-collapse`, powered by the collapse\n// JavaScript plugin.\n\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: @navbar-padding-horizontal;\n padding: 9px 10px;\n .navbar-vertical-align(34px);\n background-color: transparent;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n border-radius: @border-radius-base;\n\n // We remove the `outline` here, but later compensate by attaching `:hover`\n // styles to `:focus`.\n &:focus {\n outline: 0;\n }\n\n // Bars\n .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n }\n .icon-bar + .icon-bar {\n margin-top: 4px;\n }\n\n @media (min-width: @grid-float-breakpoint) {\n display: none;\n }\n}\n\n\n// Navbar nav links\n//\n// Builds on top of the `.nav` components with its own modifier class to make\n// the nav the full height of the horizontal nav (above 768px).\n\n.navbar-nav {\n margin: (@navbar-padding-vertical / 2) -@navbar-padding-horizontal;\n\n > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: @line-height-computed;\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n > li > a,\n .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n > li > a {\n line-height: @line-height-computed;\n &:hover,\n &:focus {\n background-image: none;\n }\n }\n }\n }\n\n // Uncollapse the nav\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin: 0;\n\n > li {\n float: left;\n > a {\n padding-top: @navbar-padding-vertical;\n padding-bottom: @navbar-padding-vertical;\n }\n }\n }\n}\n\n\n// Navbar form\n//\n// Extension of the `.form-inline` with some extra flavor for optimum display in\n// our navbars.\n\n.navbar-form {\n margin-left: -@navbar-padding-horizontal;\n margin-right: -@navbar-padding-horizontal;\n padding: 10px @navbar-padding-horizontal;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n @shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n\n // Mixin behavior for optimum display\n .form-inline();\n\n .form-group {\n @media (max-width: @grid-float-breakpoint-max) {\n margin-bottom: 5px;\n\n &:last-child {\n margin-bottom: 0;\n }\n }\n }\n\n // Vertically center in expanded, horizontal navbar\n .navbar-vertical-align(@input-height-base);\n\n // Undo 100% width for pull classes\n @media (min-width: @grid-float-breakpoint) {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n .box-shadow(none);\n }\n}\n\n\n// Dropdown menus\n\n// Menu position and menu carets\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n .border-top-radius(0);\n}\n// Menu position and menu caret support for dropups via extra dropup class\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n .border-top-radius(@navbar-border-radius);\n .border-bottom-radius(0);\n}\n\n\n// Buttons in navbars\n//\n// Vertically center a button within a navbar (when *not* in a form).\n\n.navbar-btn {\n .navbar-vertical-align(@input-height-base);\n\n &.btn-sm {\n .navbar-vertical-align(@input-height-small);\n }\n &.btn-xs {\n .navbar-vertical-align(22);\n }\n}\n\n\n// Text in navbars\n//\n// Add a class to make any element properly align itself vertically within the navbars.\n\n.navbar-text {\n .navbar-vertical-align(@line-height-computed);\n\n @media (min-width: @grid-float-breakpoint) {\n float: left;\n margin-left: @navbar-padding-horizontal;\n margin-right: @navbar-padding-horizontal;\n }\n}\n\n\n// Component alignment\n//\n// Repurpose the pull utilities as their own navbar utilities to avoid specificity\n// issues with parents and chaining. Only do this when the navbar is uncollapsed\n// though so that navbar contents properly stack and align in mobile.\n//\n// Declared after the navbar components to ensure more specificity on the margins.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-left { .pull-left(); }\n .navbar-right {\n .pull-right();\n margin-right: -@navbar-padding-horizontal;\n\n ~ .navbar-right {\n margin-right: 0;\n }\n }\n}\n\n\n// Alternate navbars\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n background-color: @navbar-default-bg;\n border-color: @navbar-default-border;\n\n .navbar-brand {\n color: @navbar-default-brand-color;\n &:hover,\n &:focus {\n color: @navbar-default-brand-hover-color;\n background-color: @navbar-default-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-default-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-default-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n\n .navbar-toggle {\n border-color: @navbar-default-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-default-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-default-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: @navbar-default-border;\n }\n\n // Dropdown menu items\n .navbar-nav {\n // Remove background color from open dropdown\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-default-link-active-bg;\n color: @navbar-default-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display when collapsed\n .open .dropdown-menu {\n > li > a {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n background-color: @navbar-default-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-active-color;\n background-color: @navbar-default-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n background-color: @navbar-default-link-disabled-bg;\n }\n }\n }\n }\n }\n\n\n // Links in navbars\n //\n // Add a class to ensure links outside the navbar nav are colored correctly.\n\n .navbar-link {\n color: @navbar-default-link-color;\n &:hover {\n color: @navbar-default-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-default-link-color;\n &:hover,\n &:focus {\n color: @navbar-default-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-default-link-disabled-color;\n }\n }\n }\n}\n\n// Inverse navbar\n\n.navbar-inverse {\n background-color: @navbar-inverse-bg;\n border-color: @navbar-inverse-border;\n\n .navbar-brand {\n color: @navbar-inverse-brand-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-brand-hover-color;\n background-color: @navbar-inverse-brand-hover-bg;\n }\n }\n\n .navbar-text {\n color: @navbar-inverse-color;\n }\n\n .navbar-nav {\n > li > a {\n color: @navbar-inverse-link-color;\n\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n\n // Darken the responsive nav toggle\n .navbar-toggle {\n border-color: @navbar-inverse-toggle-border-color;\n &:hover,\n &:focus {\n background-color: @navbar-inverse-toggle-hover-bg;\n }\n .icon-bar {\n background-color: @navbar-inverse-toggle-icon-bar-bg;\n }\n }\n\n .navbar-collapse,\n .navbar-form {\n border-color: darken(@navbar-inverse-bg, 7%);\n }\n\n // Dropdowns\n .navbar-nav {\n > .open > a {\n &,\n &:hover,\n &:focus {\n background-color: @navbar-inverse-link-active-bg;\n color: @navbar-inverse-link-active-color;\n }\n }\n\n @media (max-width: @grid-float-breakpoint-max) {\n // Dropdowns get custom display\n .open .dropdown-menu {\n > .dropdown-header {\n border-color: @navbar-inverse-border;\n }\n .divider {\n background-color: @navbar-inverse-border;\n }\n > li > a {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n background-color: @navbar-inverse-link-hover-bg;\n }\n }\n > .active > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-active-color;\n background-color: @navbar-inverse-link-active-bg;\n }\n }\n > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n background-color: @navbar-inverse-link-disabled-bg;\n }\n }\n }\n }\n }\n\n .navbar-link {\n color: @navbar-inverse-link-color;\n &:hover {\n color: @navbar-inverse-link-hover-color;\n }\n }\n\n .btn-link {\n color: @navbar-inverse-link-color;\n &:hover,\n &:focus {\n color: @navbar-inverse-link-hover-color;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @navbar-inverse-link-disabled-color;\n }\n }\n }\n}\n","// Navbar vertical align\n//\n// Vertically center elements in the navbar.\n// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.\n\n.navbar-vertical-align(@element-height) {\n margin-top: ((@navbar-height - @element-height) / 2);\n margin-bottom: ((@navbar-height - @element-height) / 2);\n}\n","//\n// Utility classes\n// --------------------------------------------------\n\n\n// Floats\n// -------------------------\n\n.clearfix {\n .clearfix();\n}\n.center-block {\n .center-block();\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n\n\n// Toggling content\n// -------------------------\n\n// Note: Deprecated .hide in favor of .hidden or .sr-only (as appropriate) in v3.0.1\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n .text-hide();\n}\n\n\n// Hide from screenreaders and browsers\n//\n// Credit: HTML5 Boilerplate\n\n.hidden {\n display: none !important;\n}\n\n\n// For Affix plugin\n// -------------------------\n\n.affix {\n position: fixed;\n}\n","//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n content: \"@{breadcrumb-separator}\\00a0\"; // Unicode space added since inline-block means non-collapsing white-space\n padding: 0 5px;\n color: @breadcrumb-color;\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n","//\n// Pagination (multiple pages)\n// --------------------------------------------------\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: @line-height-computed 0;\n border-radius: @border-radius-base;\n\n > li {\n display: inline; // Remove list-style and block-level defaults\n > a,\n > span {\n position: relative;\n float: left; // Collapse white-space\n padding: @padding-base-vertical @padding-base-horizontal;\n line-height: @line-height-base;\n text-decoration: none;\n color: @pagination-color;\n background-color: @pagination-bg;\n border: 1px solid @pagination-border;\n margin-left: -1px;\n }\n &:first-child {\n > a,\n > span {\n margin-left: 0;\n .border-left-radius(@border-radius-base);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius-base);\n }\n }\n }\n\n > li > a,\n > li > span {\n &:hover,\n &:focus {\n z-index: 2;\n color: @pagination-hover-color;\n background-color: @pagination-hover-bg;\n border-color: @pagination-hover-border;\n }\n }\n\n > .active > a,\n > .active > span {\n &,\n &:hover,\n &:focus {\n z-index: 3;\n color: @pagination-active-color;\n background-color: @pagination-active-bg;\n border-color: @pagination-active-border;\n cursor: default;\n }\n }\n\n > .disabled {\n > span,\n > span:hover,\n > span:focus,\n > a,\n > a:hover,\n > a:focus {\n color: @pagination-disabled-color;\n background-color: @pagination-disabled-bg;\n border-color: @pagination-disabled-border;\n cursor: @cursor-disabled;\n }\n }\n}\n\n// Sizing\n// --------------------------------------------------\n\n// Large\n.pagination-lg {\n .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n\n// Small\n.pagination-sm {\n .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n","// Pagination\n\n.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n > li {\n > a,\n > span {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n }\n &:first-child {\n > a,\n > span {\n .border-left-radius(@border-radius);\n }\n }\n &:last-child {\n > a,\n > span {\n .border-right-radius(@border-radius);\n }\n }\n }\n}\n","//\n// Pager pagination\n// --------------------------------------------------\n\n\n.pager {\n padding-left: 0;\n margin: @line-height-computed 0;\n list-style: none;\n text-align: center;\n &:extend(.clearfix all);\n li {\n display: inline;\n > a,\n > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: @pager-bg;\n border: 1px solid @pager-border;\n border-radius: @pager-border-radius;\n }\n\n > a:hover,\n > a:focus {\n text-decoration: none;\n background-color: @pager-hover-bg;\n }\n }\n\n .next {\n > a,\n > span {\n float: right;\n }\n }\n\n .previous {\n > a,\n > span {\n float: left;\n }\n }\n\n .disabled {\n > a,\n > a:hover,\n > a:focus,\n > span {\n color: @pager-disabled-color;\n background-color: @pager-bg;\n cursor: @cursor-disabled;\n }\n }\n}\n","//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n a& {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n","// Labels\n\n.label-variant(@color) {\n background-color: @color;\n\n &[href] {\n &:hover,\n &:focus {\n background-color: darken(@color, 10%);\n }\n }\n}\n","//\n// Badges\n// --------------------------------------------------\n\n\n// Base class\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n color: @badge-color;\n line-height: @badge-line-height;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n\n .btn-xs &,\n .btn-group-xs > .btn & {\n top: 0;\n padding: 1px 5px;\n }\n\n // Hover state, but only for links\n a& {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Account for badges in navs\n .list-group-item.active > &,\n .nav-pills > .active > a > & {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n }\n\n .list-group-item > & {\n float: right;\n }\n\n .list-group-item > & + & {\n margin-right: 5px;\n }\n\n .nav-pills > li > a > & {\n margin-left: 3px;\n }\n}\n","//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding-top: @jumbotron-padding;\n padding-bottom: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n > hr {\n border-top-color: darken(@jumbotron-bg, 10%);\n }\n\n .container &,\n .container-fluid & {\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n padding-left: (@grid-gutter-width / 2);\n padding-right: (@grid-gutter-width / 2);\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container &,\n .container-fluid & {\n padding-left: (@jumbotron-padding * 2);\n padding-right: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: @jumbotron-heading-font-size;\n }\n }\n}\n","//\n// Thumbnails\n// --------------------------------------------------\n\n\n// Mixin and adjust the regular image class\n.thumbnail {\n display: block;\n padding: @thumbnail-padding;\n margin-bottom: @line-height-computed;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(border .2s ease-in-out);\n\n > img,\n a > img {\n &:extend(.img-responsive);\n margin-left: auto;\n margin-right: auto;\n }\n\n // Add a hover state for linked versions only\n a&:hover,\n a&:focus,\n a&.active {\n border-color: @link-color;\n }\n\n // Image captions\n .caption {\n padding: @thumbnail-caption-padding;\n color: @thumbnail-caption-color;\n }\n}\n","//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n // Specified for the h4 to prevent conflicts of changing @headings-color\n color: inherit;\n }\n\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissible alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n.alert-dismissable, // The misspelled .alert-dismissable was deprecated in 3.2.0.\n.alert-dismissible {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n","// Alerts\n\n.alert-variant(@background; @border; @text-color) {\n background-color: @background;\n border-color: @border;\n color: @text-color;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n","//\n// Progress bars\n// --------------------------------------------------\n\n\n// Bar animations\n// -------------------------\n\n// WebKit\n@-webkit-keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n// Spec and IE10+\n@keyframes progress-bar-stripes {\n from { background-position: 40px 0; }\n to { background-position: 0 0; }\n}\n\n\n// Bar itself\n// -------------------------\n\n// Outer container\n.progress {\n overflow: hidden;\n height: @line-height-computed;\n margin-bottom: @line-height-computed;\n background-color: @progress-bg;\n border-radius: @progress-border-radius;\n .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));\n}\n\n// Bar of progress\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: @font-size-small;\n line-height: @line-height-computed;\n color: @progress-bar-color;\n text-align: center;\n background-color: @progress-bar-bg;\n .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));\n .transition(width .6s ease);\n}\n\n// Striped bars\n//\n// `.progress-striped .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar-striped` class, which you just add to an existing\n// `.progress-bar`.\n.progress-striped .progress-bar,\n.progress-bar-striped {\n #gradient > .striped();\n background-size: 40px 40px;\n}\n\n// Call animation for the active one\n//\n// `.progress.active .progress-bar` is deprecated as of v3.2.0 in favor of the\n// `.progress-bar.active` approach.\n.progress.active .progress-bar,\n.progress-bar.active {\n .animation(progress-bar-stripes 2s linear infinite);\n}\n\n\n// Variations\n// -------------------------\n\n.progress-bar-success {\n .progress-bar-variant(@progress-bar-success-bg);\n}\n\n.progress-bar-info {\n .progress-bar-variant(@progress-bar-info-bg);\n}\n\n.progress-bar-warning {\n .progress-bar-variant(@progress-bar-warning-bg);\n}\n\n.progress-bar-danger {\n .progress-bar-variant(@progress-bar-danger-bg);\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Progress bars\n\n.progress-bar-variant(@color) {\n background-color: @color;\n\n // Deprecated parent class requirement as of v3.2.0\n .progress-striped & {\n #gradient > .striped();\n }\n}\n",".media {\n // Proper spacing between instances of .media\n margin-top: 15px;\n\n &:first-child {\n margin-top: 0;\n }\n}\n\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n\n.media-body {\n width: 10000px;\n}\n\n.media-object {\n display: block;\n\n // Fix collapse in webkit from max-width: 100% and display: table-cell.\n &.img-thumbnail {\n max-width: none;\n }\n}\n\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n\n.media-middle {\n vertical-align: middle;\n}\n\n.media-bottom {\n vertical-align: bottom;\n}\n\n// Reset margins on headings for tighter default spacing\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n\n// Media list variation\n//\n// Undo default ul/ol styles\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n","//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on