diff --git a/Documentation.xml b/Documentation.xml new file mode 100644 index 0000000..113c9f7 --- /dev/null +++ b/Documentation.xml @@ -0,0 +1,99 @@ + + + + + + Razor is an extremely powerful templating language, especially if you already know C#. Writing a simple Razor template is easy, but there are a lot of ways they can be customized and controlled. If you're + not familiar with Razor templates, see here for a great introduction to the syntax. + + +

View Model

+ + The view model for each page is the IDocument of the input document. This allows you to write statements like @Model.Get<string>("MyMetadataKey"). + + +

View Properties

+ + You also have access to other Wyam information from your view. The following properties are available on every page: + + + + + Metadata: Contains the metadata of the current document. This is the same as Model. + + + + + ExecutionContext: Contains the Wyam IExecutionContext which has information about the currently executing Wyam pipeline. + + + + + Documents: Contains the Wyam IDocumentCollection which holds all processed documents and provides various means of accessing them. + + + + +

ViewStart

+ + You can place common Razor code to be executed at the start of every Razor page in a "_ViewStart.cshtml" file. This is typically used to specify a layout page. + + +

Layouts

+ + Layouts function much the same way as they do in ASP.NET MVC. Typically you place your layout code in a "_Layout.cshtml" file (though it can be named anything) and then + set it in the "_ViewStart.cshtml" file. You can use @RenderBody() and @RenderSection() just as you would in ASP.NET MVC. + + +

Partials

+ + Partials also work as they do in ASP.NET MVC. Just use @Html.Partial("_PartialName") or @Html.RenderPartial("_PartialName"). Note that you can't pass a model to the + partial view (since the model is always set to the current IDocument). To pass data to a partial view, use the ViewData collection, setting a value just before rendering the + partial and then getting it within the partial. + + +

HtmlHelpers

+ + It's possible to define custom HtmlHelpers in your configuration file and then use them within your Razor page. This provides a great way to specify common behavior for all your views. + In the declarations section of your configuration file, add a static class (the name doesn't matter, but convention suggests you call it HtmlHelperExtensions or HtmlExtensions). Then + add static extension methods for HtmlHelper. For example: + +public static class HtmlHelperExtensions +{ + public static string HelloWorld(this HtmlHelper helper) + { + return "Hello World!"; + } +} + +// Configuration code +// Set up your pipelines here + + Then you can use it from your Razor pages by calling @Html.HelloWorld(). + + +

Base Page

+ + You can also specify a different base page for your Razor views. This lets you do things like define additional properties or behavior for every page. In the declarations section of your configuration file, + add an abstract class that derives from RazorPage. Then page the Type of your new base class to the Razor module. + +public abstract class MyRazorPage : RazorPage +{ + public string HelloWorld + { + get { return "Hello World"; } + } +} + +Pipelines.Add("Content", + ReadFiles("*.cshtml"), + Razor(typeof(MyRazorPage)), + WriteFiles(".html") +); + + Then you can use any methods, properties, etc. you defined in your base class directly within your Razor pages - I.e., @HelloWorld. + + +
+
+
\ No newline at end of file diff --git a/README.md b/README.md index e8ace74..2ed7a62 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,3 @@ -# website -LitJSON Website +# LitJSON Website + +[https://litjson.net/](https://litjson.net/) diff --git a/api/LitJson/ExporterFunc_1/index.html b/api/LitJson/ExporterFunc_1/index.html new file mode 100644 index 0000000..bd903c0 --- /dev/null +++ b/api/LitJson/ExporterFunc_1/index.html @@ -0,0 +1,385 @@ + + + + + + + + + LitJSON - API - ExporterFunc<T> Delegate + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

ExporterFunc<T> Delegate

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • ICloneable
  • +
  • ISerializable
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
  • Delegate
  • +
  • MulticastDelegate
  • +
+
+ + +
+
+
+
+ graph TD + Base0["MulticastDelegate"]-->Type + Base1["Delegate"]-->Base0 + Base2["object"]-->Base1 + Interface0["ICloneable"]-.->Type + Interface1["ISerializable"]-.->Type + Type["ExporterFunc<T>"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public delegate void ExporterFunc<T>(T obj, JsonWriter writer) : MulticastDelegate, ICloneable, 
+    ISerializable
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + +
NameDescription
T
+
+
+ + + + + + + +

Operators

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
operator !=(Delegate, Delegate)bool +
+
Inherited from Delegate
+
operator !=(MulticastDelegate, MulticastDelegate)bool +
+
Inherited from MulticastDelegate
+
operator ==(Delegate, Delegate)bool +
+
Inherited from Delegate
+
operator ==(MulticastDelegate, MulticastDelegate)bool +
+
Inherited from MulticastDelegate
+
+
+
+ + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/0DE83988.html b/api/LitJson/IJsonWrapper/0DE83988.html new file mode 100644 index 0000000..b439958 --- /dev/null +++ b/api/LitJson/IJsonWrapper/0DE83988.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.GetBoolean() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

GetBoolean() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool GetBoolean()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/18A2D868.html b/api/LitJson/IJsonWrapper/18A2D868.html new file mode 100644 index 0000000..acd2459 --- /dev/null +++ b/api/LitJson/IJsonWrapper/18A2D868.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.SetString(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

SetString(string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void SetString(string val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/2C9D140B.html b/api/LitJson/IJsonWrapper/2C9D140B.html new file mode 100644 index 0000000..cd6ff3d --- /dev/null +++ b/api/LitJson/IJsonWrapper/2C9D140B.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.GetDouble() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

GetDouble() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
double GetDouble()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
double
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/2EC4AC36.html b/api/LitJson/IJsonWrapper/2EC4AC36.html new file mode 100644 index 0000000..8ee08cc --- /dev/null +++ b/api/LitJson/IJsonWrapper/2EC4AC36.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.SetLong(long) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

SetLong(long) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void SetLong(long val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
vallong
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/3E370BD2.html b/api/LitJson/IJsonWrapper/3E370BD2.html new file mode 100644 index 0000000..b91bd69 --- /dev/null +++ b/api/LitJson/IJsonWrapper/3E370BD2.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.ToJson() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

ToJson() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
string ToJson()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/457888C0.html b/api/LitJson/IJsonWrapper/457888C0.html new file mode 100644 index 0000000..2c3b22e --- /dev/null +++ b/api/LitJson/IJsonWrapper/457888C0.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.GetInt() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

GetInt() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
int GetInt()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
int
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/53AC9C57.html b/api/LitJson/IJsonWrapper/53AC9C57.html new file mode 100644 index 0000000..ae228b6 --- /dev/null +++ b/api/LitJson/IJsonWrapper/53AC9C57.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.SetInt(int) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

SetInt(int) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void SetInt(int val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valint
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/6ADD4D4F.html b/api/LitJson/IJsonWrapper/6ADD4D4F.html new file mode 100644 index 0000000..89a3199 --- /dev/null +++ b/api/LitJson/IJsonWrapper/6ADD4D4F.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.GetString() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

GetString() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
string GetString()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/8223BAED.html b/api/LitJson/IJsonWrapper/8223BAED.html new file mode 100644 index 0000000..28f5e15 --- /dev/null +++ b/api/LitJson/IJsonWrapper/8223BAED.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsInt Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsInt Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsInt { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/8723BE84.html b/api/LitJson/IJsonWrapper/8723BE84.html new file mode 100644 index 0000000..8cc068f --- /dev/null +++ b/api/LitJson/IJsonWrapper/8723BE84.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsLong Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsLong Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsLong { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/95F6E1E3.html b/api/LitJson/IJsonWrapper/95F6E1E3.html new file mode 100644 index 0000000..81d7d51 --- /dev/null +++ b/api/LitJson/IJsonWrapper/95F6E1E3.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.SetDouble(double) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

SetDouble(double) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void SetDouble(double val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valdouble
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/9D88354A.html b/api/LitJson/IJsonWrapper/9D88354A.html new file mode 100644 index 0000000..3e7a31a --- /dev/null +++ b/api/LitJson/IJsonWrapper/9D88354A.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsString Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsString Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsString { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/A133DFD4.html b/api/LitJson/IJsonWrapper/A133DFD4.html new file mode 100644 index 0000000..190a0ad --- /dev/null +++ b/api/LitJson/IJsonWrapper/A133DFD4.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.ToJson(JsonWriter) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

ToJson(JsonWriter) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void ToJson(JsonWriter writer)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
writerJsonWriter
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/B3D35B16.html b/api/LitJson/IJsonWrapper/B3D35B16.html new file mode 100644 index 0000000..7f3d816 --- /dev/null +++ b/api/LitJson/IJsonWrapper/B3D35B16.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.GetJsonType() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

GetJsonType() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
JsonType GetJsonType()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonType
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/CF469381.html b/api/LitJson/IJsonWrapper/CF469381.html new file mode 100644 index 0000000..dacc533 --- /dev/null +++ b/api/LitJson/IJsonWrapper/CF469381.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.GetLong() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

GetLong() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
long GetLong()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
long
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/D4380691.html b/api/LitJson/IJsonWrapper/D4380691.html new file mode 100644 index 0000000..95ec3da --- /dev/null +++ b/api/LitJson/IJsonWrapper/D4380691.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsArray Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsArray Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsArray { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/D7F8B352.html b/api/LitJson/IJsonWrapper/D7F8B352.html new file mode 100644 index 0000000..e0970f5 --- /dev/null +++ b/api/LitJson/IJsonWrapper/D7F8B352.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.SetJsonType(JsonType) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

SetJsonType(JsonType) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void SetJsonType(JsonType type)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
typeJsonType
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/D891267C.html b/api/LitJson/IJsonWrapper/D891267C.html new file mode 100644 index 0000000..7f962c6 --- /dev/null +++ b/api/LitJson/IJsonWrapper/D891267C.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsObject Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsObject Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsObject { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/DBC86C0E.html b/api/LitJson/IJsonWrapper/DBC86C0E.html new file mode 100644 index 0000000..0498b4b --- /dev/null +++ b/api/LitJson/IJsonWrapper/DBC86C0E.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsDouble Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsDouble Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsDouble { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/E7F7E5AB.html b/api/LitJson/IJsonWrapper/E7F7E5AB.html new file mode 100644 index 0000000..40e1d38 --- /dev/null +++ b/api/LitJson/IJsonWrapper/E7F7E5AB.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.IsBoolean Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

IsBoolean Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
bool IsBoolean { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/F136C3C6.html b/api/LitJson/IJsonWrapper/F136C3C6.html new file mode 100644 index 0000000..c817aea --- /dev/null +++ b/api/LitJson/IJsonWrapper/F136C3C6.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - IJsonWrapper.SetBoolean(bool) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper.

+

SetBoolean(bool) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
IJsonWrapper
+ +
+
+
+ +

Syntax

+
void SetBoolean(bool val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valbool
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/IJsonWrapper/index.html b/api/LitJson/IJsonWrapper/index.html new file mode 100644 index 0000000..c603e1f --- /dev/null +++ b/api/LitJson/IJsonWrapper/index.html @@ -0,0 +1,501 @@ + + + + + + + + + LitJSON - API - IJsonWrapper Interface + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

IJsonWrapper Interface

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • IList
  • +
  • ICollection
  • +
  • IEnumerable
  • +
  • IOrderedDictionary
  • +
+
+ + + +
Implementing Types
+
+ +
+
+
+
+
+ graph TD + Interface0["IList"]-.->Type + Interface1["ICollection"]-.->Type + Interface2["IEnumerable"]-.->Type + Interface3["IOrderedDictionary"]-.->Type + Type["IJsonWrapper"] +class Type type-node + Type-.->Implementing0["JsonMockWrapper"] + click Implementing0 "/api/LitJson/JsonMockWrapper" + Type-.->Implementing1["JsonData"] + click Implementing1 "/api/LitJson/JsonData" + +
+
+
+
+
+ +

Syntax

+
public interface IJsonWrapper : IList, ICollection, IEnumerable, IOrderedDictionary
+ + + + + + + + + +

Properties

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
IsArraybool +
+
IsBooleanbool +
+
IsDoublebool +
+
IsIntbool +
+
IsLongbool +
+
IsObjectbool +
+
IsStringbool +
+
+
+
+ + +

Methods

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
GetBoolean()bool +
+
GetDouble()double +
+
GetInt()int +
+
GetJsonType()JsonType +
+
GetLong()long +
+
GetString()string +
+
SetBoolean(bool)void +
+
SetDouble(double)void +
+
SetInt(int)void +
+
SetJsonType(JsonType)void +
+
SetLong(long)void +
+
SetString(string)void +
+
ToJson()string +
+
ToJson(JsonWriter)void +
+
+
+
+ + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/ImporterFunc_2/index.html b/api/LitJson/ImporterFunc_2/index.html new file mode 100644 index 0000000..ae29c24 --- /dev/null +++ b/api/LitJson/ImporterFunc_2/index.html @@ -0,0 +1,389 @@ + + + + + + + + + LitJSON - API - ImporterFunc<TJson, TValue> Delegate + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

ImporterFunc<TJson, TValue> Delegate

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • ICloneable
  • +
  • ISerializable
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
  • Delegate
  • +
  • MulticastDelegate
  • +
+
+ + +
+
+
+
+ graph TD + Base0["MulticastDelegate"]-->Type + Base1["Delegate"]-->Base0 + Base2["object"]-->Base1 + Interface0["ICloneable"]-.->Type + Interface1["ISerializable"]-.->Type + Type["ImporterFunc<TJson, TValue>"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public delegate TValue ImporterFunc<TJson, TValue>(TJson input) : MulticastDelegate, ICloneable, 
+    ISerializable
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + + + + + +
NameDescription
TJson
TValue
+
+
+ + + + + + + +

Operators

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
operator !=(Delegate, Delegate)bool +
+
Inherited from Delegate
+
operator !=(MulticastDelegate, MulticastDelegate)bool +
+
Inherited from MulticastDelegate
+
operator ==(Delegate, Delegate)bool +
+
Inherited from Delegate
+
operator ==(MulticastDelegate, MulticastDelegate)bool +
+
Inherited from MulticastDelegate
+
+
+
+ + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/16FA82AD.html b/api/LitJson/JsonData/16FA82AD.html new file mode 100644 index 0000000..e4e5e6c --- /dev/null +++ b/api/LitJson/JsonData/16FA82AD.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData(long) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData(long) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData(long number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberlong
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/1B9DC9C4.html b/api/LitJson/JsonData/1B9DC9C4.html new file mode 100644 index 0000000..018f2ec --- /dev/null +++ b/api/LitJson/JsonData/1B9DC9C4.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.ToJson(JsonWriter) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

ToJson(JsonWriter) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public void ToJson(JsonWriter writer)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
writerJsonWriter
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/21971DAF.html b/api/LitJson/JsonData/21971DAF.html new file mode 100644 index 0000000..f5c81c4 --- /dev/null +++ b/api/LitJson/JsonData/21971DAF.html @@ -0,0 +1,317 @@ + + + + + + + + + LitJSON - API - JsonData.ToString() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

ToString() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public override string ToString()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/37A72A5E.html b/api/LitJson/JsonData/37A72A5E.html new file mode 100644 index 0000000..75a5a3b --- /dev/null +++ b/api/LitJson/JsonData/37A72A5E.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.SetJsonType(JsonType) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

SetJsonType(JsonType) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public void SetJsonType(JsonType type)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
typeJsonType
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/434B465F.html b/api/LitJson/JsonData/434B465F.html new file mode 100644 index 0000000..6b7ba13 --- /dev/null +++ b/api/LitJson/JsonData/434B465F.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.Add(object) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

Add(object) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public int Add(object value)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valueobject
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
int
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/4C91DE0E.html b/api/LitJson/JsonData/4C91DE0E.html new file mode 100644 index 0000000..93a5fe8 --- /dev/null +++ b/api/LitJson/JsonData/4C91DE0E.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsBoolean Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsBoolean Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsBoolean { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/50195E16.html b/api/LitJson/JsonData/50195E16.html new file mode 100644 index 0000000..508155c --- /dev/null +++ b/api/LitJson/JsonData/50195E16.html @@ -0,0 +1,317 @@ + + + + + + + + + LitJSON - API - JsonData.GetJsonType() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

GetJsonType() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonType GetJsonType()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonType
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/58D9CF63.html b/api/LitJson/JsonData/58D9CF63.html new file mode 100644 index 0000000..cec236d --- /dev/null +++ b/api/LitJson/JsonData/58D9CF63.html @@ -0,0 +1,342 @@ + + + + + + + + + LitJSON - API - JsonData.ContainsKey(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

ContainsKey(string) Method

+
+
+ + +

Summary

+
+ Determines whether the json contains an element that has the specified key. +
+ +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool ContainsKey(string key)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
keystringThe key to locate in the json.
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
booltrue if the json contains an element that has the specified key; otherwise, false.
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/6B3C2E89.html b/api/LitJson/JsonData/6B3C2E89.html new file mode 100644 index 0000000..d5d0d2f --- /dev/null +++ b/api/LitJson/JsonData/6B3C2E89.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData(double) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData(double) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData(double number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberdouble
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/77918477.html b/api/LitJson/JsonData/77918477.html new file mode 100644 index 0000000..a052556 --- /dev/null +++ b/api/LitJson/JsonData/77918477.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsLong Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsLong Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsLong { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/7AF0482C.html b/api/LitJson/JsonData/7AF0482C.html new file mode 100644 index 0000000..968c2b1 --- /dev/null +++ b/api/LitJson/JsonData/7AF0482C.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsArray Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsArray Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsArray { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/7B9F13FD.html b/api/LitJson/JsonData/7B9F13FD.html new file mode 100644 index 0000000..aaa302d --- /dev/null +++ b/api/LitJson/JsonData/7B9F13FD.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData(int) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData(int) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData(int number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberint
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/7D7A5A36.html b/api/LitJson/JsonData/7D7A5A36.html new file mode 100644 index 0000000..73d2cda --- /dev/null +++ b/api/LitJson/JsonData/7D7A5A36.html @@ -0,0 +1,317 @@ + + + + + + + + + LitJSON - API - JsonData.Clear() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

Clear() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public void Clear()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/82497254.html b/api/LitJson/JsonData/82497254.html new file mode 100644 index 0000000..b50e243 --- /dev/null +++ b/api/LitJson/JsonData/82497254.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData(bool) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData(bool) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData(bool boolean)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
booleanbool
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/88275510.html b/api/LitJson/JsonData/88275510.html new file mode 100644 index 0000000..c50cfaf --- /dev/null +++ b/api/LitJson/JsonData/88275510.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData(object) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData(object) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData(object obj)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
objobject
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/8E81D516.html b/api/LitJson/JsonData/8E81D516.html new file mode 100644 index 0000000..b2b5700 --- /dev/null +++ b/api/LitJson/JsonData/8E81D516.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData(string) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData(string) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData(string str)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
strstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/909B796E.html b/api/LitJson/JsonData/909B796E.html new file mode 100644 index 0000000..dab5f59 --- /dev/null +++ b/api/LitJson/JsonData/909B796E.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsInt Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsInt Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsInt { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/91697924.html b/api/LitJson/JsonData/91697924.html new file mode 100644 index 0000000..42ad6cc --- /dev/null +++ b/api/LitJson/JsonData/91697924.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.Remove(object) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

Remove(object) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool Remove(object obj)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
objobject
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/963E61A4.html b/api/LitJson/JsonData/963E61A4.html new file mode 100644 index 0000000..a5df0eb --- /dev/null +++ b/api/LitJson/JsonData/963E61A4.html @@ -0,0 +1,336 @@ + + + + + + + + + LitJSON - API - JsonData.this[string] Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

this[string] Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData this[string prop_name] { get; set; }
+ + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
prop_namestring
+
+
+ +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonData
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/A64A1513.html b/api/LitJson/JsonData/A64A1513.html new file mode 100644 index 0000000..c204fc4 --- /dev/null +++ b/api/LitJson/JsonData/A64A1513.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.Keys Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

Keys Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public ICollection<string> Keys { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
ICollection<string>
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/AFF96C74.html b/api/LitJson/JsonData/AFF96C74.html new file mode 100644 index 0000000..61c0cf0 --- /dev/null +++ b/api/LitJson/JsonData/AFF96C74.html @@ -0,0 +1,317 @@ + + + + + + + + + LitJSON - API - JsonData.JsonData() Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

JsonData() Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/B0186617.html b/api/LitJson/JsonData/B0186617.html new file mode 100644 index 0000000..57022a3 --- /dev/null +++ b/api/LitJson/JsonData/B0186617.html @@ -0,0 +1,317 @@ + + + + + + + + + LitJSON - API - JsonData.ToJson() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

ToJson() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public string ToJson()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/B9B10F27.html b/api/LitJson/JsonData/B9B10F27.html new file mode 100644 index 0000000..126fffa --- /dev/null +++ b/api/LitJson/JsonData/B9B10F27.html @@ -0,0 +1,337 @@ + + + + + + + + + LitJSON - API - JsonData.Equals(JsonData) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

Equals(JsonData) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool Equals(JsonData x)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
xJsonData
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/BA48E67B.html b/api/LitJson/JsonData/BA48E67B.html new file mode 100644 index 0000000..5b554a5 --- /dev/null +++ b/api/LitJson/JsonData/BA48E67B.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsString Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsString Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsString { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/C2AFA7F4.html b/api/LitJson/JsonData/C2AFA7F4.html new file mode 100644 index 0000000..b3a712f --- /dev/null +++ b/api/LitJson/JsonData/C2AFA7F4.html @@ -0,0 +1,336 @@ + + + + + + + + + LitJSON - API - JsonData.this[int] Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

this[int] Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public JsonData this[int index] { get; set; }
+ + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
indexint
+
+
+ +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonData
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/E2777713.html b/api/LitJson/JsonData/E2777713.html new file mode 100644 index 0000000..8b28537 --- /dev/null +++ b/api/LitJson/JsonData/E2777713.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.Count Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

Count Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public int Count { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
int
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/FC08BF3F.html b/api/LitJson/JsonData/FC08BF3F.html new file mode 100644 index 0000000..4669e99 --- /dev/null +++ b/api/LitJson/JsonData/FC08BF3F.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsDouble Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsDouble Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsDouble { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/FF51F54D.html b/api/LitJson/JsonData/FF51F54D.html new file mode 100644 index 0000000..1663fbc --- /dev/null +++ b/api/LitJson/JsonData/FF51F54D.html @@ -0,0 +1,316 @@ + + + + + + + + + LitJSON - API - JsonData.IsObject Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData.

+

IsObject Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonData
+ +
+
+
+ +

Syntax

+
public bool IsObject { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonData/index.html b/api/LitJson/JsonData/index.html new file mode 100644 index 0000000..8abb446 --- /dev/null +++ b/api/LitJson/JsonData/index.html @@ -0,0 +1,634 @@ + + + + + + + + + LitJSON - API - JsonData Class + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonData Class

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+ +
+ +
Base Types
+
+
    +
  • object
  • +
+
+ + +
+
+
+
+ graph TD + Base0["object"]-->Type + Interface0["IJsonWrapper"]-.->Type + click Interface0 "/api/LitJson/IJsonWrapper" + Interface1["IList"]-.->Type + Interface2["ICollection"]-.->Type + Interface3["IEnumerable"]-.->Type + Interface4["IOrderedDictionary"]-.->Type + Interface5["IEquatable<JsonData>"]-.->Type + Type["JsonData"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public class JsonData : IJsonWrapper, IList, ICollection, IEnumerable, IOrderedDictionary, 
+    IEquatable<JsonData>
+ + + + + + +

Constructors

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameSummary
JsonData()
JsonData(bool)
JsonData(double)
JsonData(int)
JsonData(long)
JsonData(object)
JsonData(string)
+
+
+ + + + +

Properties

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
Countint +
+
IsArraybool +
+
IsBooleanbool +
+
IsDoublebool +
+
IsIntbool +
+
IsLongbool +
+
IsObjectbool +
+
IsStringbool +
+
KeysICollection<string> +
+
this[int]JsonData +
+
this[string]JsonData +
+
+
+
+ + +

Methods

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
Add(object)int +
+
Clear()void +
+
ContainsKey(string)bool +
+ Determines whether the json contains an element that has the specified key. +
+
Equals(JsonData)bool +
+
GetJsonType()JsonType +
+
Remove(object)bool +
+
SetJsonType(JsonType)void +
+
ToJson()string +
+
ToJson(JsonWriter)void +
+
ToString()string +
+
+
+
+ + +

Operators

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
explicit operator bool(JsonData)bool +
+
explicit operator double(JsonData)double +
+
explicit operator int(JsonData)int +
+
explicit operator long(JsonData)long +
+
explicit operator string(JsonData)string +
+
implicit operator JsonData(bool)JsonData +
+
implicit operator JsonData(double)JsonData +
+
implicit operator JsonData(int)JsonData +
+
implicit operator JsonData(long)JsonData +
+
implicit operator JsonData(string)JsonData +
+
+
+
+ + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonException/5EB431C2.html b/api/LitJson/JsonException/5EB431C2.html new file mode 100644 index 0000000..b044331 --- /dev/null +++ b/api/LitJson/JsonException/5EB431C2.html @@ -0,0 +1,315 @@ + + + + + + + + + LitJSON - API - JsonException.JsonException(string, Exception) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonException.

+

JsonException(string, Exception) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonException
+ +
+
+
+ +

Syntax

+
public JsonException(string message, Exception inner_exception)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + + + + + + +
NameTypeDescription
messagestring
inner_exceptionException
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonException/A78F7764.html b/api/LitJson/JsonException/A78F7764.html new file mode 100644 index 0000000..d7c218e --- /dev/null +++ b/api/LitJson/JsonException/A78F7764.html @@ -0,0 +1,310 @@ + + + + + + + + + LitJSON - API - JsonException.JsonException(string) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonException.

+

JsonException(string) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonException
+ +
+
+
+ +

Syntax

+
public JsonException(string message)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
messagestring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonException/FD0E68C6.html b/api/LitJson/JsonException/FD0E68C6.html new file mode 100644 index 0000000..cc8ec6e --- /dev/null +++ b/api/LitJson/JsonException/FD0E68C6.html @@ -0,0 +1,290 @@ + + + + + + + + + LitJSON - API - JsonException.JsonException() Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonException.

+

JsonException() Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonException
+ +
+
+
+ +

Syntax

+
public JsonException()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonException/index.html b/api/LitJson/JsonException/index.html new file mode 100644 index 0000000..3a822b8 --- /dev/null +++ b/api/LitJson/JsonException/index.html @@ -0,0 +1,345 @@ + + + + + + + + + LitJSON - API - JsonException Class + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonException Class

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • ISerializable
  • +
  • _Exception
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
  • Exception
  • +
  • ApplicationException
  • +
+
+ + +
+
+
+
+ graph TD + Base0["ApplicationException"]-->Type + Base1["Exception"]-->Base0 + Base2["object"]-->Base1 + Interface0["ISerializable"]-.->Type + Interface1["_Exception"]-.->Type + Type["JsonException"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public class JsonException : ApplicationException, ISerializable, _Exception
+ + + + + + +

Constructors

+
+
+ + + + + + + + + + + + + + + + + + + +
NameSummary
JsonException()
JsonException(string)
JsonException(string, Exception)
+
+
+ + + + + + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/15F9F01A.html b/api/LitJson/JsonMapper/15F9F01A.html new file mode 100644 index 0000000..4a1483f --- /dev/null +++ b/api/LitJson/JsonMapper/15F9F01A.html @@ -0,0 +1,322 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToJson(object) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToJson(object) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static string ToJson(object obj)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
objobject
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/16B88B07.html b/api/LitJson/JsonMapper/16B88B07.html new file mode 100644 index 0000000..cf9810f --- /dev/null +++ b/api/LitJson/JsonMapper/16B88B07.html @@ -0,0 +1,344 @@ + + + + + + + + + LitJSON - API - JsonMapper.RegisterImporter<TJson, TValue>(ImporterFunc<TJson, TValue>) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

RegisterImporter<TJson, TValue>(ImporterFunc<TJson, TValue>) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static void RegisterImporter<TJson, TValue>(ImporterFunc<TJson, TValue> importer)
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + + + + + +
NameDescription
TJson
TValue
+
+
+ +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
importerImporterFunc<TJson, TValue>
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/3B7515FD.html b/api/LitJson/JsonMapper/3B7515FD.html new file mode 100644 index 0000000..18ea8e4 --- /dev/null +++ b/api/LitJson/JsonMapper/3B7515FD.html @@ -0,0 +1,322 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject(TextReader) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject(TextReader) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static JsonData ToObject(TextReader reader)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
readerTextReader
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonData
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/598C9820.html b/api/LitJson/JsonMapper/598C9820.html new file mode 100644 index 0000000..4fe7aa4 --- /dev/null +++ b/api/LitJson/JsonMapper/598C9820.html @@ -0,0 +1,340 @@ + + + + + + + + + LitJSON - API - JsonMapper.RegisterExporter<T>(ExporterFunc<T>) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

RegisterExporter<T>(ExporterFunc<T>) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static void RegisterExporter<T>(ExporterFunc<T> exporter)
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + +
NameDescription
T
+
+
+ +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
exporterExporterFunc<T>
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/59B293DD.html b/api/LitJson/JsonMapper/59B293DD.html new file mode 100644 index 0000000..faf7a31 --- /dev/null +++ b/api/LitJson/JsonMapper/59B293DD.html @@ -0,0 +1,340 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject<T>(TextReader) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject<T>(TextReader) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static T ToObject<T>(TextReader reader)
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + +
NameDescription
T
+
+
+ +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
readerTextReader
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
T
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/5E598582.html b/api/LitJson/JsonMapper/5E598582.html new file mode 100644 index 0000000..7b440e3 --- /dev/null +++ b/api/LitJson/JsonMapper/5E598582.html @@ -0,0 +1,340 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject<T>(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject<T>(string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static T ToObject<T>(string json)
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + +
NameDescription
T
+
+
+ +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
jsonstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
T
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/73836752.html b/api/LitJson/JsonMapper/73836752.html new file mode 100644 index 0000000..d691a35 --- /dev/null +++ b/api/LitJson/JsonMapper/73836752.html @@ -0,0 +1,322 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject(JsonReader) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject(JsonReader) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static JsonData ToObject(JsonReader reader)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
readerJsonReader
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonData
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/75C31373.html b/api/LitJson/JsonMapper/75C31373.html new file mode 100644 index 0000000..047c358 --- /dev/null +++ b/api/LitJson/JsonMapper/75C31373.html @@ -0,0 +1,340 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject<T>(JsonReader) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject<T>(JsonReader) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static T ToObject<T>(JsonReader reader)
+ + + + +

Type Parameters

+
+
+ + + + + + + + + + + +
NameDescription
T
+
+
+ +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
readerJsonReader
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
T
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/8CC88196.html b/api/LitJson/JsonMapper/8CC88196.html new file mode 100644 index 0000000..0367ea3 --- /dev/null +++ b/api/LitJson/JsonMapper/8CC88196.html @@ -0,0 +1,327 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToJson(object, JsonWriter) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToJson(object, JsonWriter) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static void ToJson(object obj, JsonWriter writer)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + + + + + + +
NameTypeDescription
objobject
writerJsonWriter
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/A610F9E7.html b/api/LitJson/JsonMapper/A610F9E7.html new file mode 100644 index 0000000..ff51a26 --- /dev/null +++ b/api/LitJson/JsonMapper/A610F9E7.html @@ -0,0 +1,302 @@ + + + + + + + + + LitJSON - API - JsonMapper.UnregisterImporters() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

UnregisterImporters() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static void UnregisterImporters()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/AEFF7CAE.html b/api/LitJson/JsonMapper/AEFF7CAE.html new file mode 100644 index 0000000..9728d65 --- /dev/null +++ b/api/LitJson/JsonMapper/AEFF7CAE.html @@ -0,0 +1,327 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToWrapper(WrapperFactory, JsonReader) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToWrapper(WrapperFactory, JsonReader) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static IJsonWrapper ToWrapper(WrapperFactory factory, JsonReader reader)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + + + + + + +
NameTypeDescription
factoryWrapperFactory
readerJsonReader
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
IJsonWrapper
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/AF555A53.html b/api/LitJson/JsonMapper/AF555A53.html new file mode 100644 index 0000000..806e33c --- /dev/null +++ b/api/LitJson/JsonMapper/AF555A53.html @@ -0,0 +1,322 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject(string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static JsonData ToObject(string json)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
jsonstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonData
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/AFBC0BB7.html b/api/LitJson/JsonMapper/AFBC0BB7.html new file mode 100644 index 0000000..af3e530 --- /dev/null +++ b/api/LitJson/JsonMapper/AFBC0BB7.html @@ -0,0 +1,327 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToWrapper(WrapperFactory, string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToWrapper(WrapperFactory, string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static IJsonWrapper ToWrapper(WrapperFactory factory, string json)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + + + + + + +
NameTypeDescription
factoryWrapperFactory
jsonstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
IJsonWrapper
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/F6028264.html b/api/LitJson/JsonMapper/F6028264.html new file mode 100644 index 0000000..8e5749a --- /dev/null +++ b/api/LitJson/JsonMapper/F6028264.html @@ -0,0 +1,327 @@ + + + + + + + + + LitJSON - API - JsonMapper.ToObject(string, Type) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

ToObject(string, Type) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static object ToObject(string json, Type ConvertType)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + + + + + + +
NameTypeDescription
jsonstring
ConvertTypeType
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
object
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/FDDC9635.html b/api/LitJson/JsonMapper/FDDC9635.html new file mode 100644 index 0000000..fb063e3 --- /dev/null +++ b/api/LitJson/JsonMapper/FDDC9635.html @@ -0,0 +1,302 @@ + + + + + + + + + LitJSON - API - JsonMapper.UnregisterExporters() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper.

+

UnregisterExporters() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMapper
+ +
+
+
+ +

Syntax

+
public static void UnregisterExporters()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMapper/index.html b/api/LitJson/JsonMapper/index.html new file mode 100644 index 0000000..c121482 --- /dev/null +++ b/api/LitJson/JsonMapper/index.html @@ -0,0 +1,441 @@ + + + + + + + + + LitJSON - API - JsonMapper Class + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMapper Class

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ + +
Base Types
+
+
    +
  • object
  • +
+
+ + +
+
+
+
+ graph TD + Base0["object"]-->Type + Type["JsonMapper"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public class JsonMapper
+ + + + + + + + + + +

Methods

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
RegisterExporter<T>(ExporterFunc<T>)void +
+
static
+
RegisterImporter<TJson, TValue>(ImporterFunc<TJson, TValue>)void +
+
static
+
ToJson(object)string +
+
static
+
ToJson(object, JsonWriter)void +
+
static
+
ToObject(JsonReader)JsonData +
+
static
+
ToObject(string)JsonData +
+
static
+
ToObject(string, Type)object +
+
static
+
ToObject(TextReader)JsonData +
+
static
+
ToObject<T>(JsonReader)T +
+
static
+
ToObject<T>(string)T +
+
static
+
ToObject<T>(TextReader)T +
+
static
+
ToWrapper(WrapperFactory, JsonReader)IJsonWrapper +
+
static
+
ToWrapper(WrapperFactory, string)IJsonWrapper +
+
static
+
UnregisterExporters()void +
+
static
+
UnregisterImporters()void +
+
static
+
+
+
+ + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/16FD08E9.html b/api/LitJson/JsonMockWrapper/16FD08E9.html new file mode 100644 index 0000000..f4b7ff8 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/16FD08E9.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.GetLong() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

GetLong() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public long GetLong()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
long
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/1BCA5E65.html b/api/LitJson/JsonMockWrapper/1BCA5E65.html new file mode 100644 index 0000000..9048abb --- /dev/null +++ b/api/LitJson/JsonMockWrapper/1BCA5E65.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.SetString(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

SetString(string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void SetString(string val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/376F0A1B.html b/api/LitJson/JsonMockWrapper/376F0A1B.html new file mode 100644 index 0000000..242cc8c --- /dev/null +++ b/api/LitJson/JsonMockWrapper/376F0A1B.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsBoolean Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsBoolean Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsBoolean { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/3AB4D6A0.html b/api/LitJson/JsonMockWrapper/3AB4D6A0.html new file mode 100644 index 0000000..4824054 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/3AB4D6A0.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsLong Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsLong Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsLong { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/65DB8D6A.html b/api/LitJson/JsonMockWrapper/65DB8D6A.html new file mode 100644 index 0000000..84b4570 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/65DB8D6A.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.GetBoolean() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

GetBoolean() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool GetBoolean()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/71388E31.html b/api/LitJson/JsonMockWrapper/71388E31.html new file mode 100644 index 0000000..ca544c9 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/71388E31.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsInt Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsInt Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsInt { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/729FF224.html b/api/LitJson/JsonMockWrapper/729FF224.html new file mode 100644 index 0000000..fcfeaaa --- /dev/null +++ b/api/LitJson/JsonMockWrapper/729FF224.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsArray Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsArray Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsArray { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/8E849BBC.html b/api/LitJson/JsonMockWrapper/8E849BBC.html new file mode 100644 index 0000000..8fe4bc9 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/8E849BBC.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.ToJson(JsonWriter) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

ToJson(JsonWriter) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void ToJson(JsonWriter writer)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
writerJsonWriter
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/944497BB.html b/api/LitJson/JsonMockWrapper/944497BB.html new file mode 100644 index 0000000..2218542 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/944497BB.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.SetJsonType(JsonType) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

SetJsonType(JsonType) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void SetJsonType(JsonType type)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
typeJsonType
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/969E67EE.html b/api/LitJson/JsonMockWrapper/969E67EE.html new file mode 100644 index 0000000..8a3e194 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/969E67EE.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.SetDouble(double) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

SetDouble(double) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void SetDouble(double val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valdouble
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/97598086.html b/api/LitJson/JsonMockWrapper/97598086.html new file mode 100644 index 0000000..863c2ea --- /dev/null +++ b/api/LitJson/JsonMockWrapper/97598086.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.GetInt() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

GetInt() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public int GetInt()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
int
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/A13A6C31.html b/api/LitJson/JsonMockWrapper/A13A6C31.html new file mode 100644 index 0000000..bd055fe --- /dev/null +++ b/api/LitJson/JsonMockWrapper/A13A6C31.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsDouble Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsDouble Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsDouble { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/A2632643.html b/api/LitJson/JsonMockWrapper/A2632643.html new file mode 100644 index 0000000..979b840 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/A2632643.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsObject Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsObject Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsObject { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/A37B9344.html b/api/LitJson/JsonMockWrapper/A37B9344.html new file mode 100644 index 0000000..164ff11 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/A37B9344.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.SetInt(int) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

SetInt(int) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void SetInt(int val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valint
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/A3A10443.html b/api/LitJson/JsonMockWrapper/A3A10443.html new file mode 100644 index 0000000..2ca0fef --- /dev/null +++ b/api/LitJson/JsonMockWrapper/A3A10443.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.GetString() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

GetString() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public string GetString()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/DE8187AE.html b/api/LitJson/JsonMockWrapper/DE8187AE.html new file mode 100644 index 0000000..b8139a2 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/DE8187AE.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.SetBoolean(bool) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

SetBoolean(bool) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void SetBoolean(bool val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
valbool
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/E539028B.html b/api/LitJson/JsonMockWrapper/E539028B.html new file mode 100644 index 0000000..a3394a5 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/E539028B.html @@ -0,0 +1,329 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.SetLong(long) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

SetLong(long) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public void SetLong(long val)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
vallong
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/E5E15D07.html b/api/LitJson/JsonMockWrapper/E5E15D07.html new file mode 100644 index 0000000..d05f590 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/E5E15D07.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.GetDouble() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

GetDouble() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public double GetDouble()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
double
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/E77A3575.html b/api/LitJson/JsonMockWrapper/E77A3575.html new file mode 100644 index 0000000..9950950 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/E77A3575.html @@ -0,0 +1,308 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.IsString Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

IsString Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public bool IsString { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/EA8ED055.html b/api/LitJson/JsonMockWrapper/EA8ED055.html new file mode 100644 index 0000000..e768298 --- /dev/null +++ b/api/LitJson/JsonMockWrapper/EA8ED055.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.GetJsonType() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

GetJsonType() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public JsonType GetJsonType()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonType
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/EC160394.html b/api/LitJson/JsonMockWrapper/EC160394.html new file mode 100644 index 0000000..2cadebe --- /dev/null +++ b/api/LitJson/JsonMockWrapper/EC160394.html @@ -0,0 +1,309 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper.ToJson() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper.

+

ToJson() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonMockWrapper
+ +
+
+
+ +

Syntax

+
public string ToJson()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonMockWrapper/index.html b/api/LitJson/JsonMockWrapper/index.html new file mode 100644 index 0000000..bb58abb --- /dev/null +++ b/api/LitJson/JsonMockWrapper/index.html @@ -0,0 +1,500 @@ + + + + + + + + + LitJSON - API - JsonMockWrapper Class + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonMockWrapper Class

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • IJsonWrapper
  • +
  • IList
  • +
  • ICollection
  • +
  • IEnumerable
  • +
  • IOrderedDictionary
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
+
+ + +
+
+
+
+ graph TD + Base0["object"]-->Type + Interface0["IJsonWrapper"]-.->Type + click Interface0 "/api/LitJson/IJsonWrapper" + Interface1["IList"]-.->Type + Interface2["ICollection"]-.->Type + Interface3["IEnumerable"]-.->Type + Interface4["IOrderedDictionary"]-.->Type + Type["JsonMockWrapper"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public class JsonMockWrapper : IJsonWrapper, IList, ICollection, IEnumerable, IOrderedDictionary
+ + + + + + + + + +

Properties

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
IsArraybool +
+
IsBooleanbool +
+
IsDoublebool +
+
IsIntbool +
+
IsLongbool +
+
IsObjectbool +
+
IsStringbool +
+
+
+
+ + +

Methods

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
GetBoolean()bool +
+
GetDouble()double +
+
GetInt()int +
+
GetJsonType()JsonType +
+
GetLong()long +
+
GetString()string +
+
SetBoolean(bool)void +
+
SetDouble(double)void +
+
SetInt(int)void +
+
SetJsonType(JsonType)void +
+
SetLong(long)void +
+
SetString(string)void +
+
ToJson()string +
+
ToJson(JsonWriter)void +
+
+
+
+ + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/38B8E392.html b/api/LitJson/JsonReader/38B8E392.html new file mode 100644 index 0000000..4f74a4a --- /dev/null +++ b/api/LitJson/JsonReader/38B8E392.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.AllowComments Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

AllowComments Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public bool AllowComments { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/61A94F1B.html b/api/LitJson/JsonReader/61A94F1B.html new file mode 100644 index 0000000..732bab4 --- /dev/null +++ b/api/LitJson/JsonReader/61A94F1B.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.EndOfJson Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

EndOfJson Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public bool EndOfJson { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/6B6D43F7.html b/api/LitJson/JsonReader/6B6D43F7.html new file mode 100644 index 0000000..659ee4a --- /dev/null +++ b/api/LitJson/JsonReader/6B6D43F7.html @@ -0,0 +1,300 @@ + + + + + + + + + LitJSON - API - JsonReader.Read() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

Read() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public bool Read()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/8A9E5BE4.html b/api/LitJson/JsonReader/8A9E5BE4.html new file mode 100644 index 0000000..cda5456 --- /dev/null +++ b/api/LitJson/JsonReader/8A9E5BE4.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.EndOfInput Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

EndOfInput Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public bool EndOfInput { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/8B76CB5C.html b/api/LitJson/JsonReader/8B76CB5C.html new file mode 100644 index 0000000..f4fda19 --- /dev/null +++ b/api/LitJson/JsonReader/8B76CB5C.html @@ -0,0 +1,320 @@ + + + + + + + + + LitJSON - API - JsonReader.JsonReader(string) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

JsonReader(string) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public JsonReader(string json_text)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
json_textstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/B1BF1C64.html b/api/LitJson/JsonReader/B1BF1C64.html new file mode 100644 index 0000000..a0ff2f7 --- /dev/null +++ b/api/LitJson/JsonReader/B1BF1C64.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.Token Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

Token Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public JsonToken Token { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
JsonToken
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/BE465C26.html b/api/LitJson/JsonReader/BE465C26.html new file mode 100644 index 0000000..dd8abf6 --- /dev/null +++ b/api/LitJson/JsonReader/BE465C26.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.Value Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

Value Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public object Value { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
object
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/C3D9D81A.html b/api/LitJson/JsonReader/C3D9D81A.html new file mode 100644 index 0000000..942a2e9 --- /dev/null +++ b/api/LitJson/JsonReader/C3D9D81A.html @@ -0,0 +1,300 @@ + + + + + + + + + LitJSON - API - JsonReader.Close() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

Close() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public void Close()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/D868B050.html b/api/LitJson/JsonReader/D868B050.html new file mode 100644 index 0000000..a7c7f85 --- /dev/null +++ b/api/LitJson/JsonReader/D868B050.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.AllowSingleQuotedStrings Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

AllowSingleQuotedStrings Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public bool AllowSingleQuotedStrings { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/DA01DAF3.html b/api/LitJson/JsonReader/DA01DAF3.html new file mode 100644 index 0000000..5298537 --- /dev/null +++ b/api/LitJson/JsonReader/DA01DAF3.html @@ -0,0 +1,320 @@ + + + + + + + + + LitJSON - API - JsonReader.JsonReader(TextReader) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

JsonReader(TextReader) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public JsonReader(TextReader reader)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
readerTextReader
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/FC42A20D.html b/api/LitJson/JsonReader/FC42A20D.html new file mode 100644 index 0000000..34e1868 --- /dev/null +++ b/api/LitJson/JsonReader/FC42A20D.html @@ -0,0 +1,299 @@ + + + + + + + + + LitJSON - API - JsonReader.SkipNonMembers Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader.

+

SkipNonMembers Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonReader
+ +
+
+
+ +

Syntax

+
public bool SkipNonMembers { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonReader/index.html b/api/LitJson/JsonReader/index.html new file mode 100644 index 0000000..31ea00d --- /dev/null +++ b/api/LitJson/JsonReader/index.html @@ -0,0 +1,423 @@ + + + + + + + + + LitJSON - API - JsonReader Class + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonReader Class

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ + +
Base Types
+
+
    +
  • object
  • +
+
+ + +
+
+
+
+ graph TD + Base0["object"]-->Type + Type["JsonReader"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public class JsonReader
+ + + + + + +

Constructors

+
+
+ + + + + + + + + + + + + + + +
NameSummary
JsonReader(string)
JsonReader(TextReader)
+
+
+ + + + +

Properties

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
AllowCommentsbool +
+
AllowSingleQuotedStringsbool +
+
EndOfInputbool +
+
EndOfJsonbool +
+
SkipNonMembersbool +
+
TokenJsonToken +
+
Valueobject +
+
+
+
+ + +

Methods

+
+
+ + + + + + + + + + + + + + + + + + +
NameValueSummary
Close()void +
+
Read()bool +
+
+
+
+ + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/1D94BF4C.html b/api/LitJson/JsonToken/1D94BF4C.html new file mode 100644 index 0000000..679489c --- /dev/null +++ b/api/LitJson/JsonToken/1D94BF4C.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.Double Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

Double Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
Double
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
8Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/26DEB0B3.html b/api/LitJson/JsonToken/26DEB0B3.html new file mode 100644 index 0000000..2cf51d6 --- /dev/null +++ b/api/LitJson/JsonToken/26DEB0B3.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.ArrayEnd Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

ArrayEnd Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
ArrayEnd
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
5Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/2BB15BB2.html b/api/LitJson/JsonToken/2BB15BB2.html new file mode 100644 index 0000000..66e9807 --- /dev/null +++ b/api/LitJson/JsonToken/2BB15BB2.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.Int Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

Int Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
Int
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
6Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/3E43A0D9.html b/api/LitJson/JsonToken/3E43A0D9.html new file mode 100644 index 0000000..3658d50 --- /dev/null +++ b/api/LitJson/JsonToken/3E43A0D9.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.Boolean Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

Boolean Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
Boolean
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
10Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/59D9EB2B.html b/api/LitJson/JsonToken/59D9EB2B.html new file mode 100644 index 0000000..8e6cd66 --- /dev/null +++ b/api/LitJson/JsonToken/59D9EB2B.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.Long Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

Long Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
Long
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
7Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/5BD4E608.html b/api/LitJson/JsonToken/5BD4E608.html new file mode 100644 index 0000000..21609a7 --- /dev/null +++ b/api/LitJson/JsonToken/5BD4E608.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.String Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

String Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
String
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
9Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/7E8CB735.html b/api/LitJson/JsonToken/7E8CB735.html new file mode 100644 index 0000000..c797dd5 --- /dev/null +++ b/api/LitJson/JsonToken/7E8CB735.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.Null Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

Null Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
Null
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
11Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/85548A9D.html b/api/LitJson/JsonToken/85548A9D.html new file mode 100644 index 0000000..e5d22ec --- /dev/null +++ b/api/LitJson/JsonToken/85548A9D.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.ObjectEnd Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

ObjectEnd Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
ObjectEnd
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
3Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/DB64C27F.html b/api/LitJson/JsonToken/DB64C27F.html new file mode 100644 index 0000000..52da646 --- /dev/null +++ b/api/LitJson/JsonToken/DB64C27F.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.ArrayStart Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

ArrayStart Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
ArrayStart
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
4Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/E14549C8.html b/api/LitJson/JsonToken/E14549C8.html new file mode 100644 index 0000000..fddc1f0 --- /dev/null +++ b/api/LitJson/JsonToken/E14549C8.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.PropertyName Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

PropertyName Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
PropertyName
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
2Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/F5CF85F7.html b/api/LitJson/JsonToken/F5CF85F7.html new file mode 100644 index 0000000..e7159fe --- /dev/null +++ b/api/LitJson/JsonToken/F5CF85F7.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.ObjectStart Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

ObjectStart Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
ObjectStart
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
1Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/FE70EC6F.html b/api/LitJson/JsonToken/FE70EC6F.html new file mode 100644 index 0000000..1d5af12 --- /dev/null +++ b/api/LitJson/JsonToken/FE70EC6F.html @@ -0,0 +1,297 @@ + + + + + + + + + LitJSON - API - JsonToken.None Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken.

+

None Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonToken
+
+
+
+ +

Syntax

+
None
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
0Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonToken/index.html b/api/LitJson/JsonToken/index.html new file mode 100644 index 0000000..a05857e --- /dev/null +++ b/api/LitJson/JsonToken/index.html @@ -0,0 +1,432 @@ + + + + + + + + + LitJSON - API - JsonToken Enum + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonToken Enum

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • IComparable
  • +
  • IFormattable
  • +
  • IConvertible
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
  • ValueType
  • +
  • Enum
  • +
+
+ + +
+
+
+
+ graph TD + Base0["Enum"]-->Type + Base1["ValueType"]-->Base0 + Base2["object"]-->Base1 + Interface0["IComparable"]-.->Type + Interface1["IFormattable"]-.->Type + Interface2["IConvertible"]-.->Type + Type["JsonToken"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public enum JsonToken
+ + + + + + + + +

Fields

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameConstant ValueSummary
ArrayEnd5 +
+
static
+
ArrayStart4 +
+
static
+
Boolean10 +
+
static
+
Double8 +
+
static
+
Int6 +
+
static
+
Long7 +
+
static
+
None0 +
+
static
+
Null11 +
+
static
+
ObjectEnd3 +
+
static
+
ObjectStart1 +
+
static
+
PropertyName2 +
+
static
+
String9 +
+
static
+
+
+
+ + + + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/15CE2C47.html b/api/LitJson/JsonType/15CE2C47.html new file mode 100644 index 0000000..d946a29 --- /dev/null +++ b/api/LitJson/JsonType/15CE2C47.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.Double Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

Double Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
Double
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
6Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/16976635.html b/api/LitJson/JsonType/16976635.html new file mode 100644 index 0000000..c1272af --- /dev/null +++ b/api/LitJson/JsonType/16976635.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.Object Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

Object Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
Object
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
1Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/32BB47B8.html b/api/LitJson/JsonType/32BB47B8.html new file mode 100644 index 0000000..65b0b90 --- /dev/null +++ b/api/LitJson/JsonType/32BB47B8.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.Array Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

Array Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
Array
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
2Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/538E7503.html b/api/LitJson/JsonType/538E7503.html new file mode 100644 index 0000000..b422699 --- /dev/null +++ b/api/LitJson/JsonType/538E7503.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.String Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

String Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
String
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
3Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/565870D7.html b/api/LitJson/JsonType/565870D7.html new file mode 100644 index 0000000..f6fd66a --- /dev/null +++ b/api/LitJson/JsonType/565870D7.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.Boolean Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

Boolean Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
Boolean
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
7Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/59F4F358.html b/api/LitJson/JsonType/59F4F358.html new file mode 100644 index 0000000..18bd2a0 --- /dev/null +++ b/api/LitJson/JsonType/59F4F358.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.None Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

None Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
None
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
0Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/C0E6E475.html b/api/LitJson/JsonType/C0E6E475.html new file mode 100644 index 0000000..4d306e6 --- /dev/null +++ b/api/LitJson/JsonType/C0E6E475.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.Int Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

Int Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
Int
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
4Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/FE5DF41C.html b/api/LitJson/JsonType/FE5DF41C.html new file mode 100644 index 0000000..d8b042f --- /dev/null +++ b/api/LitJson/JsonType/FE5DF41C.html @@ -0,0 +1,293 @@ + + + + + + + + + LitJSON - API - JsonType.Long Field + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType.

+

Long Field

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonType
+
+
+
+ +

Syntax

+
Long
+ + + + + +

Constant Value

+
+
+ + + + + + + + + + + +
ValueType
5Int32
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonType/index.html b/api/LitJson/JsonType/index.html new file mode 100644 index 0000000..f35b3e0 --- /dev/null +++ b/api/LitJson/JsonType/index.html @@ -0,0 +1,400 @@ + + + + + + + + + LitJSON - API - JsonType Enum + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonType Enum

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • IComparable
  • +
  • IFormattable
  • +
  • IConvertible
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
  • ValueType
  • +
  • Enum
  • +
+
+ + +
+
+
+
+ graph TD + Base0["Enum"]-->Type + Base1["ValueType"]-->Base0 + Base2["object"]-->Base1 + Interface0["IComparable"]-.->Type + Interface1["IFormattable"]-.->Type + Interface2["IConvertible"]-.->Type + Type["JsonType"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public enum JsonType
+ + + + + + + + +

Fields

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameConstant ValueSummary
Array2 +
+
static
+
Boolean7 +
+
static
+
Double6 +
+
static
+
Int4 +
+
static
+
Long5 +
+
static
+
None0 +
+
static
+
Object1 +
+
static
+
String3 +
+
static
+
+
+
+ + + + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/00BC1B7C.html b/api/LitJson/JsonWriter/00BC1B7C.html new file mode 100644 index 0000000..b81576e --- /dev/null +++ b/api/LitJson/JsonWriter/00BC1B7C.html @@ -0,0 +1,351 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(ulong) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(ulong) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
[CLSCompliant(false)]
+public void Write(ulong number)
+ + + +

Attributes

+
+
+ + + + + + + + + + + +
TypeDescription
CLSCompliantAttribute
+
+
+ + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberulong
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/0E8E270E.html b/api/LitJson/JsonWriter/0E8E270E.html new file mode 100644 index 0000000..07e64d2 --- /dev/null +++ b/api/LitJson/JsonWriter/0E8E270E.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.JsonWriter() Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

JsonWriter() Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public JsonWriter()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/0EB34098.html b/api/LitJson/JsonWriter/0EB34098.html new file mode 100644 index 0000000..611703e --- /dev/null +++ b/api/LitJson/JsonWriter/0EB34098.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(float) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(float) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(float number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberfloat
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/107CAEB0.html b/api/LitJson/JsonWriter/107CAEB0.html new file mode 100644 index 0000000..f5c0f69 --- /dev/null +++ b/api/LitJson/JsonWriter/107CAEB0.html @@ -0,0 +1,311 @@ + + + + + + + + + LitJSON - API - JsonWriter.Validate Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Validate Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public bool Validate { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/17197553.html b/api/LitJson/JsonWriter/17197553.html new file mode 100644 index 0000000..40c3547 --- /dev/null +++ b/api/LitJson/JsonWriter/17197553.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(string str)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
strstring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/25D7D7F6.html b/api/LitJson/JsonWriter/25D7D7F6.html new file mode 100644 index 0000000..bf75ff0 --- /dev/null +++ b/api/LitJson/JsonWriter/25D7D7F6.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.ToString() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

ToString() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public override string ToString()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
string
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/2F288756.html b/api/LitJson/JsonWriter/2F288756.html new file mode 100644 index 0000000..b96379b --- /dev/null +++ b/api/LitJson/JsonWriter/2F288756.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.WriteArrayStart() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

WriteArrayStart() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void WriteArrayStart()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/3B1646D2.html b/api/LitJson/JsonWriter/3B1646D2.html new file mode 100644 index 0000000..291f40d --- /dev/null +++ b/api/LitJson/JsonWriter/3B1646D2.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(long) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(long) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(long number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberlong
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/55915BF7.html b/api/LitJson/JsonWriter/55915BF7.html new file mode 100644 index 0000000..9e9157e --- /dev/null +++ b/api/LitJson/JsonWriter/55915BF7.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(decimal) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(decimal) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(decimal number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberdecimal
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/5673D782.html b/api/LitJson/JsonWriter/5673D782.html new file mode 100644 index 0000000..8c49533 --- /dev/null +++ b/api/LitJson/JsonWriter/5673D782.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(int) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(int) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(int number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberint
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/5F9FF149.html b/api/LitJson/JsonWriter/5F9FF149.html new file mode 100644 index 0000000..53d657a --- /dev/null +++ b/api/LitJson/JsonWriter/5F9FF149.html @@ -0,0 +1,311 @@ + + + + + + + + + LitJSON - API - JsonWriter.TextWriter Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

TextWriter Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public TextWriter TextWriter { get; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
TextWriter
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/6513A49C.html b/api/LitJson/JsonWriter/6513A49C.html new file mode 100644 index 0000000..b73e746 --- /dev/null +++ b/api/LitJson/JsonWriter/6513A49C.html @@ -0,0 +1,311 @@ + + + + + + + + + LitJSON - API - JsonWriter.IndentValue Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

IndentValue Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public int IndentValue { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
int
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/76719A52.html b/api/LitJson/JsonWriter/76719A52.html new file mode 100644 index 0000000..06f28de --- /dev/null +++ b/api/LitJson/JsonWriter/76719A52.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.WritePropertyName(string) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

WritePropertyName(string) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void WritePropertyName(string property_name)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
property_namestring
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/97433DF9.html b/api/LitJson/JsonWriter/97433DF9.html new file mode 100644 index 0000000..5bffa8f --- /dev/null +++ b/api/LitJson/JsonWriter/97433DF9.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.Reset() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Reset() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Reset()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/B6391FAB.html b/api/LitJson/JsonWriter/B6391FAB.html new file mode 100644 index 0000000..b5a1e31 --- /dev/null +++ b/api/LitJson/JsonWriter/B6391FAB.html @@ -0,0 +1,311 @@ + + + + + + + + + LitJSON - API - JsonWriter.LowerCaseProperties Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

LowerCaseProperties Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public bool LowerCaseProperties { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/B75976A4.html b/api/LitJson/JsonWriter/B75976A4.html new file mode 100644 index 0000000..9e81755 --- /dev/null +++ b/api/LitJson/JsonWriter/B75976A4.html @@ -0,0 +1,311 @@ + + + + + + + + + LitJSON - API - JsonWriter.PrettyPrint Property + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

PrettyPrint Property

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public bool PrettyPrint { get; set; }
+ + + + + +

Value

+
+
+ + + + + + + + + + + +
TypeDescription
bool
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/BCBC7C4D.html b/api/LitJson/JsonWriter/BCBC7C4D.html new file mode 100644 index 0000000..16f2de7 --- /dev/null +++ b/api/LitJson/JsonWriter/BCBC7C4D.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.WriteObjectStart() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

WriteObjectStart() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void WriteObjectStart()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/C15DAF3D.html b/api/LitJson/JsonWriter/C15DAF3D.html new file mode 100644 index 0000000..cdf7030 --- /dev/null +++ b/api/LitJson/JsonWriter/C15DAF3D.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.JsonWriter(TextWriter) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

JsonWriter(TextWriter) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public JsonWriter(TextWriter writer)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
writerTextWriter
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/E20EDA3F.html b/api/LitJson/JsonWriter/E20EDA3F.html new file mode 100644 index 0000000..0a3955c --- /dev/null +++ b/api/LitJson/JsonWriter/E20EDA3F.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.WriteArrayEnd() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

WriteArrayEnd() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void WriteArrayEnd()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/E66EA02E.html b/api/LitJson/JsonWriter/E66EA02E.html new file mode 100644 index 0000000..7dcb92c --- /dev/null +++ b/api/LitJson/JsonWriter/E66EA02E.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.JsonWriter(StringBuilder) Constructor + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

JsonWriter(StringBuilder) Constructor

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public JsonWriter(StringBuilder sb)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
sbStringBuilder
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/F2A48ECC.html b/api/LitJson/JsonWriter/F2A48ECC.html new file mode 100644 index 0000000..c066894 --- /dev/null +++ b/api/LitJson/JsonWriter/F2A48ECC.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(double) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(double) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(double number)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
numberdouble
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/FAC2E4DD.html b/api/LitJson/JsonWriter/FAC2E4DD.html new file mode 100644 index 0000000..9145133 --- /dev/null +++ b/api/LitJson/JsonWriter/FAC2E4DD.html @@ -0,0 +1,332 @@ + + + + + + + + + LitJSON - API - JsonWriter.Write(bool) Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

Write(bool) Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void Write(bool boolean)
+ + + + + +

Parameters

+
+
+ + + + + + + + + + + + + +
NameTypeDescription
booleanbool
+
+
+ +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/FC380F01.html b/api/LitJson/JsonWriter/FC380F01.html new file mode 100644 index 0000000..0a57c2b --- /dev/null +++ b/api/LitJson/JsonWriter/FC380F01.html @@ -0,0 +1,312 @@ + + + + + + + + + LitJSON - API - JsonWriter.WriteObjectEnd() Method + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter.

+

WriteObjectEnd() Method

+
+
+ + + +
+
+
+ +
Namespace
+
LitJson
+ +
Containing Type
+
JsonWriter
+ +
+
+
+ +

Syntax

+
public void WriteObjectEnd()
+ + + + + + +

Return Value

+
+
+ + + + + + + + + + + +
TypeDescription
void
+
+
+ + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/JsonWriter/index.html b/api/LitJson/JsonWriter/index.html new file mode 100644 index 0000000..0573e94 --- /dev/null +++ b/api/LitJson/JsonWriter/index.html @@ -0,0 +1,504 @@ + + + + + + + + + LitJSON - API - JsonWriter Class + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

JsonWriter Class

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ + +
Base Types
+
+
    +
  • object
  • +
+
+ + +
+
+
+
+ graph TD + Base0["object"]-->Type + Type["JsonWriter"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public class JsonWriter
+ + + + + + +

Constructors

+
+
+ + + + + + + + + + + + + + + + + + + +
NameSummary
JsonWriter()
JsonWriter(StringBuilder)
JsonWriter(TextWriter)
+
+
+ + + + +

Properties

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
IndentValueint +
+
LowerCasePropertiesbool +
+
PrettyPrintbool +
+
TextWriterTextWriter +
+
Validatebool +
+
+
+
+ + +

Methods

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
Reset()void +
+
ToString()string +
+
Write(bool)void +
+
Write(decimal)void +
+
Write(double)void +
+
Write(float)void +
+
Write(int)void +
+
Write(long)void +
+
Write(string)void +
+
Write(ulong)void +
+
WriteArrayEnd()void +
+
WriteArrayStart()void +
+
WriteObjectEnd()void +
+
WriteObjectStart()void +
+
WritePropertyName(string)void +
+
+
+
+ + + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/WrapperFactory/index.html b/api/LitJson/WrapperFactory/index.html new file mode 100644 index 0000000..ed5a4df --- /dev/null +++ b/api/LitJson/WrapperFactory/index.html @@ -0,0 +1,366 @@ + + + + + + + + + LitJSON - API - WrapperFactory Delegate + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

WrapperFactory Delegate

+
+
+ + + +
+
+
+
+
+ +
Namespace
+
LitJson
+ +
Interfaces
+
+
    +
  • ICloneable
  • +
  • ISerializable
  • +
+
+ +
Base Types
+
+
    +
  • object
  • +
  • Delegate
  • +
  • MulticastDelegate
  • +
+
+ + +
+
+
+
+ graph TD + Base0["MulticastDelegate"]-->Type + Base1["Delegate"]-->Base0 + Base2["object"]-->Base1 + Interface0["ICloneable"]-.->Type + Interface1["ISerializable"]-.->Type + Type["WrapperFactory"] +class Type type-node + +
+
+
+
+
+ +

Syntax

+
public delegate IJsonWrapper WrapperFactory() : MulticastDelegate, ICloneable, ISerializable
+ + + + + + + + + + + +

Operators

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameValueSummary
operator !=(Delegate, Delegate)bool +
+
Inherited from Delegate
+
operator !=(MulticastDelegate, MulticastDelegate)bool +
+
Inherited from MulticastDelegate
+
operator ==(Delegate, Delegate)bool +
+
Inherited from Delegate
+
operator ==(MulticastDelegate, MulticastDelegate)bool +
+
Inherited from MulticastDelegate
+
+
+
+ + + + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/LitJson/index.html b/api/LitJson/index.html new file mode 100644 index 0000000..f06881a --- /dev/null +++ b/api/LitJson/index.html @@ -0,0 +1,349 @@ + + + + + + + + + LitJSON - API - LitJson Namespace + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

LitJson Namespace

+
+
+ + + + +

Delegate Types

+
+
+ + + + + + + + + + + + + + + + + + + +
DelegateSummary
ExporterFunc<T>
ImporterFunc<TJson, TValue>
WrapperFactory
+
+
+ +

Class Types

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ClassSummary
JsonData
JsonException
JsonMapper
JsonMockWrapper
JsonReader
JsonWriter
+
+
+ +

Enum Types

+
+
+ + + + + + + + + + + + + + + +
EnumSummary
JsonToken
JsonType
+
+
+ +

Interface Types

+
+
+ + + + + + + + + + + +
InterfaceSummary
IJsonWrapper
+
+
+ + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/global/index.html b/api/global/index.html new file mode 100644 index 0000000..2155147 --- /dev/null +++ b/api/global/index.html @@ -0,0 +1,260 @@ + + + + + + + + + LitJSON - API - global Namespace + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

global Namespace

+
+
+ + + + +

Namespaces

+
+
+ + + + + + + + + + + +
NamespaceSummary
LitJson
+
+
+ + +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/api/index.html b/api/index.html new file mode 100644 index 0000000..762f7cb --- /dev/null +++ b/api/index.html @@ -0,0 +1,257 @@ + + + + + + + + + + + LitJSON - API + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

API

+
+
+ + +

Namespaces

+
+
+ + + + + + + + + + + + + + + +
NamespaceSummary
global
LitJson
+
+
+ +
+ +
+ + + + +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 0000000..074952a --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,21 @@ +# Build script +init: + - git config --global core.autocrlf true + +# Build script +build_script: + - ps: .\build.ps1 -Target=AppVeyor + +# Tests +test: off + +# Artifacts +artifacts: +# Static website + - path: output + +# Branches to build +branches: + # Whitelist + only: + - develop \ No newline at end of file diff --git a/assets/css/adminlte/AdminLTE.css b/assets/css/adminlte/AdminLTE.css new file mode 100644 index 0000000..405eebc --- /dev/null +++ b/assets/css/adminlte/AdminLTE.css @@ -0,0 +1,5502 @@ +@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic); +/*! + * AdminLTE v2.3.8 + * Author: Almsaeed Studio + * Website: Almsaeed Studio + * License: Open source - MIT + * Please visit http://opensource.org/licenses/MIT for more information +!*/ + +/* + * Core: General Layout Style + * ------------------------- + */ + +html, +body { + min-height: 100%; +} +.layout-boxed html, +.layout-boxed body { + height: 100%; +} +body { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + font-family: "Roboto", Helvetica, Arial, sans-serif; + font-weight: 400; + overflow-x: hidden; + overflow-y: auto; +} +/* Layout */ + +.wrapper { + min-height: 100%; + position: relative; + overflow: hidden; +} +.wrapper:before, +.wrapper:after { + content: " "; + display: table; +} +.wrapper:after { + clear: both; +} +.layout-boxed .wrapper { + max-width: 1250px; + margin: 0 auto; + min-height: 100%; + box-shadow: 0 0 8px rgba(0, 0, 0, 0.5); + position: relative; +} +.layout-boxed { + background: url('../img/boxed-bg.jpg') repeat fixed; +} +/* + * Content Wrapper - contains the main content + * ```.right-side has been deprecated as of v2.0.0 in favor of .content-wrapper ``` + */ + +.content-wrapper, +.right-side, +.main-footer { + -webkit-transition: -webkit-transform 0.3s ease-in-out, margin 0.3s ease-in-out; + -moz-transition: -moz-transform 0.3s ease-in-out, margin 0.3s ease-in-out; + -o-transition: -o-transform 0.3s ease-in-out, margin 0.3s ease-in-out; + transition: transform 0.3s ease-in-out, margin 0.3s ease-in-out; + margin-left: 230px; + z-index: 820; +} +.layout-top-nav .content-wrapper, +.layout-top-nav .right-side, +.layout-top-nav .main-footer { + margin-left: 0; +} +@media (max-width: 767px) { + .content-wrapper, + .right-side, + .main-footer { + margin-left: 0; + } +} +@media (min-width: 768px) { + .sidebar-collapse .content-wrapper, + .sidebar-collapse .right-side, + .sidebar-collapse .main-footer { + margin-left: 0; + } +} +@media (max-width: 767px) { + .sidebar-open .content-wrapper, + .sidebar-open .right-side, + .sidebar-open .main-footer { + -webkit-transform: translate(230px, 0); + -ms-transform: translate(230px, 0); + -o-transform: translate(230px, 0); + transform: translate(230px, 0); + } +} +.content-wrapper, +.right-side { + min-height: 100%; + background-color: #f4f4f4; + z-index: 800; +} +.main-footer { + background: #fff; + padding: 15px; + color: #444; + border-top: 1px solid #d2d6de; +} +/* Fixed layout */ + +.fixed .main-header, +.fixed .main-sidebar, +.fixed .left-side { + position: fixed; +} +.fixed .main-header { + top: 0; + right: 0; + left: 0; +} +.fixed .content-wrapper, +.fixed .right-side { + padding-top: 50px; +} +@media (max-width: 767px) { + .fixed .content-wrapper, + .fixed .right-side { + padding-top: 100px; + } +} +.fixed.layout-boxed .wrapper { + max-width: 100%; +} +body.hold-transition .content-wrapper, +body.hold-transition .right-side, +body.hold-transition .main-footer, +body.hold-transition .main-sidebar, +body.hold-transition .left-side, +body.hold-transition .main-header .navbar, +body.hold-transition .main-header .logo { + /* Fix for IE */ + + -webkit-transition: none; + -o-transition: none; + transition: none; +} +/* Content */ + +.content { + min-height: 250px; + padding: 15px; + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +/* H1 - H6 font */ + +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: "Roboto", Helvetica, Arial, sans-serif; +} +/* General Links */ + +a { + color: #337ab7; +} +a:hover, +a:active, +a:focus { + outline: none; + text-decoration: none; + color: #23527c; +} +/* Page Header */ + +.page-header { + margin: 10px 0 20px 0; + font-size: 22px; +} +.page-header > small { + color: #666; + display: block; + margin-top: 5px; +} +/* + * Component: Main Header + * ---------------------- + */ + +.main-header { + position: relative; + max-height: 100px; + z-index: 1030; +} +.main-header .navbar { + -webkit-transition: margin-left 0.3s ease-in-out; + -o-transition: margin-left 0.3s ease-in-out; + transition: margin-left 0.3s ease-in-out; + margin-bottom: 0; + margin-left: 230px; + border: none; + min-height: 50px; + border-radius: 0; +} +.layout-top-nav .main-header .navbar { + margin-left: 0; +} +.main-header #navbar-search-input.form-control { + background: rgba(255, 255, 255, 0.2); + border-color: transparent; +} +.main-header #navbar-search-input.form-control:focus, +.main-header #navbar-search-input.form-control:active { + border-color: rgba(0, 0, 0, 0.1); + background: rgba(255, 255, 255, 0.9); +} +.main-header #navbar-search-input.form-control::-moz-placeholder { + color: #ccc; + opacity: 1; +} +.main-header #navbar-search-input.form-control:-ms-input-placeholder { + color: #ccc; +} +.main-header #navbar-search-input.form-control::-webkit-input-placeholder { + color: #ccc; +} +.main-header .navbar-custom-menu, +.main-header .navbar-right { + float: right; +} +@media (max-width: 991px) { + .main-header .navbar-custom-menu a, + .main-header .navbar-right a { + color: inherit; + background: transparent; + } +} +@media (max-width: 767px) { + .main-header .navbar-right { + float: none; + } + .navbar-collapse .main-header .navbar-right { + margin: 7.5px -15px; + } + .main-header .navbar-right > li { + color: inherit; + border: 0; + } +} +.main-header .sidebar-toggle { + float: left; + background-color: transparent; + background-image: none; + padding: 15px 15px; + font-family: fontAwesome; +} +.main-header .sidebar-toggle:before { + content: "\f0c9"; +} +.main-header .sidebar-toggle:hover { + color: #fff; +} +.main-header .sidebar-toggle:focus, +.main-header .sidebar-toggle:active { + background: transparent; +} +.main-header .sidebar-toggle .icon-bar { + display: none; +} +.main-header .navbar .nav > li.user > a > .fa, +.main-header .navbar .nav > li.user > a > .glyphicon, +.main-header .navbar .nav > li.user > a > .ion { + margin-right: 5px; +} +.main-header .navbar .nav > li > a > .label { + position: absolute; + top: 9px; + right: 7px; + text-align: center; + font-size: 9px; + padding: 2px 3px; + line-height: 0.9; +} +.main-header .logo { + -webkit-transition: width 0.3s ease-in-out; + -o-transition: width 0.3s ease-in-out; + transition: width 0.3s ease-in-out; + display: block; + float: left; + height: 50px; + font-size: 20px; + line-height: 50px; + text-align: center; + width: 230px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + padding: 0 15px; + font-weight: 300; + overflow: hidden; +} +.main-header .logo .logo-lg { + display: block; +} +.main-header .logo .logo-mini { + display: none; +} +.main-header .navbar-brand { + color: #fff; +} +.content-header { + position: relative; + padding: 15px 15px 0 15px; +} +.content-header > h1 { + margin: 0; + font-size: 24px; +} +.content-header > h1 > small { + font-size: 15px; + display: inline-block; + padding-left: 4px; + font-weight: 300; +} +.content-header > .breadcrumb { + float: right; + background: transparent; + margin-top: 0; + margin-bottom: 0; + font-size: 12px; + padding: 7px 5px; + position: absolute; + top: 15px; + right: 10px; + border-radius: 2px; +} +.content-header > .breadcrumb > li > a { + color: #444; + text-decoration: none; + display: inline-block; +} +.content-header > .breadcrumb > li > a > .fa, +.content-header > .breadcrumb > li > a > .glyphicon, +.content-header > .breadcrumb > li > a > .ion { + margin-right: 5px; +} +.content-header > .breadcrumb > li + li:before { + content: '>\00a0'; +} +@media (max-width: 991px) { + .content-header > .breadcrumb { + position: relative; + margin-top: 5px; + top: 0; + right: 0; + float: none; + background: #d2d6de; + padding-left: 10px; + } + .content-header > .breadcrumb li:before { + color: #97a0b3; + } +} +.navbar-toggle { + color: #fff; + border: 0; + margin: 0; + padding: 15px 15px; +} +@media (max-width: 991px) { + .navbar-custom-menu .navbar-nav > li { + float: left; + } + .navbar-custom-menu .navbar-nav { + margin: 0; + float: left; + } + .navbar-custom-menu .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + line-height: 20px; + } +} +@media (max-width: 767px) { + .main-header { + position: relative; + } + .main-header .logo, + .main-header .navbar { + width: 100%; + float: none; + } + .main-header .navbar { + margin: 0; + } + .main-header .navbar-custom-menu { + float: right; + } +} +@media (max-width: 991px) { + .navbar-collapse.pull-left { + float: none !important; + } + .navbar-collapse.pull-left + .navbar-custom-menu { + display: block; + position: absolute; + top: 0; + right: 40px; + } +} +/* + * Component: Sidebar + * ------------------ + */ + +.main-sidebar, +.left-side { + position: absolute; + top: 0; + left: 0; + padding-top: 50px; + min-height: 100%; + width: 230px; + z-index: 810; + -webkit-transition: -webkit-transform 0.3s ease-in-out, width 0.3s ease-in-out; + -moz-transition: -moz-transform 0.3s ease-in-out, width 0.3s ease-in-out; + -o-transition: -o-transform 0.3s ease-in-out, width 0.3s ease-in-out; + transition: transform 0.3s ease-in-out, width 0.3s ease-in-out; +} +@media (max-width: 767px) { + .main-sidebar, + .left-side { + padding-top: 100px; + } +} +@media (max-width: 767px) { + .main-sidebar, + .left-side { + -webkit-transform: translate(-230px, 0); + -ms-transform: translate(-230px, 0); + -o-transform: translate(-230px, 0); + transform: translate(-230px, 0); + } +} +@media (min-width: 768px) { + .sidebar-collapse .main-sidebar, + .sidebar-collapse .left-side { + -webkit-transform: translate(-230px, 0); + -ms-transform: translate(-230px, 0); + -o-transform: translate(-230px, 0); + transform: translate(-230px, 0); + } +} +@media (max-width: 767px) { + .sidebar-open .main-sidebar, + .sidebar-open .left-side { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); + } +} +.sidebar { + padding-bottom: 10px; +} +.sidebar-form input:focus { + border-color: transparent; +} +.user-panel { + position: relative; + width: 100%; + padding: 10px; + overflow: hidden; +} +.user-panel:before, +.user-panel:after { + content: " "; + display: table; +} +.user-panel:after { + clear: both; +} +.user-panel > .image > img { + width: 100%; + max-width: 45px; + height: auto; +} +.user-panel > .info { + padding: 5px 5px 5px 15px; + line-height: 1; + position: absolute; + left: 55px; +} +.user-panel > .info > p { + font-weight: 600; + margin-bottom: 9px; +} +.user-panel > .info > a { + text-decoration: none; + padding-right: 5px; + margin-top: 3px; + font-size: 11px; +} +.user-panel > .info > a > .fa, +.user-panel > .info > a > .ion, +.user-panel > .info > a > .glyphicon { + margin-right: 3px; +} +.sidebar-menu { + list-style: none; + margin: 0; + padding: 0; +} +.sidebar-menu > li { + position: relative; + margin: 0; + padding: 0; +} +.sidebar-menu > li > a { + padding: 12px 5px 12px 15px; + display: block; +} +.sidebar-menu > li > a > .fa, +.sidebar-menu > li > a > .glyphicon, +.sidebar-menu > li > a > .ion { + width: 20px; +} +.sidebar-menu > li .label, +.sidebar-menu > li .badge { + margin-right: 5px; +} +.sidebar-menu > li .badge { + margin-top: 3px; +} +.sidebar-menu li.header { + padding: 10px 25px 10px 15px; + font-size: 12px; +} +.sidebar-menu li > a > .fa-angle-left, +.sidebar-menu li > a > .pull-right-container > .fa-angle-left { + width: auto; + height: auto; + padding: 0; + margin-right: 10px; +} +.sidebar-menu li > a > .fa-angle-left { + position: absolute; + top: 50%; + right: 10px; + margin-top: -8px; +} +.sidebar-menu li.active > a > .fa-angle-left, +.sidebar-menu li.active > a > .pull-right-container > .fa-angle-left { + -webkit-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + -o-transform: rotate(-90deg); + transform: rotate(-90deg); +} +.sidebar-menu li.active > .treeview-menu { + display: block; +} +.sidebar-menu .treeview-menu { + display: none; + list-style: none; + padding: 0; + margin: 0; + padding-left: 5px; +} +.sidebar-menu .treeview-menu .treeview-menu { + padding-left: 20px; +} +.sidebar-menu .treeview-menu > li { + margin: 0; +} +.sidebar-menu .treeview-menu > li > a { + padding: 5px 5px 5px 15px; + display: block; + font-size: 14px; +} +.sidebar-menu .treeview-menu > li > a > .fa, +.sidebar-menu .treeview-menu > li > a > .glyphicon, +.sidebar-menu .treeview-menu > li > a > .ion { + width: 20px; +} +.sidebar-menu .treeview-menu > li > a > .pull-right-container > .fa-angle-left, +.sidebar-menu .treeview-menu > li > a > .pull-right-container > .fa-angle-down, +.sidebar-menu .treeview-menu > li > a > .fa-angle-left, +.sidebar-menu .treeview-menu > li > a > .fa-angle-down { + width: auto; +} +/* + * Component: Sidebar Mini + */ + +@media (min-width: 768px) { + .sidebar-mini.sidebar-collapse .content-wrapper, + .sidebar-mini.sidebar-collapse .right-side, + .sidebar-mini.sidebar-collapse .main-footer { + margin-left: 50px !important; + z-index: 840; + } + .sidebar-mini.sidebar-collapse .main-sidebar { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); + width: 50px !important; + z-index: 850; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li { + position: relative; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a { + margin-right: 0; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > span { + border-top-right-radius: 4px; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li:not(.treeview) > a > span { + border-bottom-right-radius: 4px; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { + padding-top: 5px; + padding-bottom: 5px; + border-bottom-right-radius: 4px; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span:not(.pull-right), + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > .treeview-menu { + display: block !important; + position: absolute; + width: 180px; + left: 50px; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span { + top: 0; + margin-left: -3px; + padding: 12px 5px 12px 20px; + background-color: inherit; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container { + float: right; + width: auto !important; + left: 200px !important; + top: 10px !important; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container > .label:not(:first-of-type) { + display: none; + } + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > .treeview-menu { + top: 44px; + margin-left: 0; + } + .sidebar-mini.sidebar-collapse .main-sidebar .user-panel > .info, + .sidebar-mini.sidebar-collapse .sidebar-form, + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > span, + .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu, + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > .pull-right, + .sidebar-mini.sidebar-collapse .sidebar-menu li.header { + display: none !important; + -webkit-transform: translateZ(0); + } + .sidebar-mini.sidebar-collapse .main-header .logo { + width: 50px; + } + .sidebar-mini.sidebar-collapse .main-header .logo > .logo-mini { + display: block; + margin-left: -15px; + margin-right: -15px; + font-size: 18px; + } + .sidebar-mini.sidebar-collapse .main-header .logo > .logo-lg { + display: none; + } + .sidebar-mini.sidebar-collapse .main-header .navbar { + margin-left: 50px; + } +} +.sidebar-menu, +.main-sidebar .user-panel, +.sidebar-menu > li.header { + white-space: nowrap; + overflow: hidden; +} +.sidebar-menu:hover { + overflow: visible; +} +.sidebar-form, +.sidebar-menu > li.header { + overflow: hidden; + text-overflow: clip; +} +.sidebar-menu li > a { + position: relative; +} +.sidebar-menu li > a > .pull-right-container { + position: absolute; + right: 10px; + top: 50%; + margin-top: -7px; +} +/* + * Component: Control sidebar. By default, this is the right sidebar. + */ + +.control-sidebar-bg { + position: fixed; + z-index: 1000; + bottom: 0; +} +.control-sidebar-bg, +.control-sidebar { + top: 0; + right: -230px; + width: 230px; + -webkit-transition: right 0.3s ease-in-out; + -o-transition: right 0.3s ease-in-out; + transition: right 0.3s ease-in-out; +} +.control-sidebar { + position: absolute; + padding-top: 50px; + z-index: 1010; +} +@media (max-width: 768px) { + .control-sidebar { + padding-top: 100px; + } +} +.control-sidebar > .tab-content { + padding: 10px 15px; +} +.control-sidebar.control-sidebar-open, +.control-sidebar.control-sidebar-open + .control-sidebar-bg { + right: 0; +} +.control-sidebar-open .control-sidebar-bg, +.control-sidebar-open .control-sidebar { + right: 0; +} +@media (min-width: 768px) { + .control-sidebar-open .content-wrapper, + .control-sidebar-open .right-side, + .control-sidebar-open .main-footer { + margin-right: 230px; + } +} +.nav-tabs.control-sidebar-tabs > li:first-of-type > a, +.nav-tabs.control-sidebar-tabs > li:first-of-type > a:hover, +.nav-tabs.control-sidebar-tabs > li:first-of-type > a:focus { + border-left-width: 0; +} +.nav-tabs.control-sidebar-tabs > li > a { + border-radius: 0; +} +.nav-tabs.control-sidebar-tabs > li > a, +.nav-tabs.control-sidebar-tabs > li > a:hover { + border-top: none; + border-right: none; + border-left: 1px solid transparent; + border-bottom: 1px solid transparent; +} +.nav-tabs.control-sidebar-tabs > li > a .icon { + font-size: 16px; +} +.nav-tabs.control-sidebar-tabs > li.active > a, +.nav-tabs.control-sidebar-tabs > li.active > a:hover, +.nav-tabs.control-sidebar-tabs > li.active > a:focus, +.nav-tabs.control-sidebar-tabs > li.active > a:active { + border-top: none; + border-right: none; + border-bottom: none; +} +@media (max-width: 768px) { + .nav-tabs.control-sidebar-tabs { + display: table; + } + .nav-tabs.control-sidebar-tabs > li { + display: table-cell; + } +} +.control-sidebar-heading { + font-weight: 400; + font-size: 16px; + padding: 10px 0; + margin-bottom: 10px; +} +.control-sidebar-subheading { + display: block; + font-weight: 400; + font-size: 14px; +} +.control-sidebar-menu { + list-style: none; + padding: 0; + margin: 0 -15px; +} +.control-sidebar-menu > li > a { + display: block; + padding: 10px 15px; +} +.control-sidebar-menu > li > a:before, +.control-sidebar-menu > li > a:after { + content: " "; + display: table; +} +.control-sidebar-menu > li > a:after { + clear: both; +} +.control-sidebar-menu > li > a > .control-sidebar-subheading { + margin-top: 0; +} +.control-sidebar-menu .menu-icon { + float: left; + width: 35px; + height: 35px; + border-radius: 50%; + text-align: center; + line-height: 35px; +} +.control-sidebar-menu .menu-info { + margin-left: 45px; + margin-top: 3px; +} +.control-sidebar-menu .menu-info > .control-sidebar-subheading { + margin: 0; +} +.control-sidebar-menu .menu-info > p { + margin: 0; + font-size: 11px; +} +.control-sidebar-menu .progress { + margin: 0; +} +.control-sidebar-dark { + color: #b8c7ce; +} +.control-sidebar-dark, +.control-sidebar-dark + .control-sidebar-bg { + background: #222d32; +} +.control-sidebar-dark .nav-tabs.control-sidebar-tabs { + border-bottom: #1c2529; +} +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a { + background: #181f23; + color: #b8c7ce; +} +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:hover, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:focus { + border-left-color: #141a1d; + border-bottom-color: #141a1d; +} +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:hover, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:focus, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:active { + background: #1c2529; +} +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:hover { + color: #fff; +} +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a:hover, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a:focus, +.control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a:active { + background: #222d32; + color: #fff; +} +.control-sidebar-dark .control-sidebar-heading, +.control-sidebar-dark .control-sidebar-subheading { + color: #fff; +} +.control-sidebar-dark .control-sidebar-menu > li > a:hover { + background: #1e282c; +} +.control-sidebar-dark .control-sidebar-menu > li > a .menu-info > p { + color: #b8c7ce; +} +.control-sidebar-light { + color: #5e5e5e; +} +.control-sidebar-light, +.control-sidebar-light + .control-sidebar-bg { + background: #f9fafc; + border-left: 1px solid #d2d6de; +} +.control-sidebar-light .nav-tabs.control-sidebar-tabs { + border-bottom: #d2d6de; +} +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a { + background: #e8ecf4; + color: #444; +} +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:hover, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:focus { + border-left-color: #d2d6de; + border-bottom-color: #d2d6de; +} +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:hover, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:focus, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:active { + background: #eff1f7; +} +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a:hover, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a:focus, +.control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a:active { + background: #f9fafc; + color: #111; +} +.control-sidebar-light .control-sidebar-heading, +.control-sidebar-light .control-sidebar-subheading { + color: #111; +} +.control-sidebar-light .control-sidebar-menu { + margin-left: -14px; +} +.control-sidebar-light .control-sidebar-menu > li > a:hover { + background: #f4f4f5; +} +.control-sidebar-light .control-sidebar-menu > li > a .menu-info > p { + color: #5e5e5e; +} +/* + * Component: Dropdown menus + * ------------------------- + */ + +/*Dropdowns in general*/ + +.dropdown-menu { + box-shadow: none; + border-color: #eee; +} +.dropdown-menu > li > a { + color: #777; +} +.dropdown-menu > li > a > .glyphicon, +.dropdown-menu > li > a > .fa, +.dropdown-menu > li > a > .ion { + margin-right: 10px; +} +.dropdown-menu > li > a:hover { + background-color: #e1e3e9; + color: #333; +} +.dropdown-menu > .divider { + background-color: #eee; +} +.navbar-nav > .notifications-menu > .dropdown-menu, +.navbar-nav > .messages-menu > .dropdown-menu, +.navbar-nav > .tasks-menu > .dropdown-menu { + width: 280px; + padding: 0 0 0 0; + margin: 0; + top: 100%; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li, +.navbar-nav > .messages-menu > .dropdown-menu > li, +.navbar-nav > .tasks-menu > .dropdown-menu > li { + position: relative; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li.header, +.navbar-nav > .messages-menu > .dropdown-menu > li.header, +.navbar-nav > .tasks-menu > .dropdown-menu > li.header { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + background-color: #ffffff; + padding: 7px 10px; + border-bottom: 1px solid #f4f4f4; + color: #444444; + font-size: 14px; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a, +.navbar-nav > .messages-menu > .dropdown-menu > li.footer > a, +.navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; + font-size: 12px; + background-color: #fff; + padding: 7px 10px; + border-bottom: 1px solid #eeeeee; + color: #444 !important; + text-align: center; +} +@media (max-width: 991px) { + .navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a, + .navbar-nav > .messages-menu > .dropdown-menu > li.footer > a, + .navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a { + background: #fff !important; + color: #444 !important; + } +} +.navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a:hover, +.navbar-nav > .messages-menu > .dropdown-menu > li.footer > a:hover, +.navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a:hover { + text-decoration: none; + font-weight: normal; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu, +.navbar-nav > .messages-menu > .dropdown-menu > li .menu, +.navbar-nav > .tasks-menu > .dropdown-menu > li .menu { + max-height: 200px; + margin: 0; + padding: 0; + list-style: none; + overflow-x: hidden; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a, +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a, +.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a { + display: block; + white-space: nowrap; + /* Prevent text from breaking */ + border-bottom: 1px solid #f4f4f4; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a:hover, +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:hover, +.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a:hover { + background: #f4f4f4; + text-decoration: none; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a { + color: #444444; + overflow: hidden; + text-overflow: ellipsis; + padding: 10px; +} +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon, +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa, +.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion { + width: 20px; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a { + margin: 0; + padding: 10px 10px; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > div > img { + margin: auto 10px auto auto; + width: 40px; + height: 40px; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 { + padding: 0; + margin: 0 0 0 45px; + color: #444444; + font-size: 15px; + position: relative; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 > small { + color: #999999; + font-size: 10px; + position: absolute; + top: 0; + right: 0; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > p { + margin: 0 0 0 45px; + font-size: 12px; + color: #888888; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:before, +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:after { + content: " "; + display: table; +} +.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:after { + clear: both; +} +.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a { + padding: 10px; +} +.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a > h3 { + font-size: 14px; + padding: 0; + margin: 0 0 10px 0; + color: #666666; +} +.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a > .progress { + padding: 0; + margin: 0; +} +.navbar-nav > .user-menu > .dropdown-menu { + border-top-right-radius: 0; + border-top-left-radius: 0; + padding: 1px 0 0 0; + border-top-width: 0; + width: 280px; +} +.navbar-nav > .user-menu > .dropdown-menu, +.navbar-nav > .user-menu > .dropdown-menu > .user-body { + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.navbar-nav > .user-menu > .dropdown-menu > li.user-header { + height: 175px; + padding: 10px; + text-align: center; +} +.navbar-nav > .user-menu > .dropdown-menu > li.user-header > img { + z-index: 5; + height: 90px; + width: 90px; + border: 3px solid; + border-color: transparent; + border-color: rgba(255, 255, 255, 0.2); +} +.navbar-nav > .user-menu > .dropdown-menu > li.user-header > p { + z-index: 5; + color: #fff; + color: rgba(255, 255, 255, 0.8); + font-size: 17px; + margin-top: 10px; +} +.navbar-nav > .user-menu > .dropdown-menu > li.user-header > p > small { + display: block; + font-size: 12px; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-body { + padding: 15px; + border-bottom: 1px solid #f4f4f4; + border-top: 1px solid #dddddd; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-body:before, +.navbar-nav > .user-menu > .dropdown-menu > .user-body:after { + content: " "; + display: table; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-body:after { + clear: both; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-body a { + color: #444 !important; +} +@media (max-width: 991px) { + .navbar-nav > .user-menu > .dropdown-menu > .user-body a { + background: #fff !important; + color: #444 !important; + } +} +.navbar-nav > .user-menu > .dropdown-menu > .user-footer { + background-color: #f9f9f9; + padding: 10px; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-footer:before, +.navbar-nav > .user-menu > .dropdown-menu > .user-footer:after { + content: " "; + display: table; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-footer:after { + clear: both; +} +.navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-default { + color: #666666; +} +@media (max-width: 991px) { + .navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-default:hover { + background-color: #f9f9f9; + } +} +.navbar-nav > .user-menu .user-image { + float: left; + width: 25px; + height: 25px; + border-radius: 50%; + margin-right: 10px; + margin-top: -2px; +} +@media (max-width: 767px) { + .navbar-nav > .user-menu .user-image { + float: none; + margin-right: 0; + margin-top: -8px; + line-height: 10px; + } +} +/* Add fade animation to dropdown menus by appending + the class .animated-dropdown-menu to the .dropdown-menu ul (or ol)*/ + +.open:not(.dropup) > .animated-dropdown-menu { + backface-visibility: visible !important; + -webkit-animation: flipInX 0.7s both; + -o-animation: flipInX 0.7s both; + animation: flipInX 0.7s both; +} +@keyframes flipInX { + 0% { + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transition-timing-function: ease-in; + opacity: 0; + } + 40% { + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transition-timing-function: ease-in; + } + 60% { + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + 80% { + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + 100% { + transform: perspective(400px); + } +} +@-webkit-keyframes flipInX { + 0% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + -webkit-transition-timing-function: ease-in; + opacity: 0; + } + 40% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + -webkit-transition-timing-function: ease-in; + } + 60% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + 80% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + 100% { + -webkit-transform: perspective(400px); + } +} +/* Fix dropdown menu in navbars */ + +.navbar-custom-menu > .navbar-nav > li { + position: relative; +} +.navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + position: absolute; + right: 0; + left: auto; +} +@media (max-width: 991px) { + .navbar-custom-menu > .navbar-nav { + float: right; + } + .navbar-custom-menu > .navbar-nav > li { + position: static; + } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + position: absolute; + right: 5%; + left: auto; + border: 1px solid #ddd; + background: #fff; + } +} +/* + * Component: Form + * --------------- + */ + +.form-control { + border-radius: 0; + box-shadow: none; + border-color: #d2d6de; +} +.form-control:focus { + border-color: #337ab7; + box-shadow: none; +} +.form-control::-moz-placeholder, +.form-control:-ms-input-placeholder, +.form-control::-webkit-input-placeholder { + color: #bbb; + opacity: 1; +} +.form-control:not(select) { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-group.has-success label { + color: #00a65a; +} +.form-group.has-success .form-control, +.form-group.has-success .input-group-addon { + border-color: #00a65a; + box-shadow: none; +} +.form-group.has-success .help-block { + color: #00a65a; +} +.form-group.has-warning label { + color: #f39c12; +} +.form-group.has-warning .form-control, +.form-group.has-warning .input-group-addon { + border-color: #f39c12; + box-shadow: none; +} +.form-group.has-warning .help-block { + color: #f39c12; +} +.form-group.has-error label { + color: #dd4b39; +} +.form-group.has-error .form-control, +.form-group.has-error .input-group-addon { + border-color: #dd4b39; + box-shadow: none; +} +.form-group.has-error .help-block { + color: #dd4b39; +} +/* Input group */ + +.input-group .input-group-addon { + border-radius: 0; + border-color: #d2d6de; + background-color: #fff; +} +/* button groups */ + +.btn-group-vertical .btn.btn-flat:first-of-type, +.btn-group-vertical .btn.btn-flat:last-of-type { + border-radius: 0; +} +.icheck > label { + padding-left: 0; +} +/* support Font Awesome icons in form-control */ + +.form-control-feedback.fa { + line-height: 34px; +} +.input-lg + .form-control-feedback.fa, +.input-group-lg + .form-control-feedback.fa, +.form-group-lg .form-control + .form-control-feedback.fa { + line-height: 46px; +} +.input-sm + .form-control-feedback.fa, +.input-group-sm + .form-control-feedback.fa, +.form-group-sm .form-control + .form-control-feedback.fa { + line-height: 30px; +} +/* + * Component: Progress Bar + * ----------------------- + */ + +.progress, +.progress > .progress-bar { + -webkit-box-shadow: none; + box-shadow: none; +} +.progress, +.progress > .progress-bar, +.progress .progress-bar, +.progress > .progress-bar .progress-bar { + border-radius: 1px; +} +/* size variation */ + +.progress.sm, +.progress-sm { + height: 10px; +} +.progress.sm, +.progress-sm, +.progress.sm .progress-bar, +.progress-sm .progress-bar { + border-radius: 1px; +} +.progress.xs, +.progress-xs { + height: 7px; +} +.progress.xs, +.progress-xs, +.progress.xs .progress-bar, +.progress-xs .progress-bar { + border-radius: 1px; +} +.progress.xxs, +.progress-xxs { + height: 3px; +} +.progress.xxs, +.progress-xxs, +.progress.xxs .progress-bar, +.progress-xxs .progress-bar { + border-radius: 1px; +} +/* Vertical bars */ + +.progress.vertical { + position: relative; + width: 30px; + height: 200px; + display: inline-block; + margin-right: 10px; +} +.progress.vertical > .progress-bar { + width: 100%; + position: absolute; + bottom: 0; +} +.progress.vertical.sm, +.progress.vertical.progress-sm { + width: 20px; +} +.progress.vertical.xs, +.progress.vertical.progress-xs { + width: 10px; +} +.progress.vertical.xxs, +.progress.vertical.progress-xxs { + width: 3px; +} +.progress-group .progress-text { + font-weight: 600; +} +.progress-group .progress-number { + float: right; +} +/* Remove margins from progress bars when put in a table */ + +.table tr > td .progress { + margin: 0; +} +.progress-bar-light-blue, +.progress-bar-primary { + background-color: #337ab7; +} +.progress-striped .progress-bar-light-blue, +.progress-striped .progress-bar-primary { + 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); + 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); + 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); +} +.progress-bar-green, +.progress-bar-success { + background-color: #00a65a; +} +.progress-striped .progress-bar-green, +.progress-striped .progress-bar-success { + 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); + 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); + 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); +} +.progress-bar-aqua, +.progress-bar-info { + background-color: #00c0ef; +} +.progress-striped .progress-bar-aqua, +.progress-striped .progress-bar-info { + 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); + 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); + 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); +} +.progress-bar-yellow, +.progress-bar-warning { + background-color: #f39c12; +} +.progress-striped .progress-bar-yellow, +.progress-striped .progress-bar-warning { + 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); + 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); + 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); +} +.progress-bar-red, +.progress-bar-danger { + background-color: #dd4b39; +} +.progress-striped .progress-bar-red, +.progress-striped .progress-bar-danger { + 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); + 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); + 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); +} +/* + * Component: Small Box + * -------------------- + */ + +.small-box { + border-radius: 2px; + position: relative; + display: block; + margin-bottom: 20px; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); +} +.small-box > .inner { + padding: 10px; +} +.small-box > .small-box-footer { + position: relative; + text-align: center; + padding: 3px 0; + color: #fff; + color: rgba(255, 255, 255, 0.8); + display: block; + z-index: 10; + background: rgba(0, 0, 0, 0.1); + text-decoration: none; +} +.small-box > .small-box-footer:hover { + color: #fff; + background: rgba(0, 0, 0, 0.15); +} +.small-box h3 { + font-size: 38px; + font-weight: bold; + margin: 0 0 10px 0; + white-space: nowrap; + padding: 0; +} +.small-box p { + font-size: 15px; +} +.small-box p > small { + display: block; + color: #f9f9f9; + font-size: 13px; + margin-top: 5px; +} +.small-box h3, +.small-box p { + z-index: 5; +} +.small-box .icon { + -webkit-transition: all 0.3s linear; + -o-transition: all 0.3s linear; + transition: all 0.3s linear; + position: absolute; + top: -10px; + right: 10px; + z-index: 0; + font-size: 90px; + color: rgba(0, 0, 0, 0.15); +} +.small-box:hover { + text-decoration: none; + color: #f9f9f9; +} +.small-box:hover .icon { + font-size: 95px; +} +@media (max-width: 767px) { + .small-box { + text-align: center; + } + .small-box .icon { + display: none; + } + .small-box p { + font-size: 12px; + } +} +/* + * Component: Box + * -------------- + */ + +.box { + position: relative; + border-radius: 3px; + background: #ffffff; + border-top: 3px solid #d2d6de; + margin-bottom: 20px; + width: 100%; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); +} +.box.box-primary { + border-top-color: #337ab7; +} +.box.box-info { + border-top-color: #00c0ef; +} +.box.box-danger { + border-top-color: #dd4b39; +} +.box.box-warning { + border-top-color: #f39c12; +} +.box.box-success { + border-top-color: #00a65a; +} +.box.box-default { + border-top-color: #d2d6de; +} +.box.collapsed-box .box-body, +.box.collapsed-box .box-footer { + display: none; +} +.box .nav-stacked > li { + border-bottom: 1px solid #f4f4f4; + margin: 0; +} +.box .nav-stacked > li:last-of-type { + border-bottom: none; +} +.box.height-control .box-body { + max-height: 300px; + overflow: auto; +} +.box .border-right { + border-right: 1px solid #f4f4f4; +} +.box .border-left { + border-left: 1px solid #f4f4f4; +} +.box.box-solid { + border-top: 0; +} +.box.box-solid > .box-header .btn.btn-default { + background: transparent; +} +.box.box-solid > .box-header .btn:hover, +.box.box-solid > .box-header a:hover { + background: rgba(0, 0, 0, 0.1); +} +.box.box-solid.box-default { + border: 1px solid #d2d6de; +} +.box.box-solid.box-default > .box-header { + color: #444; + background: #d2d6de; + background-color: #d2d6de; +} +.box.box-solid.box-default > .box-header a, +.box.box-solid.box-default > .box-header .btn { + color: #444; +} +.box.box-solid.box-primary { + border: 1px solid #337ab7; +} +.box.box-solid.box-primary > .box-header { + color: #fff; + background: #337ab7; + background-color: #337ab7; +} +.box.box-solid.box-primary > .box-header a, +.box.box-solid.box-primary > .box-header .btn { + color: #fff; +} +.box.box-solid.box-info { + border: 1px solid #00c0ef; +} +.box.box-solid.box-info > .box-header { + color: #fff; + background: #00c0ef; + background-color: #00c0ef; +} +.box.box-solid.box-info > .box-header a, +.box.box-solid.box-info > .box-header .btn { + color: #fff; +} +.box.box-solid.box-danger { + border: 1px solid #dd4b39; +} +.box.box-solid.box-danger > .box-header { + color: #fff; + background: #dd4b39; + background-color: #dd4b39; +} +.box.box-solid.box-danger > .box-header a, +.box.box-solid.box-danger > .box-header .btn { + color: #fff; +} +.box.box-solid.box-warning { + border: 1px solid #f39c12; +} +.box.box-solid.box-warning > .box-header { + color: #fff; + background: #f39c12; + background-color: #f39c12; +} +.box.box-solid.box-warning > .box-header a, +.box.box-solid.box-warning > .box-header .btn { + color: #fff; +} +.box.box-solid.box-success { + border: 1px solid #00a65a; +} +.box.box-solid.box-success > .box-header { + color: #fff; + background: #00a65a; + background-color: #00a65a; +} +.box.box-solid.box-success > .box-header a, +.box.box-solid.box-success > .box-header .btn { + color: #fff; +} +.box.box-solid > .box-header > .box-tools .btn { + border: 0; + box-shadow: none; +} +.box.box-solid[class*='bg'] > .box-header { + color: #fff; +} +.box .box-group > .box { + margin-bottom: 5px; +} +.box .knob-label { + text-align: center; + color: #333; + font-weight: 100; + font-size: 12px; + margin-bottom: 0.3em; +} +.box > .overlay, +.overlay-wrapper > .overlay, +.box > .loading-img, +.overlay-wrapper > .loading-img { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} +.box .overlay, +.overlay-wrapper .overlay { + z-index: 50; + background: rgba(255, 255, 255, 0.7); + border-radius: 3px; +} +.box .overlay > .fa, +.overlay-wrapper .overlay > .fa { + position: absolute; + top: 50%; + left: 50%; + margin-left: -15px; + margin-top: -15px; + color: #000; + font-size: 30px; +} +.box .overlay.dark, +.overlay-wrapper .overlay.dark { + background: rgba(0, 0, 0, 0.5); +} +.box-header:before, +.box-body:before, +.box-footer:before, +.box-header:after, +.box-body:after, +.box-footer:after { + content: " "; + display: table; +} +.box-header:after, +.box-body:after, +.box-footer:after { + clear: both; +} +.box-header { + color: #444; + display: block; + padding: 10px; + position: relative; +} +.box-header.with-border { + border-bottom: 1px solid #f4f4f4; +} +.collapsed-box .box-header.with-border { + border-bottom: none; +} +.box-header > .fa, +.box-header > .glyphicon, +.box-header > .ion, +.box-header .box-title { + display: inline-block; + font-size: 18px; + margin: 0; + line-height: 1; +} +.box-header > .fa, +.box-header > .glyphicon, +.box-header > .ion { + margin-right: 5px; +} +.box-header > .box-tools { + position: absolute; + right: 10px; + top: 5px; +} +.box-header > .box-tools [data-toggle="tooltip"] { + position: relative; +} +.box-header > .box-tools.pull-right .dropdown-menu { + right: 0; + left: auto; +} +.btn-box-tool { + padding: 5px; + font-size: 12px; + background: transparent; + color: #97a0b3; +} +.open .btn-box-tool, +.btn-box-tool:hover { + color: #606c84; +} +.btn-box-tool.btn:active { + box-shadow: none; +} +.box-body { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + padding: 10px; +} +.no-header .box-body { + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.box-body > .table { + margin-bottom: 0; +} +.box-body .fc { + margin-top: 5px; +} +.box-body .full-width-chart { + margin: -19px; +} +.box-body.no-padding .full-width-chart { + margin: -9px; +} +.box-body .box-pane { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 3px; +} +.box-body .box-pane-right { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 0; +} +.box-footer { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + border-top: 1px solid #f4f4f4; + padding: 10px; + background-color: #fff; +} +.chart-legend { + margin: 10px 0; +} +@media (max-width: 991px) { + .chart-legend > li { + float: left; + margin-right: 10px; + } +} +.box-comments { + background: #f7f7f7; +} +.box-comments .box-comment { + padding: 8px 0; + border-bottom: 1px solid #eee; +} +.box-comments .box-comment:before, +.box-comments .box-comment:after { + content: " "; + display: table; +} +.box-comments .box-comment:after { + clear: both; +} +.box-comments .box-comment:last-of-type { + border-bottom: 0; +} +.box-comments .box-comment:first-of-type { + padding-top: 0; +} +.box-comments .box-comment img { + float: left; +} +.box-comments .comment-text { + margin-left: 40px; + color: #555; +} +.box-comments .username { + color: #444; + display: block; + font-weight: 600; +} +.box-comments .text-muted { + font-weight: 400; + font-size: 12px; +} +/* Widget: TODO LIST */ + +.todo-list { + margin: 0; + padding: 0; + list-style: none; + overflow: auto; +} +.todo-list > li { + border-radius: 2px; + padding: 10px; + background: #f4f4f4; + margin-bottom: 2px; + border-left: 2px solid #e6e7e8; + color: #444; +} +.todo-list > li:last-of-type { + margin-bottom: 0; +} +.todo-list > li > input[type='checkbox'] { + margin: 0 10px 0 5px; +} +.todo-list > li .text { + display: inline-block; + margin-left: 5px; + font-weight: 600; +} +.todo-list > li .label { + margin-left: 10px; + font-size: 9px; +} +.todo-list > li .tools { + display: none; + float: right; + color: #dd4b39; +} +.todo-list > li .tools > .fa, +.todo-list > li .tools > .glyphicon, +.todo-list > li .tools > .ion { + margin-right: 5px; + cursor: pointer; +} +.todo-list > li:hover .tools { + display: inline-block; +} +.todo-list > li.done { + color: #999; +} +.todo-list > li.done .text { + text-decoration: line-through; + font-weight: 500; +} +.todo-list > li.done .label { + background: #d2d6de !important; +} +.todo-list .danger { + border-left-color: #dd4b39; +} +.todo-list .warning { + border-left-color: #f39c12; +} +.todo-list .info { + border-left-color: #00c0ef; +} +.todo-list .success { + border-left-color: #00a65a; +} +.todo-list .primary { + border-left-color: #337ab7; +} +.todo-list .handle { + display: inline-block; + cursor: move; + margin: 0 5px; +} +/* Chat widget (DEPRECATED - this will be removed in the next major release. Use Direct Chat instead)*/ + +.chat { + padding: 5px 20px 5px 10px; +} +.chat .item { + margin-bottom: 10px; +} +.chat .item:before, +.chat .item:after { + content: " "; + display: table; +} +.chat .item:after { + clear: both; +} +.chat .item > img { + width: 40px; + height: 40px; + border: 2px solid transparent; + border-radius: 50%; +} +.chat .item > .online { + border: 2px solid #00a65a; +} +.chat .item > .offline { + border: 2px solid #dd4b39; +} +.chat .item > .message { + margin-left: 55px; + margin-top: -40px; +} +.chat .item > .message > .name { + display: block; + font-weight: 600; +} +.chat .item > .attachment { + border-radius: 3px; + background: #f4f4f4; + margin-left: 65px; + margin-right: 15px; + padding: 10px; +} +.chat .item > .attachment > h4 { + margin: 0 0 5px 0; + font-weight: 600; + font-size: 14px; +} +.chat .item > .attachment > p, +.chat .item > .attachment > .filename { + font-weight: 600; + font-size: 13px; + font-style: italic; + margin: 0; +} +.chat .item > .attachment:before, +.chat .item > .attachment:after { + content: " "; + display: table; +} +.chat .item > .attachment:after { + clear: both; +} +.box-input { + max-width: 200px; +} +.modal .panel-body { + color: #444; +} +/* + * Component: Info Box + * ------------------- + */ + +.info-box { + display: block; + min-height: 90px; + background: #fff; + width: 100%; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 2px; + margin-bottom: 15px; +} +.info-box small { + font-size: 14px; +} +.info-box .progress { + background: rgba(0, 0, 0, 0.2); + margin: 5px -10px 5px -10px; + height: 2px; +} +.info-box .progress, +.info-box .progress .progress-bar { + border-radius: 0; +} +.info-box .progress .progress-bar { + background: #fff; +} +.info-box-icon { + border-top-left-radius: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 2px; + display: block; + float: left; + height: 90px; + width: 90px; + text-align: center; + font-size: 45px; + line-height: 90px; + background: rgba(0, 0, 0, 0.2); +} +.info-box-icon > img { + max-width: 100%; +} +.info-box-content { + padding: 5px 10px; + margin-left: 90px; +} +.info-box-number { + display: block; + font-weight: bold; + font-size: 18px; +} +.progress-description, +.info-box-text { + display: block; + font-size: 14px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.info-box-text { + text-transform: uppercase; +} +.info-box-more { + display: block; +} +.progress-description { + margin: 0; +} +/* + * Component: Timeline + * ------------------- + */ + +.timeline { + position: relative; + margin: 0 0 30px 0; + padding: 0; + list-style: none; +} +.timeline:before { + content: ''; + position: absolute; + top: 0; + bottom: 0; + width: 4px; + background: #ddd; + left: 31px; + margin: 0; + border-radius: 2px; +} +.timeline > li { + position: relative; + margin-right: 10px; + margin-bottom: 15px; +} +.timeline > li:before, +.timeline > li:after { + content: " "; + display: table; +} +.timeline > li:after { + clear: both; +} +.timeline > li > .timeline-item { + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 3px; + margin-top: 0; + background: #fff; + color: #444; + margin-left: 60px; + margin-right: 15px; + padding: 0; + position: relative; +} +.timeline > li > .timeline-item > .time { + color: #999; + float: right; + padding: 10px; + font-size: 12px; +} +.timeline > li > .timeline-item > .timeline-header { + margin: 0; + color: #555; + border-bottom: 1px solid #f4f4f4; + padding: 10px; + font-size: 16px; + line-height: 1.1; +} +.timeline > li > .timeline-item > .timeline-header > a { + font-weight: 600; +} +.timeline > li > .timeline-item > .timeline-body, +.timeline > li > .timeline-item > .timeline-footer { + padding: 10px; +} +.timeline > li > .fa, +.timeline > li > .glyphicon, +.timeline > li > .ion { + width: 30px; + height: 30px; + font-size: 15px; + line-height: 30px; + position: absolute; + color: #666; + background: #d2d6de; + border-radius: 50%; + text-align: center; + left: 18px; + top: 0; +} +.timeline > .time-label > span { + font-weight: 600; + padding: 5px; + display: inline-block; + background-color: #fff; + border-radius: 4px; +} +.timeline-inverse > li > .timeline-item { + background: #f0f0f0; + border: 1px solid #ddd; + -webkit-box-shadow: none; + box-shadow: none; +} +.timeline-inverse > li > .timeline-item > .timeline-header { + border-bottom-color: #ddd; +} +/* + * Component: Button + * ----------------- + */ + +.btn { + border-radius: 3px; + -webkit-box-shadow: none; + box-shadow: none; + border: 1px solid transparent; +} +.btn.uppercase { + text-transform: uppercase; +} +.btn.btn-flat { + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + border-width: 1px; +} +.btn:active { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn:focus { + outline: none; +} +.btn.btn-file { + position: relative; + overflow: hidden; +} +.btn.btn-file > input[type='file'] { + position: absolute; + top: 0; + right: 0; + min-width: 100%; + min-height: 100%; + font-size: 100px; + text-align: right; + opacity: 0; + filter: alpha(opacity=0); + outline: none; + background: white; + cursor: inherit; + display: block; +} +.btn-default { + background-color: #f4f4f4; + color: #444; + border-color: #ddd; +} +.btn-default:hover, +.btn-default:active, +.btn-default.hover { + background-color: #e7e7e7; +} +.btn-primary { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:hover, +.btn-primary:active, +.btn-primary.hover { + background-color: #2e6da4; +} +.btn-success { + background-color: #00a65a; + border-color: #008d4c; +} +.btn-success:hover, +.btn-success:active, +.btn-success.hover { + background-color: #008d4c; +} +.btn-info { + background-color: #00c0ef; + border-color: #00acd6; +} +.btn-info:hover, +.btn-info:active, +.btn-info.hover { + background-color: #00acd6; +} +.btn-danger { + background-color: #dd4b39; + border-color: #d73925; +} +.btn-danger:hover, +.btn-danger:active, +.btn-danger.hover { + background-color: #d73925; +} +.btn-warning { + background-color: #f39c12; + border-color: #e08e0b; +} +.btn-warning:hover, +.btn-warning:active, +.btn-warning.hover { + background-color: #e08e0b; +} +.btn-outline { + border: 1px solid #fff; + background: transparent; + color: #fff; +} +.btn-outline:hover, +.btn-outline:focus, +.btn-outline:active { + color: rgba(255, 255, 255, 0.7); + border-color: rgba(255, 255, 255, 0.7); +} +.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn[class*='bg-']:hover { + -webkit-box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.2); + box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.2); +} +.btn-app { + border-radius: 3px; + position: relative; + padding: 15px 5px; + margin: 0 0 10px 10px; + min-width: 80px; + height: 60px; + text-align: center; + color: #666; + border: 1px solid #ddd; + background-color: #f4f4f4; + font-size: 12px; +} +.btn-app > .fa, +.btn-app > .glyphicon, +.btn-app > .ion { + font-size: 20px; + display: block; +} +.btn-app:hover { + background: #f4f4f4; + color: #444; + border-color: #aaa; +} +.btn-app:active, +.btn-app:focus { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn-app > .badge { + position: absolute; + top: -3px; + right: -10px; + font-size: 10px; + font-weight: 400; +} +/* + * Component: Callout + * ------------------ + */ + +.callout { + border-radius: 3px; + margin: 0 0 20px 0; + padding: 15px 30px 15px 15px; + border-left: 5px solid #eee; +} +.callout a { + color: #fff; + text-decoration: underline; +} +.callout a:hover { + color: #eee; +} +.callout h4 { + margin-top: 0; + font-weight: 600; +} +.callout p:last-child { + margin-bottom: 0; +} +.callout code, +.callout .highlight { + background-color: #fff; +} +.callout.callout-danger { + border-color: #c23321; +} +.callout.callout-warning { + border-color: #c87f0a; +} +.callout.callout-info { + border-color: #0097bc; +} +.callout.callout-success { + border-color: #00733e; +} +/* + * Component: alert + * ---------------- + */ + +/* Prefer Bootstrap-style alerts +.alert { + .border-radius(3px); + h4 { + font-weight: 600; + } + .icon { + margin-right: 10px; + } + .close { + color: #000; + .opacity(.2); + &:hover { + .opacity(.5); + } + } + a { + color: #fff; + text-decoration: underline; + } +} + +//Alert Variants +.alert-success { + &:extend(.bg-green); + border-color: darken(@green, 5%); +} + +.alert-danger, +.alert-error { + &:extend(.bg-red); + border-color: darken(@red, 5%); +} + +.alert-warning { + &:extend(.bg-yellow); + border-color: darken(@yellow, 5%); +} + +.alert-info { + &:extend(.bg-aqua); + border-color: darken(@aqua, 5%); +} +*/ + +/* + * Component: Nav + * -------------- + */ + +.nav > li > a:hover, +.nav > li > a:active, +.nav > li > a:focus { + color: #444; + background: #f7f7f7; +} +/* NAV PILLS */ + +.nav-pills > li > a { + border-radius: 0; + border-top: 3px solid transparent; + color: #444; +} +.nav-pills > li > a > .fa, +.nav-pills > li > a > .glyphicon, +.nav-pills > li > a > .ion { + margin-right: 5px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + border-top-color: #337ab7; +} +.nav-pills > li.active > a { + font-weight: 600; +} +/* NAV STACKED */ + +.nav-stacked > li > a { + border-radius: 0; + border-top: 0; + border-left: 3px solid transparent; + color: #444; +} +.nav-stacked > li.active > a, +.nav-stacked > li.active > a:hover { + background: transparent; + color: #444; + border-top: 0; + border-left-color: #337ab7; +} +.nav-stacked > li.header { + border-bottom: 1px solid #ddd; + color: #777; + margin-bottom: 10px; + padding: 5px 10px; + text-transform: uppercase; +} +/* NAV TABS */ + +.nav-tabs-custom { + margin-bottom: 20px; + background: #fff; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 3px; +} +.nav-tabs-custom > .nav-tabs { + margin: 0; + border-bottom-color: #f4f4f4; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.nav-tabs-custom > .nav-tabs > li { + border-top: 3px solid transparent; + margin-bottom: -2px; + margin-right: 5px; +} +.nav-tabs-custom > .nav-tabs > li > a { + color: #444; + border-radius: 0; +} +.nav-tabs-custom > .nav-tabs > li > a.text-muted { + color: #999; +} +.nav-tabs-custom > .nav-tabs > li > a, +.nav-tabs-custom > .nav-tabs > li > a:hover { + background: transparent; + margin: 0; +} +.nav-tabs-custom > .nav-tabs > li > a:hover { + color: #999; +} +.nav-tabs-custom > .nav-tabs > li:not(.active) > a:hover, +.nav-tabs-custom > .nav-tabs > li:not(.active) > a:focus, +.nav-tabs-custom > .nav-tabs > li:not(.active) > a:active { + border-color: transparent; +} +.nav-tabs-custom > .nav-tabs > li.active { + border-top-color: #337ab7; +} +.nav-tabs-custom > .nav-tabs > li.active > a, +.nav-tabs-custom > .nav-tabs > li.active:hover > a { + background-color: #fff; + color: #444; +} +.nav-tabs-custom > .nav-tabs > li.active > a { + border-top-color: transparent; + border-left-color: #f4f4f4; + border-right-color: #f4f4f4; +} +.nav-tabs-custom > .nav-tabs > li:first-of-type { + margin-left: 0; +} +.nav-tabs-custom > .nav-tabs > li:first-of-type.active > a { + border-left-color: transparent; +} +.nav-tabs-custom > .nav-tabs.pull-right { + float: none !important; +} +.nav-tabs-custom > .nav-tabs.pull-right > li { + float: right; +} +.nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type { + margin-right: 0; +} +.nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type > a { + border-left-width: 1px; +} +.nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type.active > a { + border-left-color: #f4f4f4; + border-right-color: transparent; +} +.nav-tabs-custom > .nav-tabs > li.header { + line-height: 35px; + padding: 0 10px; + font-size: 20px; + color: #444; +} +.nav-tabs-custom > .nav-tabs > li.header > .fa, +.nav-tabs-custom > .nav-tabs > li.header > .glyphicon, +.nav-tabs-custom > .nav-tabs > li.header > .ion { + margin-right: 5px; +} +.nav-tabs-custom > .tab-content { + background: #fff; + padding: 10px; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.nav-tabs-custom .dropdown.open > a:active, +.nav-tabs-custom .dropdown.open > a:focus { + background: transparent; + color: #999; +} +.nav-tabs-custom.tab-primary > .nav-tabs > li.active { + border-top-color: #337ab7; +} +.nav-tabs-custom.tab-info > .nav-tabs > li.active { + border-top-color: #00c0ef; +} +.nav-tabs-custom.tab-danger > .nav-tabs > li.active { + border-top-color: #dd4b39; +} +.nav-tabs-custom.tab-warning > .nav-tabs > li.active { + border-top-color: #f39c12; +} +.nav-tabs-custom.tab-success > .nav-tabs > li.active { + border-top-color: #00a65a; +} +.nav-tabs-custom.tab-default > .nav-tabs > li.active { + border-top-color: #d2d6de; +} +/* PAGINATION */ + +.pagination > li > a { + background: #fafafa; + color: #666; +} +.pagination.pagination-flat > li > a { + border-radius: 0 !important; +} +/* + * Component: Products List + * ------------------------ + */ + +.products-list { + list-style: none; + margin: 0; + padding: 0; +} +.products-list > .item { + border-radius: 3px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + padding: 10px 0; + background: #fff; +} +.products-list > .item:before, +.products-list > .item:after { + content: " "; + display: table; +} +.products-list > .item:after { + clear: both; +} +.products-list .product-img { + float: left; +} +.products-list .product-img img { + width: 50px; + height: 50px; +} +.products-list .product-info { + margin-left: 60px; +} +.products-list .product-title { + font-weight: 600; +} +.products-list .product-description { + display: block; + color: #999; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} +.product-list-in-box > .item { + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0; + border-bottom: 1px solid #f4f4f4; +} +.product-list-in-box > .item:last-of-type { + border-bottom-width: 0; +} +/* + * Component: Table + * ---------------- + */ + +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + border-top: 1px solid #f4f4f4; +} +.table > thead > tr > th { + border-bottom: 2px solid #f4f4f4; +} +.table tr td .progress { + margin-top: 5px; +} +.table-bordered { + border: 1px solid #f4f4f4; +} +.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 #f4f4f4; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table.no-border, +.table.no-border td, +.table.no-border th { + border: 0; +} +/* .text-center in tables */ + +table.text-center, +table.text-center td, +table.text-center th { + text-align: center; +} +.table.align th { + text-align: left; +} +.table.align td { + text-align: right; +} +/* + * Component: Label + * ---------------- + */ + +.label-default { + background-color: #d2d6de; + color: #444; +} +/* + * Component: Direct Chat + * ---------------------- + */ + +.direct-chat .box-body { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + position: relative; + overflow-x: hidden; + padding: 0; +} +.direct-chat.chat-pane-open .direct-chat-contacts { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.direct-chat-messages { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); + padding: 10px; + height: 250px; + overflow: auto; +} +.direct-chat-msg, +.direct-chat-text { + display: block; +} +.direct-chat-msg { + margin-bottom: 10px; +} +.direct-chat-msg:before, +.direct-chat-msg:after { + content: " "; + display: table; +} +.direct-chat-msg:after { + clear: both; +} +.direct-chat-messages, +.direct-chat-contacts { + -webkit-transition: -webkit-transform 0.5s ease-in-out; + -moz-transition: -moz-transform 0.5s ease-in-out; + -o-transition: -o-transform 0.5s ease-in-out; + transition: transform 0.5s ease-in-out; +} +.direct-chat-text { + border-radius: 5px; + position: relative; + padding: 5px 10px; + background: #d2d6de; + border: 1px solid #d2d6de; + margin: 5px 0 0 50px; + color: #444; +} +.direct-chat-text:after, +.direct-chat-text:before { + position: absolute; + right: 100%; + top: 15px; + border: solid transparent; + border-right-color: #d2d6de; + content: ' '; + height: 0; + width: 0; + pointer-events: none; +} +.direct-chat-text:after { + border-width: 5px; + margin-top: -5px; +} +.direct-chat-text:before { + border-width: 6px; + margin-top: -6px; +} +.right .direct-chat-text { + margin-right: 50px; + margin-left: 0; +} +.right .direct-chat-text:after, +.right .direct-chat-text:before { + right: auto; + left: 100%; + border-right-color: transparent; + border-left-color: #d2d6de; +} +.direct-chat-img { + border-radius: 50%; + float: left; + width: 40px; + height: 40px; +} +.right .direct-chat-img { + float: right; +} +.direct-chat-info { + display: block; + margin-bottom: 2px; + font-size: 12px; +} +.direct-chat-name { + font-weight: 600; +} +.direct-chat-timestamp { + color: #999; +} +.direct-chat-contacts-open .direct-chat-contacts { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.direct-chat-contacts { + -webkit-transform: translate(101%, 0); + -ms-transform: translate(101%, 0); + -o-transform: translate(101%, 0); + transform: translate(101%, 0); + position: absolute; + top: 0; + bottom: 0; + height: 250px; + width: 100%; + background: #222d32; + color: #fff; + overflow: auto; +} +.contacts-list > li { + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + padding: 10px; + margin: 0; +} +.contacts-list > li:before, +.contacts-list > li:after { + content: " "; + display: table; +} +.contacts-list > li:after { + clear: both; +} +.contacts-list > li:last-of-type { + border-bottom: none; +} +.contacts-list-img { + border-radius: 50%; + width: 40px; + float: left; +} +.contacts-list-info { + margin-left: 45px; + color: #fff; +} +.contacts-list-name, +.contacts-list-status { + display: block; +} +.contacts-list-name { + font-weight: 600; +} +.contacts-list-status { + font-size: 12px; +} +.contacts-list-date { + color: #aaa; + font-weight: normal; +} +.contacts-list-msg { + color: #999; +} +.direct-chat-danger .right > .direct-chat-text { + background: #dd4b39; + border-color: #dd4b39; + color: #fff; +} +.direct-chat-danger .right > .direct-chat-text:after, +.direct-chat-danger .right > .direct-chat-text:before { + border-left-color: #dd4b39; +} +.direct-chat-primary .right > .direct-chat-text { + background: #337ab7; + border-color: #337ab7; + color: #fff; +} +.direct-chat-primary .right > .direct-chat-text:after, +.direct-chat-primary .right > .direct-chat-text:before { + border-left-color: #337ab7; +} +.direct-chat-warning .right > .direct-chat-text { + background: #f39c12; + border-color: #f39c12; + color: #fff; +} +.direct-chat-warning .right > .direct-chat-text:after, +.direct-chat-warning .right > .direct-chat-text:before { + border-left-color: #f39c12; +} +.direct-chat-info .right > .direct-chat-text { + background: #00c0ef; + border-color: #00c0ef; + color: #fff; +} +.direct-chat-info .right > .direct-chat-text:after, +.direct-chat-info .right > .direct-chat-text:before { + border-left-color: #00c0ef; +} +.direct-chat-success .right > .direct-chat-text { + background: #00a65a; + border-color: #00a65a; + color: #fff; +} +.direct-chat-success .right > .direct-chat-text:after, +.direct-chat-success .right > .direct-chat-text:before { + border-left-color: #00a65a; +} +/* + * Component: Users List + * --------------------- + */ + +.users-list > li { + width: 25%; + float: left; + padding: 10px; + text-align: center; +} +.users-list > li img { + border-radius: 50%; + max-width: 100%; + height: auto; +} +.users-list > li > a:hover, +.users-list > li > a:hover .users-list-name { + color: #999; +} +.users-list-name, +.users-list-date { + display: block; +} +.users-list-name { + font-weight: 600; + color: #444; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} +.users-list-date { + color: #999; + font-size: 12px; +} +/* + * Component: Carousel + * ------------------- + */ + +.carousel-control.left, +.carousel-control.right { + background-image: none; +} +.carousel-control > .fa { + font-size: 40px; + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -20px; +} +/* + * Component: modal + * ---------------- + */ + +.modal { + background: rgba(0, 0, 0, 0.3); +} +.modal-content { + border-radius: 0; + -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); + box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); + border: 0; +} +@media (min-width: 768px) { + .modal-content { + -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); + box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); + } +} +.modal-header { + border-bottom-color: #f4f4f4; +} +.modal-footer { + border-top-color: #f4f4f4; +} +.modal-primary .modal-header, +.modal-primary .modal-footer { + border-color: #286090; +} +.modal-warning .modal-header, +.modal-warning .modal-footer { + border-color: #c87f0a; +} +.modal-info .modal-header, +.modal-info .modal-footer { + border-color: #0097bc; +} +.modal-success .modal-header, +.modal-success .modal-footer { + border-color: #00733e; +} +.modal-danger .modal-header, +.modal-danger .modal-footer { + border-color: #c23321; +} +/* + * Component: Social Widgets + * ------------------------- + */ + +.box-widget { + border: none; + position: relative; +} +.widget-user .widget-user-header { + padding: 20px; + height: 120px; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.widget-user .widget-user-username { + margin-top: 0; + margin-bottom: 5px; + font-size: 25px; + font-weight: 300; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); +} +.widget-user .widget-user-desc { + margin-top: 0; +} +.widget-user .widget-user-image { + position: absolute; + top: 65px; + left: 50%; + margin-left: -45px; +} +.widget-user .widget-user-image > img { + width: 90px; + height: auto; + border: 3px solid #fff; +} +.widget-user .box-footer { + padding-top: 30px; +} +.widget-user-2 .widget-user-header { + padding: 20px; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.widget-user-2 .widget-user-username { + margin-top: 5px; + margin-bottom: 5px; + font-size: 25px; + font-weight: 300; +} +.widget-user-2 .widget-user-desc { + margin-top: 0; +} +.widget-user-2 .widget-user-username, +.widget-user-2 .widget-user-desc { + margin-left: 75px; +} +.widget-user-2 .widget-user-image > img { + width: 65px; + height: auto; + float: left; +} +/* + * Page: Mailbox + * ------------- + */ + +.mailbox-messages > .table { + margin: 0; +} +.mailbox-controls { + padding: 5px; +} +.mailbox-controls.with-border { + border-bottom: 1px solid #f4f4f4; +} +.mailbox-read-info { + border-bottom: 1px solid #f4f4f4; + padding: 10px; +} +.mailbox-read-info h3 { + font-size: 20px; + margin: 0; +} +.mailbox-read-info h5 { + margin: 0; + padding: 5px 0 0 0; +} +.mailbox-read-time { + color: #999; + font-size: 13px; +} +.mailbox-read-message { + padding: 10px; +} +.mailbox-attachments li { + float: left; + width: 200px; + border: 1px solid #eee; + margin-bottom: 10px; + margin-right: 10px; +} +.mailbox-attachment-name { + font-weight: bold; + color: #666; +} +.mailbox-attachment-icon, +.mailbox-attachment-info, +.mailbox-attachment-size { + display: block; +} +.mailbox-attachment-info { + padding: 10px; + background: #f4f4f4; +} +.mailbox-attachment-size { + color: #999; + font-size: 12px; +} +.mailbox-attachment-icon { + text-align: center; + font-size: 65px; + color: #666; + padding: 20px 10px; +} +.mailbox-attachment-icon.has-img { + padding: 0; +} +.mailbox-attachment-icon.has-img > img { + max-width: 100%; + height: auto; +} +/* + * Page: Lock Screen + * ----------------- + */ + +/* ADD THIS CLASS TO THE TAG */ + +.lockscreen { + background: #d2d6de; +} +.lockscreen-logo { + font-size: 35px; + text-align: center; + margin-bottom: 25px; + font-weight: 300; +} +.lockscreen-logo a { + color: #444; +} +.lockscreen-wrapper { + max-width: 400px; + margin: 0 auto; + margin-top: 10%; +} +/* User name [optional] */ + +.lockscreen .lockscreen-name { + text-align: center; + font-weight: 600; +} +/* Will contain the image and the sign in form */ + +.lockscreen-item { + border-radius: 4px; + padding: 0; + background: #fff; + position: relative; + margin: 10px auto 30px auto; + width: 290px; +} +/* User image */ + +.lockscreen-image { + border-radius: 50%; + position: absolute; + left: -10px; + top: -25px; + background: #fff; + padding: 5px; + z-index: 10; +} +.lockscreen-image > img { + border-radius: 50%; + width: 70px; + height: 70px; +} +/* Contains the password input and the login button */ + +.lockscreen-credentials { + margin-left: 70px; +} +.lockscreen-credentials .form-control { + border: 0; +} +.lockscreen-credentials .btn { + background-color: #fff; + border: 0; + padding: 0 10px; +} +.lockscreen-footer { + margin-top: 10px; +} +/* + * Page: Login & Register + * ---------------------- + */ + +.login-logo, +.register-logo { + font-size: 35px; + text-align: center; + margin-bottom: 25px; + font-weight: 300; +} +.login-logo a, +.register-logo a { + color: #444; +} +.login-page, +.register-page { + background: #d2d6de; +} +.login-box, +.register-box { + width: 360px; + margin: 7% auto; +} +@media (max-width: 768px) { + .login-box, + .register-box { + width: 90%; + margin-top: 20px; + } +} +.login-box-body, +.register-box-body { + background: #fff; + padding: 20px; + border-top: 0; + color: #666; +} +.login-box-body .form-control-feedback, +.register-box-body .form-control-feedback { + color: #777; +} +.login-box-msg, +.register-box-msg { + margin: 0; + text-align: center; + padding: 0 20px 20px 20px; +} +.social-auth-links { + margin: 10px 0; +} +/* + * Page: 400 and 500 error pages + * ------------------------------ + */ + +.error-page { + width: 600px; + margin: 20px auto 0 auto; +} +@media (max-width: 991px) { + .error-page { + width: 100%; + } +} +.error-page > .headline { + float: left; + font-size: 100px; + font-weight: 300; +} +@media (max-width: 991px) { + .error-page > .headline { + float: none; + text-align: center; + } +} +.error-page > .error-content { + margin-left: 190px; + display: block; +} +@media (max-width: 991px) { + .error-page > .error-content { + margin-left: 0; + } +} +.error-page > .error-content > h3 { + font-weight: 300; + font-size: 25px; +} +@media (max-width: 991px) { + .error-page > .error-content > h3 { + text-align: center; + } +} +/* + * Page: Invoice + * ------------- + */ + +.invoice { + position: relative; + background: #fff; + border: 1px solid #f4f4f4; + padding: 20px; + margin: 10px 25px; +} +.invoice-title { + margin-top: 0; +} +/* + * Page: Profile + * ------------- + */ + +.profile-user-img { + margin: 0 auto; + width: 100px; + padding: 3px; + border: 3px solid #d2d6de; +} +.profile-username { + font-size: 21px; + margin-top: 5px; +} +.post { + border-bottom: 1px solid #d2d6de; + margin-bottom: 15px; + padding-bottom: 15px; + color: #666; +} +.post:last-of-type { + border-bottom: 0; + margin-bottom: 0; + padding-bottom: 0; +} +.post .user-block { + margin-bottom: 15px; +} +/* + * Social Buttons for Bootstrap + * + * Copyright 2013-2015 Panayiotis Lipiridis + * Licensed under the MIT License + * + * https://github.com/lipis/bootstrap-social + */ +.btn-social { + position: relative; + padding-left: 44px; + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.btn-social > :first-child { + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 32px; + line-height: 34px; + font-size: 1.6em; + text-align: center; + border-right: 1px solid rgba(0, 0, 0, 0.2); +} +.btn-social.btn-lg { + padding-left: 61px; +} +.btn-social.btn-lg > :first-child { + line-height: 45px; + width: 45px; + font-size: 1.8em; +} +.btn-social.btn-sm { + padding-left: 38px; +} +.btn-social.btn-sm > :first-child { + line-height: 28px; + width: 28px; + font-size: 1.4em; +} +.btn-social.btn-xs { + padding-left: 30px; +} +.btn-social.btn-xs > :first-child { + line-height: 20px; + width: 20px; + font-size: 1.2em; +} +.btn-social-icon { + position: relative; + padding-left: 44px; + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + height: 34px; + width: 34px; + padding: 0; +} +.btn-social-icon > :first-child { + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 32px; + line-height: 34px; + font-size: 1.6em; + text-align: center; + border-right: 1px solid rgba(0, 0, 0, 0.2); +} +.btn-social-icon.btn-lg { + padding-left: 61px; +} +.btn-social-icon.btn-lg > :first-child { + line-height: 45px; + width: 45px; + font-size: 1.8em; +} +.btn-social-icon.btn-sm { + padding-left: 38px; +} +.btn-social-icon.btn-sm > :first-child { + line-height: 28px; + width: 28px; + font-size: 1.4em; +} +.btn-social-icon.btn-xs { + padding-left: 30px; +} +.btn-social-icon.btn-xs > :first-child { + line-height: 20px; + width: 20px; + font-size: 1.2em; +} +.btn-social-icon > :first-child { + border: none; + text-align: center; + width: 100%; +} +.btn-social-icon.btn-lg { + height: 45px; + width: 45px; + padding-left: 0; + padding-right: 0; +} +.btn-social-icon.btn-sm { + height: 30px; + width: 30px; + padding-left: 0; + padding-right: 0; +} +.btn-social-icon.btn-xs { + height: 22px; + width: 22px; + padding-left: 0; + padding-right: 0; +} +.btn-adn { + background-color: #d87a68; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-adn:focus, +.btn-adn.focus { + color: #fff; + background-color: #ce563f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-adn:hover { + color: #fff; + background-color: #ce563f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-adn:active, +.btn-adn.active, +.open > .dropdown-toggle.btn-adn { + color: #fff; + background-color: #ce563f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-adn:active:hover, +.btn-adn.active:hover, +.open > .dropdown-toggle.btn-adn:hover, +.btn-adn:active:focus, +.btn-adn.active:focus, +.open > .dropdown-toggle.btn-adn:focus, +.btn-adn:active.focus, +.btn-adn.active.focus, +.open > .dropdown-toggle.btn-adn.focus { + color: #fff; + background-color: #b94630; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-adn:active, +.btn-adn.active, +.open > .dropdown-toggle.btn-adn { + background-image: none; +} +.btn-adn.disabled:hover, +.btn-adn[disabled]:hover, +fieldset[disabled] .btn-adn:hover, +.btn-adn.disabled:focus, +.btn-adn[disabled]:focus, +fieldset[disabled] .btn-adn:focus, +.btn-adn.disabled.focus, +.btn-adn[disabled].focus, +fieldset[disabled] .btn-adn.focus { + background-color: #d87a68; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-adn .badge { + color: #d87a68; + background-color: #fff; +} +.btn-bitbucket { + background-color: #205081; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-bitbucket:focus, +.btn-bitbucket.focus { + color: #fff; + background-color: #163758; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-bitbucket:hover { + color: #fff; + background-color: #163758; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-bitbucket:active, +.btn-bitbucket.active, +.open > .dropdown-toggle.btn-bitbucket { + color: #fff; + background-color: #163758; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-bitbucket:active:hover, +.btn-bitbucket.active:hover, +.open > .dropdown-toggle.btn-bitbucket:hover, +.btn-bitbucket:active:focus, +.btn-bitbucket.active:focus, +.open > .dropdown-toggle.btn-bitbucket:focus, +.btn-bitbucket:active.focus, +.btn-bitbucket.active.focus, +.open > .dropdown-toggle.btn-bitbucket.focus { + color: #fff; + background-color: #0f253c; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-bitbucket:active, +.btn-bitbucket.active, +.open > .dropdown-toggle.btn-bitbucket { + background-image: none; +} +.btn-bitbucket.disabled:hover, +.btn-bitbucket[disabled]:hover, +fieldset[disabled] .btn-bitbucket:hover, +.btn-bitbucket.disabled:focus, +.btn-bitbucket[disabled]:focus, +fieldset[disabled] .btn-bitbucket:focus, +.btn-bitbucket.disabled.focus, +.btn-bitbucket[disabled].focus, +fieldset[disabled] .btn-bitbucket.focus { + background-color: #205081; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-bitbucket .badge { + color: #205081; + background-color: #fff; +} +.btn-dropbox { + background-color: #1087dd; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-dropbox:focus, +.btn-dropbox.focus { + color: #fff; + background-color: #0d6aad; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-dropbox:hover { + color: #fff; + background-color: #0d6aad; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-dropbox:active, +.btn-dropbox.active, +.open > .dropdown-toggle.btn-dropbox { + color: #fff; + background-color: #0d6aad; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-dropbox:active:hover, +.btn-dropbox.active:hover, +.open > .dropdown-toggle.btn-dropbox:hover, +.btn-dropbox:active:focus, +.btn-dropbox.active:focus, +.open > .dropdown-toggle.btn-dropbox:focus, +.btn-dropbox:active.focus, +.btn-dropbox.active.focus, +.open > .dropdown-toggle.btn-dropbox.focus { + color: #fff; + background-color: #0a568c; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-dropbox:active, +.btn-dropbox.active, +.open > .dropdown-toggle.btn-dropbox { + background-image: none; +} +.btn-dropbox.disabled:hover, +.btn-dropbox[disabled]:hover, +fieldset[disabled] .btn-dropbox:hover, +.btn-dropbox.disabled:focus, +.btn-dropbox[disabled]:focus, +fieldset[disabled] .btn-dropbox:focus, +.btn-dropbox.disabled.focus, +.btn-dropbox[disabled].focus, +fieldset[disabled] .btn-dropbox.focus { + background-color: #1087dd; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-dropbox .badge { + color: #1087dd; + background-color: #fff; +} +.btn-facebook { + background-color: #3b5998; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-facebook:focus, +.btn-facebook.focus { + color: #fff; + background-color: #2d4373; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-facebook:hover { + color: #fff; + background-color: #2d4373; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-facebook:active, +.btn-facebook.active, +.open > .dropdown-toggle.btn-facebook { + color: #fff; + background-color: #2d4373; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-facebook:active:hover, +.btn-facebook.active:hover, +.open > .dropdown-toggle.btn-facebook:hover, +.btn-facebook:active:focus, +.btn-facebook.active:focus, +.open > .dropdown-toggle.btn-facebook:focus, +.btn-facebook:active.focus, +.btn-facebook.active.focus, +.open > .dropdown-toggle.btn-facebook.focus { + color: #fff; + background-color: #23345a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-facebook:active, +.btn-facebook.active, +.open > .dropdown-toggle.btn-facebook { + background-image: none; +} +.btn-facebook.disabled:hover, +.btn-facebook[disabled]:hover, +fieldset[disabled] .btn-facebook:hover, +.btn-facebook.disabled:focus, +.btn-facebook[disabled]:focus, +fieldset[disabled] .btn-facebook:focus, +.btn-facebook.disabled.focus, +.btn-facebook[disabled].focus, +fieldset[disabled] .btn-facebook.focus { + background-color: #3b5998; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-facebook .badge { + color: #3b5998; + background-color: #fff; +} +.btn-flickr { + background-color: #ff0084; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-flickr:focus, +.btn-flickr.focus { + color: #fff; + background-color: #cc006a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-flickr:hover { + color: #fff; + background-color: #cc006a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-flickr:active, +.btn-flickr.active, +.open > .dropdown-toggle.btn-flickr { + color: #fff; + background-color: #cc006a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-flickr:active:hover, +.btn-flickr.active:hover, +.open > .dropdown-toggle.btn-flickr:hover, +.btn-flickr:active:focus, +.btn-flickr.active:focus, +.open > .dropdown-toggle.btn-flickr:focus, +.btn-flickr:active.focus, +.btn-flickr.active.focus, +.open > .dropdown-toggle.btn-flickr.focus { + color: #fff; + background-color: #a80057; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-flickr:active, +.btn-flickr.active, +.open > .dropdown-toggle.btn-flickr { + background-image: none; +} +.btn-flickr.disabled:hover, +.btn-flickr[disabled]:hover, +fieldset[disabled] .btn-flickr:hover, +.btn-flickr.disabled:focus, +.btn-flickr[disabled]:focus, +fieldset[disabled] .btn-flickr:focus, +.btn-flickr.disabled.focus, +.btn-flickr[disabled].focus, +fieldset[disabled] .btn-flickr.focus { + background-color: #ff0084; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-flickr .badge { + color: #ff0084; + background-color: #fff; +} +.btn-foursquare { + background-color: #f94877; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-foursquare:focus, +.btn-foursquare.focus { + color: #fff; + background-color: #f71752; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-foursquare:hover { + color: #fff; + background-color: #f71752; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-foursquare:active, +.btn-foursquare.active, +.open > .dropdown-toggle.btn-foursquare { + color: #fff; + background-color: #f71752; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-foursquare:active:hover, +.btn-foursquare.active:hover, +.open > .dropdown-toggle.btn-foursquare:hover, +.btn-foursquare:active:focus, +.btn-foursquare.active:focus, +.open > .dropdown-toggle.btn-foursquare:focus, +.btn-foursquare:active.focus, +.btn-foursquare.active.focus, +.open > .dropdown-toggle.btn-foursquare.focus { + color: #fff; + background-color: #e30742; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-foursquare:active, +.btn-foursquare.active, +.open > .dropdown-toggle.btn-foursquare { + background-image: none; +} +.btn-foursquare.disabled:hover, +.btn-foursquare[disabled]:hover, +fieldset[disabled] .btn-foursquare:hover, +.btn-foursquare.disabled:focus, +.btn-foursquare[disabled]:focus, +fieldset[disabled] .btn-foursquare:focus, +.btn-foursquare.disabled.focus, +.btn-foursquare[disabled].focus, +fieldset[disabled] .btn-foursquare.focus { + background-color: #f94877; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-foursquare .badge { + color: #f94877; + background-color: #fff; +} +.btn-github { + background-color: #444444; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-github:focus, +.btn-github.focus { + color: #fff; + background-color: #2a2a2a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-github:hover { + color: #fff; + background-color: #2a2a2a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-github:active, +.btn-github.active, +.open > .dropdown-toggle.btn-github { + color: #fff; + background-color: #2a2a2a; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-github:active:hover, +.btn-github.active:hover, +.open > .dropdown-toggle.btn-github:hover, +.btn-github:active:focus, +.btn-github.active:focus, +.open > .dropdown-toggle.btn-github:focus, +.btn-github:active.focus, +.btn-github.active.focus, +.open > .dropdown-toggle.btn-github.focus { + color: #fff; + background-color: #191919; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-github:active, +.btn-github.active, +.open > .dropdown-toggle.btn-github { + background-image: none; +} +.btn-github.disabled:hover, +.btn-github[disabled]:hover, +fieldset[disabled] .btn-github:hover, +.btn-github.disabled:focus, +.btn-github[disabled]:focus, +fieldset[disabled] .btn-github:focus, +.btn-github.disabled.focus, +.btn-github[disabled].focus, +fieldset[disabled] .btn-github.focus { + background-color: #444444; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-github .badge { + color: #444444; + background-color: #fff; +} +.btn-google { + background-color: #dd4b39; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-google:focus, +.btn-google.focus { + color: #fff; + background-color: #c23321; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-google:hover { + color: #fff; + background-color: #c23321; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-google:active, +.btn-google.active, +.open > .dropdown-toggle.btn-google { + color: #fff; + background-color: #c23321; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-google:active:hover, +.btn-google.active:hover, +.open > .dropdown-toggle.btn-google:hover, +.btn-google:active:focus, +.btn-google.active:focus, +.open > .dropdown-toggle.btn-google:focus, +.btn-google:active.focus, +.btn-google.active.focus, +.open > .dropdown-toggle.btn-google.focus { + color: #fff; + background-color: #a32b1c; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-google:active, +.btn-google.active, +.open > .dropdown-toggle.btn-google { + background-image: none; +} +.btn-google.disabled:hover, +.btn-google[disabled]:hover, +fieldset[disabled] .btn-google:hover, +.btn-google.disabled:focus, +.btn-google[disabled]:focus, +fieldset[disabled] .btn-google:focus, +.btn-google.disabled.focus, +.btn-google[disabled].focus, +fieldset[disabled] .btn-google.focus { + background-color: #dd4b39; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-google .badge { + color: #dd4b39; + background-color: #fff; +} +.btn-instagram { + background-color: #3f729b; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-instagram:focus, +.btn-instagram.focus { + color: #fff; + background-color: #305777; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-instagram:hover { + color: #fff; + background-color: #305777; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-instagram:active, +.btn-instagram.active, +.open > .dropdown-toggle.btn-instagram { + color: #fff; + background-color: #305777; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-instagram:active:hover, +.btn-instagram.active:hover, +.open > .dropdown-toggle.btn-instagram:hover, +.btn-instagram:active:focus, +.btn-instagram.active:focus, +.open > .dropdown-toggle.btn-instagram:focus, +.btn-instagram:active.focus, +.btn-instagram.active.focus, +.open > .dropdown-toggle.btn-instagram.focus { + color: #fff; + background-color: #26455d; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-instagram:active, +.btn-instagram.active, +.open > .dropdown-toggle.btn-instagram { + background-image: none; +} +.btn-instagram.disabled:hover, +.btn-instagram[disabled]:hover, +fieldset[disabled] .btn-instagram:hover, +.btn-instagram.disabled:focus, +.btn-instagram[disabled]:focus, +fieldset[disabled] .btn-instagram:focus, +.btn-instagram.disabled.focus, +.btn-instagram[disabled].focus, +fieldset[disabled] .btn-instagram.focus { + background-color: #3f729b; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-instagram .badge { + color: #3f729b; + background-color: #fff; +} +.btn-linkedin { + background-color: #007bb6; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-linkedin:focus, +.btn-linkedin.focus { + color: #fff; + background-color: #005983; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-linkedin:hover { + color: #fff; + background-color: #005983; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-linkedin:active, +.btn-linkedin.active, +.open > .dropdown-toggle.btn-linkedin { + color: #fff; + background-color: #005983; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-linkedin:active:hover, +.btn-linkedin.active:hover, +.open > .dropdown-toggle.btn-linkedin:hover, +.btn-linkedin:active:focus, +.btn-linkedin.active:focus, +.open > .dropdown-toggle.btn-linkedin:focus, +.btn-linkedin:active.focus, +.btn-linkedin.active.focus, +.open > .dropdown-toggle.btn-linkedin.focus { + color: #fff; + background-color: #00405f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-linkedin:active, +.btn-linkedin.active, +.open > .dropdown-toggle.btn-linkedin { + background-image: none; +} +.btn-linkedin.disabled:hover, +.btn-linkedin[disabled]:hover, +fieldset[disabled] .btn-linkedin:hover, +.btn-linkedin.disabled:focus, +.btn-linkedin[disabled]:focus, +fieldset[disabled] .btn-linkedin:focus, +.btn-linkedin.disabled.focus, +.btn-linkedin[disabled].focus, +fieldset[disabled] .btn-linkedin.focus { + background-color: #007bb6; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-linkedin .badge { + color: #007bb6; + background-color: #fff; +} +.btn-microsoft { + background-color: #2672ec; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-microsoft:focus, +.btn-microsoft.focus { + color: #fff; + background-color: #125acd; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-microsoft:hover { + color: #fff; + background-color: #125acd; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-microsoft:active, +.btn-microsoft.active, +.open > .dropdown-toggle.btn-microsoft { + color: #fff; + background-color: #125acd; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-microsoft:active:hover, +.btn-microsoft.active:hover, +.open > .dropdown-toggle.btn-microsoft:hover, +.btn-microsoft:active:focus, +.btn-microsoft.active:focus, +.open > .dropdown-toggle.btn-microsoft:focus, +.btn-microsoft:active.focus, +.btn-microsoft.active.focus, +.open > .dropdown-toggle.btn-microsoft.focus { + color: #fff; + background-color: #0f4bac; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-microsoft:active, +.btn-microsoft.active, +.open > .dropdown-toggle.btn-microsoft { + background-image: none; +} +.btn-microsoft.disabled:hover, +.btn-microsoft[disabled]:hover, +fieldset[disabled] .btn-microsoft:hover, +.btn-microsoft.disabled:focus, +.btn-microsoft[disabled]:focus, +fieldset[disabled] .btn-microsoft:focus, +.btn-microsoft.disabled.focus, +.btn-microsoft[disabled].focus, +fieldset[disabled] .btn-microsoft.focus { + background-color: #2672ec; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-microsoft .badge { + color: #2672ec; + background-color: #fff; +} +.btn-openid { + background-color: #f7931e; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-openid:focus, +.btn-openid.focus { + color: #fff; + background-color: #da7908; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-openid:hover { + color: #fff; + background-color: #da7908; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-openid:active, +.btn-openid.active, +.open > .dropdown-toggle.btn-openid { + color: #fff; + background-color: #da7908; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-openid:active:hover, +.btn-openid.active:hover, +.open > .dropdown-toggle.btn-openid:hover, +.btn-openid:active:focus, +.btn-openid.active:focus, +.open > .dropdown-toggle.btn-openid:focus, +.btn-openid:active.focus, +.btn-openid.active.focus, +.open > .dropdown-toggle.btn-openid.focus { + color: #fff; + background-color: #b86607; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-openid:active, +.btn-openid.active, +.open > .dropdown-toggle.btn-openid { + background-image: none; +} +.btn-openid.disabled:hover, +.btn-openid[disabled]:hover, +fieldset[disabled] .btn-openid:hover, +.btn-openid.disabled:focus, +.btn-openid[disabled]:focus, +fieldset[disabled] .btn-openid:focus, +.btn-openid.disabled.focus, +.btn-openid[disabled].focus, +fieldset[disabled] .btn-openid.focus { + background-color: #f7931e; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-openid .badge { + color: #f7931e; + background-color: #fff; +} +.btn-pinterest { + background-color: #cb2027; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-pinterest:focus, +.btn-pinterest.focus { + color: #fff; + background-color: #9f191f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-pinterest:hover { + color: #fff; + background-color: #9f191f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-pinterest:active, +.btn-pinterest.active, +.open > .dropdown-toggle.btn-pinterest { + color: #fff; + background-color: #9f191f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-pinterest:active:hover, +.btn-pinterest.active:hover, +.open > .dropdown-toggle.btn-pinterest:hover, +.btn-pinterest:active:focus, +.btn-pinterest.active:focus, +.open > .dropdown-toggle.btn-pinterest:focus, +.btn-pinterest:active.focus, +.btn-pinterest.active.focus, +.open > .dropdown-toggle.btn-pinterest.focus { + color: #fff; + background-color: #801419; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-pinterest:active, +.btn-pinterest.active, +.open > .dropdown-toggle.btn-pinterest { + background-image: none; +} +.btn-pinterest.disabled:hover, +.btn-pinterest[disabled]:hover, +fieldset[disabled] .btn-pinterest:hover, +.btn-pinterest.disabled:focus, +.btn-pinterest[disabled]:focus, +fieldset[disabled] .btn-pinterest:focus, +.btn-pinterest.disabled.focus, +.btn-pinterest[disabled].focus, +fieldset[disabled] .btn-pinterest.focus { + background-color: #cb2027; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-pinterest .badge { + color: #cb2027; + background-color: #fff; +} +.btn-reddit { + background-color: #eff7ff; + color: #000; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-reddit:focus, +.btn-reddit.focus { + color: #000; + background-color: #bcddff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-reddit:hover { + color: #000; + background-color: #bcddff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-reddit:active, +.btn-reddit.active, +.open > .dropdown-toggle.btn-reddit { + color: #000; + background-color: #bcddff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-reddit:active:hover, +.btn-reddit.active:hover, +.open > .dropdown-toggle.btn-reddit:hover, +.btn-reddit:active:focus, +.btn-reddit.active:focus, +.open > .dropdown-toggle.btn-reddit:focus, +.btn-reddit:active.focus, +.btn-reddit.active.focus, +.open > .dropdown-toggle.btn-reddit.focus { + color: #000; + background-color: #98ccff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-reddit:active, +.btn-reddit.active, +.open > .dropdown-toggle.btn-reddit { + background-image: none; +} +.btn-reddit.disabled:hover, +.btn-reddit[disabled]:hover, +fieldset[disabled] .btn-reddit:hover, +.btn-reddit.disabled:focus, +.btn-reddit[disabled]:focus, +fieldset[disabled] .btn-reddit:focus, +.btn-reddit.disabled.focus, +.btn-reddit[disabled].focus, +fieldset[disabled] .btn-reddit.focus { + background-color: #eff7ff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-reddit .badge { + color: #eff7ff; + background-color: #000; +} +.btn-soundcloud { + background-color: #ff5500; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-soundcloud:focus, +.btn-soundcloud.focus { + color: #fff; + background-color: #cc4400; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-soundcloud:hover { + color: #fff; + background-color: #cc4400; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-soundcloud:active, +.btn-soundcloud.active, +.open > .dropdown-toggle.btn-soundcloud { + color: #fff; + background-color: #cc4400; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-soundcloud:active:hover, +.btn-soundcloud.active:hover, +.open > .dropdown-toggle.btn-soundcloud:hover, +.btn-soundcloud:active:focus, +.btn-soundcloud.active:focus, +.open > .dropdown-toggle.btn-soundcloud:focus, +.btn-soundcloud:active.focus, +.btn-soundcloud.active.focus, +.open > .dropdown-toggle.btn-soundcloud.focus { + color: #fff; + background-color: #a83800; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-soundcloud:active, +.btn-soundcloud.active, +.open > .dropdown-toggle.btn-soundcloud { + background-image: none; +} +.btn-soundcloud.disabled:hover, +.btn-soundcloud[disabled]:hover, +fieldset[disabled] .btn-soundcloud:hover, +.btn-soundcloud.disabled:focus, +.btn-soundcloud[disabled]:focus, +fieldset[disabled] .btn-soundcloud:focus, +.btn-soundcloud.disabled.focus, +.btn-soundcloud[disabled].focus, +fieldset[disabled] .btn-soundcloud.focus { + background-color: #ff5500; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-soundcloud .badge { + color: #ff5500; + background-color: #fff; +} +.btn-tumblr { + background-color: #2c4762; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-tumblr:focus, +.btn-tumblr.focus { + color: #fff; + background-color: #1c2e3f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-tumblr:hover { + color: #fff; + background-color: #1c2e3f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-tumblr:active, +.btn-tumblr.active, +.open > .dropdown-toggle.btn-tumblr { + color: #fff; + background-color: #1c2e3f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-tumblr:active:hover, +.btn-tumblr.active:hover, +.open > .dropdown-toggle.btn-tumblr:hover, +.btn-tumblr:active:focus, +.btn-tumblr.active:focus, +.open > .dropdown-toggle.btn-tumblr:focus, +.btn-tumblr:active.focus, +.btn-tumblr.active.focus, +.open > .dropdown-toggle.btn-tumblr.focus { + color: #fff; + background-color: #111c26; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-tumblr:active, +.btn-tumblr.active, +.open > .dropdown-toggle.btn-tumblr { + background-image: none; +} +.btn-tumblr.disabled:hover, +.btn-tumblr[disabled]:hover, +fieldset[disabled] .btn-tumblr:hover, +.btn-tumblr.disabled:focus, +.btn-tumblr[disabled]:focus, +fieldset[disabled] .btn-tumblr:focus, +.btn-tumblr.disabled.focus, +.btn-tumblr[disabled].focus, +fieldset[disabled] .btn-tumblr.focus { + background-color: #2c4762; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-tumblr .badge { + color: #2c4762; + background-color: #fff; +} +.btn-twitter { + background-color: #55acee; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-twitter:focus, +.btn-twitter.focus { + color: #fff; + background-color: #2795e9; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-twitter:hover { + color: #fff; + background-color: #2795e9; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-twitter:active, +.btn-twitter.active, +.open > .dropdown-toggle.btn-twitter { + color: #fff; + background-color: #2795e9; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-twitter:active:hover, +.btn-twitter.active:hover, +.open > .dropdown-toggle.btn-twitter:hover, +.btn-twitter:active:focus, +.btn-twitter.active:focus, +.open > .dropdown-toggle.btn-twitter:focus, +.btn-twitter:active.focus, +.btn-twitter.active.focus, +.open > .dropdown-toggle.btn-twitter.focus { + color: #fff; + background-color: #1583d7; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-twitter:active, +.btn-twitter.active, +.open > .dropdown-toggle.btn-twitter { + background-image: none; +} +.btn-twitter.disabled:hover, +.btn-twitter[disabled]:hover, +fieldset[disabled] .btn-twitter:hover, +.btn-twitter.disabled:focus, +.btn-twitter[disabled]:focus, +fieldset[disabled] .btn-twitter:focus, +.btn-twitter.disabled.focus, +.btn-twitter[disabled].focus, +fieldset[disabled] .btn-twitter.focus { + background-color: #55acee; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-twitter .badge { + color: #55acee; + background-color: #fff; +} +.btn-vimeo { + background-color: #1ab7ea; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vimeo:focus, +.btn-vimeo.focus { + color: #fff; + background-color: #1295bf; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vimeo:hover { + color: #fff; + background-color: #1295bf; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vimeo:active, +.btn-vimeo.active, +.open > .dropdown-toggle.btn-vimeo { + color: #fff; + background-color: #1295bf; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vimeo:active:hover, +.btn-vimeo.active:hover, +.open > .dropdown-toggle.btn-vimeo:hover, +.btn-vimeo:active:focus, +.btn-vimeo.active:focus, +.open > .dropdown-toggle.btn-vimeo:focus, +.btn-vimeo:active.focus, +.btn-vimeo.active.focus, +.open > .dropdown-toggle.btn-vimeo.focus { + color: #fff; + background-color: #0f7b9f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vimeo:active, +.btn-vimeo.active, +.open > .dropdown-toggle.btn-vimeo { + background-image: none; +} +.btn-vimeo.disabled:hover, +.btn-vimeo[disabled]:hover, +fieldset[disabled] .btn-vimeo:hover, +.btn-vimeo.disabled:focus, +.btn-vimeo[disabled]:focus, +fieldset[disabled] .btn-vimeo:focus, +.btn-vimeo.disabled.focus, +.btn-vimeo[disabled].focus, +fieldset[disabled] .btn-vimeo.focus { + background-color: #1ab7ea; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vimeo .badge { + color: #1ab7ea; + background-color: #fff; +} +.btn-vk { + background-color: #587ea3; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vk:focus, +.btn-vk.focus { + color: #fff; + background-color: #466482; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vk:hover { + color: #fff; + background-color: #466482; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vk:active, +.btn-vk.active, +.open > .dropdown-toggle.btn-vk { + color: #fff; + background-color: #466482; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vk:active:hover, +.btn-vk.active:hover, +.open > .dropdown-toggle.btn-vk:hover, +.btn-vk:active:focus, +.btn-vk.active:focus, +.open > .dropdown-toggle.btn-vk:focus, +.btn-vk:active.focus, +.btn-vk.active.focus, +.open > .dropdown-toggle.btn-vk.focus { + color: #fff; + background-color: #3a526b; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vk:active, +.btn-vk.active, +.open > .dropdown-toggle.btn-vk { + background-image: none; +} +.btn-vk.disabled:hover, +.btn-vk[disabled]:hover, +fieldset[disabled] .btn-vk:hover, +.btn-vk.disabled:focus, +.btn-vk[disabled]:focus, +fieldset[disabled] .btn-vk:focus, +.btn-vk.disabled.focus, +.btn-vk[disabled].focus, +fieldset[disabled] .btn-vk.focus { + background-color: #587ea3; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-vk .badge { + color: #587ea3; + background-color: #fff; +} +.btn-yahoo { + background-color: #720e9e; + color: #fff; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-yahoo:focus, +.btn-yahoo.focus { + color: #fff; + background-color: #500a6f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-yahoo:hover { + color: #fff; + background-color: #500a6f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-yahoo:active, +.btn-yahoo.active, +.open > .dropdown-toggle.btn-yahoo { + color: #fff; + background-color: #500a6f; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-yahoo:active:hover, +.btn-yahoo.active:hover, +.open > .dropdown-toggle.btn-yahoo:hover, +.btn-yahoo:active:focus, +.btn-yahoo.active:focus, +.open > .dropdown-toggle.btn-yahoo:focus, +.btn-yahoo:active.focus, +.btn-yahoo.active.focus, +.open > .dropdown-toggle.btn-yahoo.focus { + color: #fff; + background-color: #39074e; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-yahoo:active, +.btn-yahoo.active, +.open > .dropdown-toggle.btn-yahoo { + background-image: none; +} +.btn-yahoo.disabled:hover, +.btn-yahoo[disabled]:hover, +fieldset[disabled] .btn-yahoo:hover, +.btn-yahoo.disabled:focus, +.btn-yahoo[disabled]:focus, +fieldset[disabled] .btn-yahoo:focus, +.btn-yahoo.disabled.focus, +.btn-yahoo[disabled].focus, +fieldset[disabled] .btn-yahoo.focus { + background-color: #720e9e; + border-color: rgba(0, 0, 0, 0.2); +} +.btn-yahoo .badge { + color: #720e9e; + background-color: #fff; +} +/* + * Plugin: Full Calendar + * --------------------- + */ + +.fc-button { + background: #f4f4f4; + background-image: none; + color: #444; + border-color: #ddd; + border-bottom-color: #ddd; +} +.fc-button:hover, +.fc-button:active, +.fc-button.hover { + background-color: #e9e9e9; +} +.fc-header-title h2 { + font-size: 15px; + line-height: 1.6em; + color: #666; + margin-left: 10px; +} +.fc-header-right { + padding-right: 10px; +} +.fc-header-left { + padding-left: 10px; +} +.fc-widget-header { + background: #fafafa; +} +.fc-grid { + width: 100%; + border: 0; +} +.fc-widget-header:first-of-type, +.fc-widget-content:first-of-type { + border-left: 0; + border-right: 0; +} +.fc-widget-header:last-of-type, +.fc-widget-content:last-of-type { + border-right: 0; +} +.fc-toolbar { + padding: 10px; + margin: 0; +} +.fc-day-number { + font-size: 20px; + font-weight: 300; + padding-right: 10px; +} +.fc-color-picker { + list-style: none; + margin: 0; + padding: 0; +} +.fc-color-picker > li { + float: left; + font-size: 30px; + margin-right: 5px; + line-height: 30px; +} +.fc-color-picker > li .fa { + -webkit-transition: -webkit-transform linear 0.3s; + -moz-transition: -moz-transform linear 0.3s; + -o-transition: -o-transform linear 0.3s; + transition: transform linear 0.3s; +} +.fc-color-picker > li .fa:hover { + -webkit-transform: rotate(30deg); + -ms-transform: rotate(30deg); + -o-transform: rotate(30deg); + transform: rotate(30deg); +} +#add-new-event { + -webkit-transition: all linear 0.3s; + -o-transition: all linear 0.3s; + transition: all linear 0.3s; +} +.external-event { + padding: 5px 10px; + font-weight: bold; + margin-bottom: 4px; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 3px; + cursor: move; +} +.external-event:hover { + box-shadow: inset 0 0 90px rgba(0, 0, 0, 0.2); +} +/* + * Plugin: Select2 + * --------------- + */ + +.select2-container--default.select2-container--focus, +.select2-selection.select2-container--focus, +.select2-container--default:focus, +.select2-selection:focus, +.select2-container--default:active, +.select2-selection:active { + outline: none; +} +.select2-container--default .select2-selection--single, +.select2-selection .select2-selection--single { + border: 1px solid #d2d6de; + border-radius: 0; + padding: 6px 12px; + height: 34px; +} +.select2-container--default.select2-container--open { + border-color: #337ab7; +} +.select2-dropdown { + border: 1px solid #d2d6de; + border-radius: 0; +} +.select2-container--default .select2-results__option--highlighted[aria-selected] { + background-color: #337ab7; + color: white; +} +.select2-results__option { + padding: 6px 12px; + user-select: none; + -webkit-user-select: none; +} +.select2-container .select2-selection--single .select2-selection__rendered { + padding-left: 0; + padding-right: 0; + height: auto; + margin-top: -4px; +} +.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered { + padding-right: 6px; + padding-left: 20px; +} +.select2-container--default .select2-selection--single .select2-selection__arrow { + height: 28px; + right: 3px; +} +.select2-container--default .select2-selection--single .select2-selection__arrow b { + margin-top: 0; +} +.select2-dropdown .select2-search__field, +.select2-search--inline .select2-search__field { + border: 1px solid #d2d6de; +} +.select2-dropdown .select2-search__field:focus, +.select2-search--inline .select2-search__field:focus { + outline: none; + border: 1px solid #337ab7; +} +.select2-container--default .select2-results__option[aria-disabled=true] { + color: #999; +} +.select2-container--default .select2-results__option[aria-selected=true] { + background-color: #ddd; +} +.select2-container--default .select2-results__option[aria-selected=true], +.select2-container--default .select2-results__option[aria-selected=true]:hover { + color: #444; +} +.select2-container--default .select2-selection--multiple { + border: 1px solid #d2d6de; + border-radius: 0; +} +.select2-container--default .select2-selection--multiple:focus { + border-color: #337ab7; +} +.select2-container--default.select2-container--focus .select2-selection--multiple { + border-color: #d2d6de; +} +.select2-container--default .select2-selection--multiple .select2-selection__choice { + background-color: #337ab7; + border-color: #2e6da4; + padding: 1px 10px; + color: #fff; +} +.select2-container--default .select2-selection--multiple .select2-selection__choice__remove { + margin-right: 5px; + color: rgba(255, 255, 255, 0.7); +} +.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { + color: #fff; +} +.select2-container .select2-selection--single .select2-selection__rendered { + padding-right: 10px; +} +/* + * General: Miscellaneous + * ---------------------- + */ + +.pad { + padding: 10px; +} +.margin { + margin: 10px; +} +.margin-bottom { + margin-bottom: 20px; +} +.margin-bottom-none { + margin-bottom: 0; +} +.margin-r-5 { + margin-right: 5px; +} +.inline { + display: inline; +} +.description-block { + display: block; + margin: 10px 0; + text-align: center; +} +.description-block.margin-bottom { + margin-bottom: 25px; +} +.description-block > .description-header { + margin: 0; + padding: 0; + font-weight: 600; + font-size: 16px; +} +.description-block > .description-text { + text-transform: uppercase; +} +.bg-red, +.bg-yellow, +.bg-aqua, +.bg-blue, +.bg-light-blue, +.bg-green, +.bg-navy, +.bg-teal, +.bg-olive, +.bg-lime, +.bg-orange, +.bg-fuchsia, +.bg-purple, +.bg-maroon, +.bg-black, +.bg-red-active, +.bg-yellow-active, +.bg-aqua-active, +.bg-blue-active, +.bg-light-blue-active, +.bg-green-active, +.bg-navy-active, +.bg-teal-active, +.bg-olive-active, +.bg-lime-active, +.bg-orange-active, +.bg-fuchsia-active, +.bg-purple-active, +.bg-maroon-active, +.bg-black-active, +.callout.callout-danger, +.label-danger, +.modal-danger .modal-body, +.callout.callout-warning, +.label-warning, +.modal-warning .modal-body, +.callout.callout-info, +.label-info, +.modal-info .modal-body, +.label-primary, +.modal-primary .modal-body, +.callout.callout-success, +.label-success, +.modal-success .modal-body, +.modal-danger .modal-header, +.modal-danger .modal-footer, +.modal-warning .modal-header, +.modal-warning .modal-footer, +.modal-info .modal-header, +.modal-info .modal-footer, +.modal-primary .modal-header, +.modal-primary .modal-footer, +.modal-success .modal-header, +.modal-success .modal-footer { + color: #fff !important; +} +.bg-gray { + color: #000; + background-color: #d2d6de !important; +} +.bg-gray-light { + background-color: #f7f7f7; +} +.bg-black { + background-color: #111 !important; +} +.bg-red, +.callout.callout-danger, +.label-danger, +.modal-danger .modal-body { + background-color: #dd4b39 !important; +} +.bg-yellow, +.callout.callout-warning, +.label-warning, +.modal-warning .modal-body { + background-color: #f39c12 !important; +} +.bg-aqua, +.callout.callout-info, +.label-info, +.modal-info .modal-body { + background-color: #00c0ef !important; +} +.bg-blue { + background-color: #0073b7 !important; +} +.bg-light-blue, +.label-primary, +.modal-primary .modal-body { + background-color: #337ab7 !important; +} +.bg-green, +.callout.callout-success, +.label-success, +.modal-success .modal-body { + background-color: #00a65a !important; +} +.bg-navy { + background-color: #001F3F !important; +} +.bg-teal { + background-color: #39CCCC !important; +} +.bg-olive { + background-color: #3D9970 !important; +} +.bg-lime { + background-color: #01FF70 !important; +} +.bg-orange { + background-color: #FF851B !important; +} +.bg-fuchsia { + background-color: #F012BE !important; +} +.bg-purple { + background-color: #605ca8 !important; +} +.bg-maroon { + background-color: #D81B60 !important; +} +.bg-gray-active { + color: #000; + background-color: #b5bbc8 !important; +} +.bg-black-active { + background-color: #000000 !important; +} +.bg-red-active, +.modal-danger .modal-header, +.modal-danger .modal-footer { + background-color: #d33724 !important; +} +.bg-yellow-active, +.modal-warning .modal-header, +.modal-warning .modal-footer { + background-color: #db8b0b !important; +} +.bg-aqua-active, +.modal-info .modal-header, +.modal-info .modal-footer { + background-color: #00a7d0 !important; +} +.bg-blue-active { + background-color: #005384 !important; +} +.bg-light-blue-active, +.modal-primary .modal-header, +.modal-primary .modal-footer { + background-color: #2d6aa0 !important; +} +.bg-green-active, +.modal-success .modal-header, +.modal-success .modal-footer { + background-color: #008d4c !important; +} +.bg-navy-active { + background-color: #001a35 !important; +} +.bg-teal-active { + background-color: #30bbbb !important; +} +.bg-olive-active { + background-color: #368763 !important; +} +.bg-lime-active { + background-color: #00e765 !important; +} +.bg-orange-active { + background-color: #ff7701 !important; +} +.bg-fuchsia-active { + background-color: #db0ead !important; +} +.bg-purple-active { + background-color: #555299 !important; +} +.bg-maroon-active { + background-color: #ca195a !important; +} +[class^="bg-"].disabled { + opacity: 0.65; + filter: alpha(opacity=65); +} +.text-red { + color: #dd4b39 !important; +} +.text-yellow { + color: #f39c12 !important; +} +.text-aqua { + color: #00c0ef !important; +} +.text-blue { + color: #0073b7 !important; +} +.text-black { + color: #111 !important; +} +.text-light-blue { + color: #337ab7 !important; +} +.text-green { + color: #00a65a !important; +} +.text-gray { + color: #d2d6de !important; +} +.text-navy { + color: #001F3F !important; +} +.text-teal { + color: #39CCCC !important; +} +.text-olive { + color: #3D9970 !important; +} +.text-lime { + color: #01FF70 !important; +} +.text-orange { + color: #FF851B !important; +} +.text-fuchsia { + color: #F012BE !important; +} +.text-purple { + color: #605ca8 !important; +} +.text-maroon { + color: #D81B60 !important; +} +.link-muted { + color: #7a869d; +} +.link-muted:hover, +.link-muted:focus { + color: #606c84; +} +.link-black { + color: #666; +} +.link-black:hover, +.link-black:focus { + color: #999; +} +.hide { + display: none !important; +} +.no-border { + border: 0 !important; +} +.no-padding { + padding: 0 !important; +} +.no-margin { + margin: 0 !important; +} +.no-shadow { + box-shadow: none !important; +} +.list-unstyled, +.chart-legend, +.contacts-list, +.users-list, +.mailbox-attachments { + list-style: none; + margin: 0; + padding: 0; +} +.list-group-unbordered > .list-group-item { + border-left: 0; + border-right: 0; + border-radius: 0; + padding-left: 0; + padding-right: 0; +} +.flat { + border-radius: 0 !important; +} +.text-bold, +.text-bold.table td, +.text-bold.table th { + font-weight: 700; +} +.text-sm { + font-size: 12px; +} +.jqstooltip { + padding: 5px !important; + width: auto !important; + height: auto !important; +} +.bg-teal-gradient { + background: #39CCCC !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #39CCCC), color-stop(1, #7adddd)) !important; + background: -ms-linear-gradient(bottom, #39CCCC, #7adddd) !important; + background: -moz-linear-gradient(center bottom, #39CCCC 0%, #7adddd 100%) !important; + background: -o-linear-gradient(#7adddd, #39CCCC) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39CCCC', GradientType=0) !important; + color: #fff; +} +.bg-light-blue-gradient { + background: #337ab7 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #337ab7), color-stop(1, #5898d0)) !important; + background: -ms-linear-gradient(bottom, #337ab7, #5898d0) !important; + background: -moz-linear-gradient(center bottom, #337ab7 0%, #5898d0 100%) !important; + background: -o-linear-gradient(#5898d0, #337ab7) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5898d0', endColorstr='#337ab7', GradientType=0) !important; + color: #fff; +} +.bg-blue-gradient { + background: #0073b7 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #0073b7), color-stop(1, #0089db)) !important; + background: -ms-linear-gradient(bottom, #0073b7, #0089db) !important; + background: -moz-linear-gradient(center bottom, #0073b7 0%, #0089db 100%) !important; + background: -o-linear-gradient(#0089db, #0073b7) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0089db', endColorstr='#0073b7', GradientType=0) !important; + color: #fff; +} +.bg-aqua-gradient { + background: #00c0ef !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #00c0ef), color-stop(1, #14d1ff)) !important; + background: -ms-linear-gradient(bottom, #00c0ef, #14d1ff) !important; + background: -moz-linear-gradient(center bottom, #00c0ef 0%, #14d1ff 100%) !important; + background: -o-linear-gradient(#14d1ff, #00c0ef) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#14d1ff', endColorstr='#00c0ef', GradientType=0) !important; + color: #fff; +} +.bg-yellow-gradient { + background: #f39c12 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #f39c12), color-stop(1, #f7bc60)) !important; + background: -ms-linear-gradient(bottom, #f39c12, #f7bc60) !important; + background: -moz-linear-gradient(center bottom, #f39c12 0%, #f7bc60 100%) !important; + background: -o-linear-gradient(#f7bc60, #f39c12) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7bc60', endColorstr='#f39c12', GradientType=0) !important; + color: #fff; +} +.bg-purple-gradient { + background: #605ca8 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #605ca8), color-stop(1, #9491c4)) !important; + background: -ms-linear-gradient(bottom, #605ca8, #9491c4) !important; + background: -moz-linear-gradient(center bottom, #605ca8 0%, #9491c4 100%) !important; + background: -o-linear-gradient(#9491c4, #605ca8) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9491c4', endColorstr='#605ca8', GradientType=0) !important; + color: #fff; +} +.bg-green-gradient { + background: #00a65a !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #00a65a), color-stop(1, #00ca6d)) !important; + background: -ms-linear-gradient(bottom, #00a65a, #00ca6d) !important; + background: -moz-linear-gradient(center bottom, #00a65a 0%, #00ca6d 100%) !important; + background: -o-linear-gradient(#00ca6d, #00a65a) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ca6d', endColorstr='#00a65a', GradientType=0) !important; + color: #fff; +} +.bg-red-gradient { + background: #dd4b39 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #dd4b39), color-stop(1, #e47365)) !important; + background: -ms-linear-gradient(bottom, #dd4b39, #e47365) !important; + background: -moz-linear-gradient(center bottom, #dd4b39 0%, #e47365 100%) !important; + background: -o-linear-gradient(#e47365, #dd4b39) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e47365', endColorstr='#dd4b39', GradientType=0) !important; + color: #fff; +} +.bg-black-gradient { + background: #111 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #111), color-stop(1, #2b2b2b)) !important; + background: -ms-linear-gradient(bottom, #111, #2b2b2b) !important; + background: -moz-linear-gradient(center bottom, #111 0%, #2b2b2b 100%) !important; + background: -o-linear-gradient(#2b2b2b, #111) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2b2b2b', endColorstr='#111', GradientType=0) !important; + color: #fff; +} +.bg-maroon-gradient { + background: #D81B60 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #D81B60), color-stop(1, #e73f7c)) !important; + background: -ms-linear-gradient(bottom, #D81B60, #e73f7c) !important; + background: -moz-linear-gradient(center bottom, #D81B60 0%, #e73f7c 100%) !important; + background: -o-linear-gradient(#e73f7c, #D81B60) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e73f7c', endColorstr='#D81B60', GradientType=0) !important; + color: #fff; +} +.description-block .description-icon { + font-size: 16px; +} +.no-pad-top { + padding-top: 0; +} +.position-static { + position: static !important; +} +.list-header { + font-size: 15px; + padding: 10px 4px; + font-weight: bold; + color: #666; +} +.list-seperator { + height: 1px; + background: #f4f4f4; + margin: 15px 0 9px 0; +} +.list-link > a { + padding: 4px; + color: #777; +} +.list-link > a:hover { + color: #222; +} +.font-light { + font-weight: 300; +} +.user-block:before, +.user-block:after { + content: " "; + display: table; +} +.user-block:after { + clear: both; +} +.user-block img { + width: 40px; + height: 40px; + float: left; +} +.user-block .username, +.user-block .description, +.user-block .comment { + display: block; + margin-left: 50px; +} +.user-block .username { + font-size: 16px; + font-weight: 600; +} +.user-block .description { + color: #999; + font-size: 13px; +} +.user-block.user-block-sm .username, +.user-block.user-block-sm .description, +.user-block.user-block-sm .comment { + margin-left: 40px; +} +.user-block.user-block-sm .username { + font-size: 14px; +} +.img-sm, +.img-md, +.img-lg, +.box-comments .box-comment img, +.user-block.user-block-sm img { + float: left; +} +.img-sm, +.box-comments .box-comment img, +.user-block.user-block-sm img { + width: 30px !important; + height: 30px !important; +} +.img-sm + .img-push { + margin-left: 40px; +} +.img-md { + width: 60px; + height: 60px; +} +.img-md + .img-push { + margin-left: 70px; +} +.img-lg { + width: 100px; + height: 100px; +} +.img-lg + .img-push { + margin-left: 110px; +} +.img-bordered { + border: 3px solid #d2d6de; + padding: 3px; +} +.img-bordered-sm { + border: 2px solid #d2d6de; + padding: 2px; +} +.attachment-block { + border: 1px solid #f4f4f4; + padding: 5px; + margin-bottom: 10px; + background: #f7f7f7; +} +.attachment-block .attachment-img { + max-width: 100px; + max-height: 100px; + height: auto; + float: left; +} +.attachment-block .attachment-pushed { + margin-left: 110px; +} +.attachment-block .attachment-heading { + margin: 0; +} +.attachment-block .attachment-text { + color: #555; +} +.connectedSortable { + min-height: 100px; +} +.ui-helper-hidden-accessible { + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; +} +.sort-highlight { + background: #f4f4f4; + border: 1px dashed #ddd; + margin-bottom: 10px; +} +.full-opacity-hover { + opacity: 0.65; + filter: alpha(opacity=65); +} +.full-opacity-hover:hover { + opacity: 1; + filter: alpha(opacity=100); +} +.chart { + position: relative; + overflow: hidden; + width: 100%; +} +.chart svg, +.chart canvas { + width: 100% !important; +} +/* + * Misc: print + * ----------- + */ + +@media print { + .no-print, + .main-sidebar, + .left-side, + .main-header, + .content-header { + display: none !important; + } + .content-wrapper, + .right-side, + .main-footer { + margin-left: 0 !important; + min-height: 0 !important; + -webkit-transform: translate(0, 0) !important; + -ms-transform: translate(0, 0) !important; + -o-transform: translate(0, 0) !important; + transform: translate(0, 0) !important; + } + .fixed .content-wrapper, + .fixed .right-side { + padding-top: 0 !important; + } + .invoice { + width: 100%; + border: 0; + margin: 0; + padding: 0; + } + .invoice-col { + float: left; + width: 33.3333333%; + } + .table-responsive { + overflow: auto; + } + .table-responsive > .table tr th, + .table-responsive > .table tr td { + white-space: normal !important; + } +} diff --git a/assets/css/bootstrap/bootstrap.css b/assets/css/bootstrap/bootstrap.css new file mode 100644 index 0000000..193a29f --- /dev/null +++ b/assets/css/bootstrap/bootstrap.css @@ -0,0 +1,6817 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 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; + -ms-text-size-adjust: 100%; + -webkit-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 { + font-size: 2em; + margin: 0.67em 0; +} +mark { + background: #ff0; + color: #000; +} +small { + font-size: 80%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + box-sizing: content-box; + height: 0; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} +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 { + border: 0; + padding: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + 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-appearance: textfield; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ + +@media print { + *, + *:before, + *:after { + background: transparent !important; + color: #000 !important; + box-shadow: none !important; + text-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: "Roboto", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.428571429; + color: #333333; + background-color: #f4f4f4; +} +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: 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 { + padding: 4px; + line-height: 1.428571429; + background-color: #f4f4f4; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + -o-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eeeeee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + 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: #777777; +} +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: 30px; +} +h2, +.h2 { + font-size: 24px; +} +h3, +.h3 { + font-size: 18px; +} +h4, +.h4 { + font-size: 14px; +} +h5, +.h5 { + font-size: 12px; +} +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 { + background-color: #fcf8e3; + padding: 0.2em; +} +.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: #777777; +} +.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 #eeeeee; +} +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; + list-style: none; + margin-left: -5px; +} +.list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.428571429; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eeeeee; +} +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.428571429; + color: #777777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; + text-align: right; +} +.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.428571429; +} +code, +kbd, +pre, +samp { + font-family: "Roboto Mono", Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #333333; + background-color: #f5f5f5; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.428571429; + word-break: break-all; + word-wrap: break-word; + color: #333333; + 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 { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +.row { + margin-left: -15px; + margin-right: -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-left: 15px; + padding-right: 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.666666667%; +} +.col-xs-10 { + width: 83.333333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.666666667%; +} +.col-xs-7 { + width: 58.333333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.666666667%; +} +.col-xs-4 { + width: 33.333333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.666666667%; +} +.col-xs-1 { + width: 8.333333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.666666667%; +} +.col-xs-pull-10 { + right: 83.333333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.666666667%; +} +.col-xs-pull-7 { + right: 58.333333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.666666667%; +} +.col-xs-pull-4 { + right: 33.333333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.666666667%; +} +.col-xs-pull-1 { + right: 8.333333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.666666667%; +} +.col-xs-push-10 { + left: 83.333333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.666666667%; +} +.col-xs-push-7 { + left: 58.333333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.666666667%; +} +.col-xs-push-4 { + left: 33.333333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.666666667%; +} +.col-xs-push-1 { + left: 8.333333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.666666667%; +} +.col-xs-offset-10 { + margin-left: 83.333333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.666666667%; +} +.col-xs-offset-7 { + margin-left: 58.333333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.666666667%; +} +.col-xs-offset-4 { + margin-left: 33.333333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.666666667%; +} +.col-xs-offset-1 { + margin-left: 8.333333333%; +} +.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.666666667%; + } + .col-sm-10 { + width: 83.333333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.666666667%; + } + .col-sm-7 { + width: 58.333333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.666666667%; + } + .col-sm-4 { + width: 33.333333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.666666667%; + } + .col-sm-1 { + width: 8.333333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.666666667%; + } + .col-sm-pull-10 { + right: 83.333333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.666666667%; + } + .col-sm-pull-7 { + right: 58.333333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.666666667%; + } + .col-sm-pull-4 { + right: 33.333333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.666666667%; + } + .col-sm-pull-1 { + right: 8.333333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.666666667%; + } + .col-sm-push-10 { + left: 83.333333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.666666667%; + } + .col-sm-push-7 { + left: 58.333333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.666666667%; + } + .col-sm-push-4 { + left: 33.333333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.666666667%; + } + .col-sm-push-1 { + left: 8.333333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.666666667%; + } + .col-sm-offset-10 { + margin-left: 83.333333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.666666667%; + } + .col-sm-offset-7 { + margin-left: 58.333333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.666666667%; + } + .col-sm-offset-4 { + margin-left: 33.333333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.666666667%; + } + .col-sm-offset-1 { + margin-left: 8.333333333%; + } + .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.666666667%; + } + .col-md-10 { + width: 83.333333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.666666667%; + } + .col-md-7 { + width: 58.333333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.666666667%; + } + .col-md-4 { + width: 33.333333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.666666667%; + } + .col-md-1 { + width: 8.333333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.666666667%; + } + .col-md-pull-10 { + right: 83.333333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.666666667%; + } + .col-md-pull-7 { + right: 58.333333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.666666667%; + } + .col-md-pull-4 { + right: 33.333333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.666666667%; + } + .col-md-pull-1 { + right: 8.333333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.666666667%; + } + .col-md-push-10 { + left: 83.333333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.666666667%; + } + .col-md-push-7 { + left: 58.333333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.666666667%; + } + .col-md-push-4 { + left: 33.333333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.666666667%; + } + .col-md-push-1 { + left: 8.333333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.666666667%; + } + .col-md-offset-10 { + margin-left: 83.333333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.666666667%; + } + .col-md-offset-7 { + margin-left: 58.333333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.666666667%; + } + .col-md-offset-4 { + margin-left: 33.333333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.666666667%; + } + .col-md-offset-1 { + margin-left: 8.333333333%; + } + .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.666666667%; + } + .col-lg-10 { + width: 83.333333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.666666667%; + } + .col-lg-7 { + width: 58.333333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.666666667%; + } + .col-lg-4 { + width: 33.333333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.666666667%; + } + .col-lg-1 { + width: 8.333333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.666666667%; + } + .col-lg-pull-10 { + right: 83.333333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.666666667%; + } + .col-lg-pull-7 { + right: 58.333333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.666666667%; + } + .col-lg-pull-4 { + right: 33.333333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.666666667%; + } + .col-lg-pull-1 { + right: 8.333333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.666666667%; + } + .col-lg-push-10 { + left: 83.333333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.666666667%; + } + .col-lg-push-7 { + left: 58.333333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.666666667%; + } + .col-lg-push-4 { + left: 33.333333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.666666667%; + } + .col-lg-push-1 { + left: 8.333333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.666666667%; + } + .col-lg-offset-10 { + margin-left: 83.333333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.666666667%; + } + .col-lg-offset-7 { + margin-left: 58.333333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.666666667%; + } + .col-lg-offset-4 { + margin-left: 33.333333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.666666667%; + } + .col-lg-offset-1 { + margin-left: 8.333333333%; + } + .col-lg-offset-0 { + margin-left: 0%; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777777; + 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.428571429; + 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: #f4f4f4; +} +.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; + float: none; + display: table-column; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + float: none; + display: table-cell; +} +.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 { + overflow-x: auto; + min-height: 0.01%; +} +@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 { + padding: 0; + margin: 0; + border: 0; + min-width: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333333; + 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: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.428571429; + color: #555555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.428571429; + color: #555555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, 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, 0.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.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 { + border: 0; + background-color: transparent; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eeeeee; + 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-left: -20px; + margin-top: 4px \9; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + 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 { + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; + min-height: 34px; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-left: 0; + padding-right: 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, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + border-color: #3c763d; + background-color: #dff0d8; +} +.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, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + border-color: #8a6d3b; + background-color: #fcf8e3; +} +.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, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + border-color: #a94442; + background-color: #f2dede; +} +.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 { + margin-top: 0; + margin-bottom: 0; + padding-top: 7px; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-left: -15px; + margin-right: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + text-align: right; + margin-bottom: 0; + padding-top: 7px; + } +} +.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; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + touch-action: manipulation; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 6px 12px; + font-size: 14px; + line-height: 1.428571429; + border-radius: 4px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + 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 { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} +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 { + color: #337ab7; + font-weight: normal; + 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: #777777; + 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 0.15s linear; + -o-transition: opacity 0.15s linear; + transition: opacity 0.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-property: height, visibility; + transition-property: height, visibility; + -webkit-transition-duration: 0.35s; + transition-duration: 0.35s; + -webkit-transition-timing-function: ease; + transition-timing-function: ease; +} +.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; + list-style: none; + font-size: 14px; + text-align: left; + background-color: #fff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + background-clip: padding-box; +} +.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.428571429; + color: #333333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + text-decoration: none; + color: #262626; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + outline: 0; + background-color: #337ab7; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + cursor: not-allowed; +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + left: auto; + right: 0; +} +.dropdown-menu-left { + left: 0; + right: auto; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.428571429; + color: #777777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; + content: ""; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + left: auto; + right: 0; + } + .navbar-right .dropdown-menu-left { + left: 0; + right: auto; + } +} +.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-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-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-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 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-right-radius: 4px; + border-top-left-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-right-radius: 0; + border-top-left-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-right-radius: 0; + border-top-left-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + float: none; + display: table-cell; + 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-left: 0; + padding-right: 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: #555555; + text-align: center; + background-color: #eeeeee; + 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-bottom-right-radius: 0; + border-top-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-bottom-left-radius: 0; + border-top-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 { + margin-bottom: 0; + padding-left: 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: #eeeeee; +} +.nav > li.disabled > a { + color: #777777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777777; + text-decoration: none; + background-color: transparent; + cursor: not-allowed; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eeeeee; + 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.428571429; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eeeeee #eeeeee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555555; + background-color: #f4f4f4; + border: 1px solid #ddd; + border-bottom-color: transparent; + cursor: default; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +.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: #f4f4f4; + } +} +.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 { + text-align: center; + margin-bottom: 5px; +} +.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: #f4f4f4; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-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 { + overflow-x: visible; + padding-right: 15px; + padding-left: 15px; + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch; +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + 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-left: 0; + padding-right: 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; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; + height: 50px; +} +.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; + margin-right: 15px; + padding: 9px 10px; + margin-top: 8px; + 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; + 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 { + margin-left: -15px; + margin-right: -15px; + padding: 10px 15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + margin-top: 8px; + margin-bottom: 8px; +} +@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; + border: 0; + margin-left: 0; + margin-right: 0; + padding-top: 0; + padding-bottom: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-right-radius: 4px; + border-top-left-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-left: 15px; + margin-right: 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 { + background-color: #e7e7e7; + color: #555; +} +@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 { + background-color: #080808; + color: #fff; +} +@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 { + content: "/\00a0"; + padding: 0 5px; + color: #ccc; +} +.breadcrumb > .active { + color: #777777; +} +.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; + line-height: 1.428571429; + text-decoration: none; + color: #337ab7; + background-color: #fff; + border: 1px solid #ddd; + margin-left: -1px; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-bottom-right-radius: 4px; + border-top-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: #eeeeee; + 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; + background-color: #337ab7; + border-color: #337ab7; + cursor: default; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777777; + background-color: #fff; + border-color: #ddd; + cursor: not-allowed; +} +.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-bottom-left-radius: 6px; + border-top-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-bottom-right-radius: 6px; + border-top-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-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + list-style: none; + text-align: center; +} +.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: #eeeeee; +} +.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: #777777; + background-color: #fff; + cursor: not-allowed; +} +.label { + display: inline; + padding: 0.2em 0.6em 0.3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.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: #777777; +} +.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; + color: #fff; + line-height: 1; + vertical-align: middle; + white-space: nowrap; + text-align: center; + background-color: #777777; + 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: #eeeeee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d4d4d4; +} +.container .jumbotron, +.container-fluid .jumbotron { + border-radius: 6px; + padding-left: 15px; + padding-right: 15px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-left: 60px; + padding-right: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.428571429; + background-color: #f4f4f4; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border 0.2s ease-in-out; + -o-transition: border 0.2s ease-in-out; + transition: border 0.2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-left: auto; + margin-right: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333333; +} +.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 { + background-color: #dff0d8; + border-color: #d6e9c6; + color: #3c763d; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + background-color: #d9edf7; + border-color: #bce8f1; + color: #31708f; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + background-color: #fcf8e3; + border-color: #faebcc; + color: #8a6d3b; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + background-color: #f2dede; + border-color: #ebccd1; + color: #a94442; +} +.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; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 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, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + -o-transition: width 0.6s ease; + transition: width 0.6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + 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); + 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); + 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); + 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, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + 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); + 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); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + 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); + 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); + 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); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + 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); + 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); + 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); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + 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); + 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); + 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); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + zoom: 1; + overflow: hidden; +} +.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 { + margin-bottom: 20px; + padding-left: 0; +} +.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-right-radius: 4px; + border-top-left-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 { + text-decoration: none; + color: #555; + 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 { + background-color: #eeeeee; + color: #777777; + cursor: not-allowed; +} +.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: #777777; +} +.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, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 3px; + border-top-left-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-right-radius: 3px; + border-top-left-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-right-radius: 0; + border-top-left-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-left: 15px; + padding-right: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-right-radius: 3px; + border-top-left-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-left-radius: 3px; + border-bottom-right-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 { + border: 0; + margin-bottom: 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: #333333; + 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: #333333; +} +.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; + left: 0; + bottom: 0; + height: 100%; + width: 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, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 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; + opacity: 0.2; + filter: alpha(opacity=20); +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.modal-open { + overflow: hidden; +} +.modal { + display: none; + overflow: hidden; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform 0.3s ease-out; + -moz-transition: -moz-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} +.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; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + background-clip: padding-box; + outline: 0; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.428571429; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0; +} +.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, 0.5); + box-shadow: 0 5px 15px rgba(0, 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: "Roboto", Helvetica, Arial, sans-serif; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.428571429; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 12px; + opacity: 0; + filter: alpha(opacity=0); +} +.tooltip.in { + opacity: 0.9; + filter: alpha(opacity=90); +} +.tooltip.top { + margin-top: -3px; + padding: 5px 0; +} +.tooltip.right { + margin-left: 3px; + padding: 0 5px; +} +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0; +} +.tooltip.left { + margin-left: -3px; + padding: 0 5px; +} +.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 { + bottom: 0; + right: 5px; + 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: "Roboto", Helvetica, Arial, sans-serif; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + line-break: auto; + line-height: 1.428571429; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + white-space: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + font-size: 14px; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + margin: 0; + padding: 8px 14px; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #eaeaea; + 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 { + border-width: 10px; + content: ""; +} +.popover.top > .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #999999; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px; +} +.popover.top > .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #fff; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #999999; + border-right-color: rgba(0, 0, 0, 0.25); +} +.popover.right > .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #fff; +} +.popover.bottom > .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999999; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px; +} +.popover.bottom > .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + 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: #999999; + border-left-color: rgba(0, 0, 0, 0.25); +} +.popover.left > .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #fff; + bottom: -10px; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + overflow: hidden; + width: 100%; +} +.carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: 0.6s ease-in-out left; + -o-transition: 0.6s ease-in-out left; + transition: 0.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 0.6s ease-in-out; + -moz-transition: -moz-transform 0.6s ease-in-out; + -o-transition: -o-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + -webkit-backface-visibility: hidden; + -moz-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + -moz-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + left: 0; + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + left: 0; + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + left: 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; + left: 0; + bottom: 0; + width: 15%; + opacity: 0.5; + filter: alpha(opacity=50); + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); + background-color: rgba(0, 0, 0, 0); +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); +} +.carousel-control.right { + left: auto; + right: 0; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); +} +.carousel-control:hover, +.carousel-control:focus { + outline: 0; + color: #fff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + margin-top: -10px; + z-index: 5; + display: inline-block; +} +.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; + line-height: 1; + font-family: serif; +} +.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%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid #fff; + border-radius: 10px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); +} +.carousel-indicators .active { + margin: 0; + width: 12px; + height: 12px; + background-color: #fff; +} +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 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 { + left: 20%; + right: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.container:before, +.container-fluid:before, +.row:before, +.form-horizontal .form-group:before, +.btn-toolbar:before, +.btn-group-vertical > .btn-group:before, +.nav:before, +.navbar:before, +.navbar-header:before, +.navbar-collapse:before, +.pager:before, +.panel-body:before, +.modal-header:before, +.modal-footer:before, +.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 { + content: " "; + display: table; +} +.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-left: auto; + margin-right: 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; + } +} diff --git a/assets/css/font-awesome.min.css b/assets/css/font-awesome.min.css new file mode 100644 index 0000000..9b27f8e --- /dev/null +++ b/assets/css/font-awesome.min.css @@ -0,0 +1,4 @@ +/*! + * Font Awesome 4.6.3 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.6.3');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.6.3') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.6.3') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.6.3') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.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} diff --git a/assets/css/highlight.css b/assets/css/highlight.css new file mode 100644 index 0000000..f1bfade --- /dev/null +++ b/assets/css/highlight.css @@ -0,0 +1,99 @@ +/* + +Original highlight.js style (c) Ivan Sagalaev + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #F0F0F0; +} + + +/* Base color: saturation 0; */ + +.hljs, +.hljs-subst { + color: #444; +} + +.hljs-comment { + color: #888888; +} + +.hljs-keyword, +.hljs-attribute, +.hljs-selector-tag, +.hljs-meta-keyword, +.hljs-doctag, +.hljs-name { + font-weight: bold; +} + + +/* User color: hue: 0 */ + +.hljs-type, +.hljs-string, +.hljs-number, +.hljs-selector-id, +.hljs-selector-class, +.hljs-quote, +.hljs-template-tag, +.hljs-deletion { + color: #880000; +} + +.hljs-title, +.hljs-section { + color: #880000; + font-weight: bold; +} + +.hljs-regexp, +.hljs-symbol, +.hljs-variable, +.hljs-template-variable, +.hljs-link, +.hljs-selector-attr, +.hljs-selector-pseudo { + color: #BC6060; +} + + +/* Language color: hue: 90; */ + +.hljs-literal { + color: #78A960; +} + +.hljs-built_in, +.hljs-bullet, +.hljs-code, +.hljs-addition { + color: #397300; +} + + +/* Meta color: hue: 200 */ + +.hljs-meta { + color: #1f7199; +} + +.hljs-meta-string { + color: #4d99bf; +} + + +/* Misc effects */ + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/assets/css/mermaid.css b/assets/css/mermaid.css new file mode 100644 index 0000000..769933f --- /dev/null +++ b/assets/css/mermaid.css @@ -0,0 +1,273 @@ +/* Flowchart variables */ +/* Sequence Diagram variables */ +/* Gantt chart variables */ +.mermaid .label { + color: #333; +} +.node rect, +.node circle, +.node ellipse, +.node polygon { + fill: #ECECFF; + stroke: #CCCCFF; + stroke-width: 1px; +} +.edgePath .path { + stroke: #333333; +} +.edgeLabel { + background-color: #e8e8e8; +} +.cluster rect { + fill: #ffffde !important; + rx: 4 !important; + stroke: #aaaa33 !important; + stroke-width: 1px !important; +} +.cluster text { + fill: #333; +} +.actor { + stroke: #CCCCFF; + fill: #ECECFF; +} +text.actor { + fill: black; + stroke: none; +} +.actor-line { + stroke: grey; +} +.messageLine0 { + stroke-width: 1.5; + stroke-dasharray: "2 2"; + marker-end: "url(#arrowhead)"; + stroke: #333; +} +.messageLine1 { + stroke-width: 1.5; + stroke-dasharray: "2 2"; + stroke: #333; +} +#arrowhead { + fill: #333; +} +#crosshead path { + fill: #333 !important; + stroke: #333 !important; +} +.messageText { + fill: #333; + stroke: none; +} +.labelBox { + stroke: #CCCCFF; + fill: #ECECFF; +} +.labelText { + fill: black; + stroke: none; +} +.loopText { + fill: black; + stroke: none; +} +.loopLine { + stroke-width: 2; + stroke-dasharray: "2 2"; + marker-end: "url(#arrowhead)"; + stroke: #CCCCFF; +} +.note { + stroke: #aaaa33; + fill: #fff5ad; +} +.noteText { + fill: black; + stroke: none; + font-family: 'trebuchet ms', verdana, arial; + font-size: 14px; +} +/** Section styling */ +.section { + stroke: none; + opacity: 0.2; +} +.section0 { + fill: rgba(102, 102, 255, 0.49); +} +.section2 { + fill: #fff400; +} +.section1, +.section3 { + fill: white; + opacity: 0.2; +} +.sectionTitle0 { + fill: #333; +} +.sectionTitle1 { + fill: #333; +} +.sectionTitle2 { + fill: #333; +} +.sectionTitle3 { + fill: #333; +} +.sectionTitle { + text-anchor: start; + font-size: 11px; + text-height: 14px; +} +/* Grid and axis */ +.grid .tick { + stroke: lightgrey; + opacity: 0.3; + shape-rendering: crispEdges; +} +.grid path { + stroke-width: 0; +} +/* Today line */ +.today { + fill: none; + stroke: red; + stroke-width: 2px; +} +/* Task styling */ +/* Default task */ +.task { + stroke-width: 2; +} +.taskText { + text-anchor: middle; + font-size: 11px; +} +.taskTextOutsideRight { + fill: black; + text-anchor: start; + font-size: 11px; +} +.taskTextOutsideLeft { + fill: black; + text-anchor: end; + font-size: 11px; +} +/* Specific task settings for the sections*/ +.taskText0, +.taskText1, +.taskText2, +.taskText3 { + fill: white; +} +.task0, +.task1, +.task2, +.task3 { + fill: #8a90dd; + stroke: #534fbc; +} +.taskTextOutside0, +.taskTextOutside2 { + fill: black; +} +.taskTextOutside1, +.taskTextOutside3 { + fill: black; +} +/* Active task */ +.active0, +.active1, +.active2, +.active3 { + fill: #bfc7ff; + stroke: #534fbc; +} +.activeText0, +.activeText1, +.activeText2, +.activeText3 { + fill: black !important; +} +/* Completed task */ +.done0, +.done1, +.done2, +.done3 { + stroke: grey; + fill: lightgrey; + stroke-width: 2; +} +.doneText0, +.doneText1, +.doneText2, +.doneText3 { + fill: black !important; +} +/* Tasks on the critical line */ +.crit0, +.crit1, +.crit2, +.crit3 { + stroke: #ff8888; + fill: red; + stroke-width: 2; +} +.activeCrit0, +.activeCrit1, +.activeCrit2, +.activeCrit3 { + stroke: #ff8888; + fill: #bfc7ff; + stroke-width: 2; +} +.doneCrit0, +.doneCrit1, +.doneCrit2, +.doneCrit3 { + stroke: #ff8888; + fill: lightgrey; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; +} +.doneCritText0, +.doneCritText1, +.doneCritText2, +.doneCritText3 { + fill: black !important; +} +.activeCritText0, +.activeCritText1, +.activeCritText2, +.activeCritText3 { + fill: black !important; +} +.titleText { + text-anchor: middle; + font-size: 18px; + fill: black; +} +/* + + +*/ +.node text { + font-family: 'trebuchet ms', verdana, arial; + font-size: 14px; +} +div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: 'trebuchet ms', verdana, arial; + font-size: 12px; + background: #ffffde; + border: 1px solid #aaaa33; + border-radius: 2px; + pointer-events: none; + z-index: 100; +} diff --git a/assets/css/override.css b/assets/css/override.css new file mode 100644 index 0000000..c06367b --- /dev/null +++ b/assets/css/override.css @@ -0,0 +1,31 @@ +.bottom-footer { + margin-bottom: 40px !important; +} +.gitter-open-chat-button { + right: 90px; +} +.gitter-chat-embed { + top: 49px; + border-top: 1px solid #000; + z-index: 10000; +} +ul.share-buttons { + list-style: none; + padding: 0; +} +ul.share-buttons li { + display: inline; +} +ul.share-buttons .sr-only { + position: absolute; + clip: rect(1px 1px 1px 1px); + clip: rect(1px, 1px, 1px, 1px); + padding: 0; + border: 0; + height: 1px; + width: 1px; + overflow: hidden; +} +ul.share-buttons img { + width: 32px; +} diff --git a/assets/css/theme/theme.css b/assets/css/theme/theme.css new file mode 100644 index 0000000..ce9ad58 --- /dev/null +++ b/assets/css/theme/theme.css @@ -0,0 +1,589 @@ +body.layout-boxed { + background-image: none; + background-color: #f4f4f4; +} +body.layout-boxed .top-banner { + background-color: #337ab7; + position: absolute; + top: 0; + left: 0; + right: 0; + height: 80px; +} +body.layout-boxed.no-gutter .top-banner { + height: 50px; +} +body.layout-boxed .wrapper { + box-shadow: none; + border: none; +} +body.layout-boxed .bottom-wrapper { + border: none; + background: transparent; +} +body.layout-top-nav .content-wrapper, +body.layout-top-nav .main-footer { + border-left: none; +} +body.layout-top-nav .main-header > .navbar { + /* make space for logo, even when no sidebar */ + margin-left: 230px; +} +@media (max-width: 767px) { + body.layout-top-nav .main-header > .navbar { + margin-left: 0; + } +} +h5, +h6 { + font-weight: 600; +} +h1 { + font-weight: bold; +} +.content-header > h1 > small { + font-size: 18px; +} +@media (max-width: 767px) { + body.layout-boxed .wrapper { + border-left: none; + border-right: none; + } + body.layout-boxed .main-sidebar { + width: 229px; + } + body.layout-boxed .main-sidebar, + body.layout-boxed .left-side { + padding-top: 50px; + } + body.layout-boxed .wrapper { + border-radius: 0; + } + body.layout-boxed .content-wrapper, + body.layout-boxed .main-footer { + margin-left: -1px; + } +} +.main-header { + background-color: #337ab7; +} +.main-header .navbar { + background-color: #337ab7; +} +.main-header .navbar .nav > li > a { + color: #fff; +} +.main-header .navbar .nav > li > a:hover, +.main-header .navbar .nav > li > a:active, +.main-header .navbar .nav > li > a:focus, +.main-header .navbar .nav .open > a, +.main-header .navbar .nav .open > a:hover, +.main-header .navbar .nav .open > a:focus, +.main-header .navbar .nav > .active > a { + background: rgba(0, 0, 0, 0.1); + color: #f6f6f6; +} +.main-header .navbar .sidebar-toggle { + color: #fff; +} +.main-header .navbar .sidebar-toggle:hover { + color: #f6f6f6; + background: rgba(0, 0, 0, 0.1); +} +.main-header .navbar .sidebar-toggle { + color: #fff; +} +.main-header .navbar .sidebar-toggle:hover { + background-color: #2e6da4; +} +.main-header .navbar .navbar-toggle { + font-family: "fontAwesome"; +} +.main-header .navbar .navbar-toggle:before { + content: "\f0c9"; +} +@media (max-width: 767px) { + .main-header .navbar .dropdown-menu li.divider { + background-color: rgba(255, 255, 255, 0.1); + } + .main-header .navbar .dropdown-menu li a { + color: #fff; + } + .main-header .navbar .dropdown-menu li a:hover { + background: #2e6da4; + } +} +.main-header .logo { + background-color: #337ab7; + color: #fff; + border-bottom: 0 solid transparent; +} +.main-header .logo:hover { + background-color: #3278b3; +} +@media (max-width: 767px) { + .main-header .logo { + position: absolute; + top: 0; + z-index: 1001; + background-color: transparent; + width: 170px; + left: 50%; + margin-left: -85px; + padding: 0; + } + .main-header .logo .logo-lg { + width: 170px; + } +} +.main-header li.user-header { + background-color: #337ab7; +} +.wrapper, +.layout-boxed .wrapper { + margin-bottom: 30px; +} +.content-header { + background: transparent; + padding-top: 0; +} +.content-header h1 { + font-size: 36px; + background-color: #f4f4f4; + padding: 8px 16px; + border-radius: 6px; + border-bottom: 2px solid #ddd; +} +.content, +.content-header { + padding-left: 30px; + padding-right: 30px; +} +.content h1 { + color: #5094ce; + font-style: italic; +} +.wrapper, +.main-sidebar, +.left-side { + background-color: #f9fafc; +} +.content-wrapper, +.main-footer { + border-left: 1px solid #d2d6de; +} +.user-panel > .info, +.user-panel > .info > a { + color: #444; +} +.sidebar-menu > li { + -webkit-transition: border-left-color 0.3s ease; + -o-transition: border-left-color 0.3s ease; + transition: border-left-color 0.3s ease; +} +.sidebar-menu > li.header { + color: #848484; + background: #f9fafc; +} +.sidebar-menu > li > a { + border-left: 3px solid transparent; + font-weight: 600; +} +.sidebar-menu > li:hover > a, +.sidebar-menu > li.active > a { + color: #000; + background: #f4f4f5; +} +.sidebar-menu > li.active { + border-left-color: #337ab7; +} +.sidebar-menu > li.active > a { + font-weight: 600; +} +.sidebar-menu > li > .treeview-menu { + background: #f4f4f5; +} +.sidebar a { + color: #444; +} +.sidebar a:hover { + text-decoration: none; +} +.treeview-menu > li > a { + color: #777; +} +.treeview-menu > li.active > a, +.treeview-menu > li > a:hover { + color: #000; +} +.treeview-menu > li.active > a { + font-weight: 600; +} +.sidebar-form { + border-radius: 3px; + border: 1px solid #d2d6de; + margin: 10px 10px; +} +.sidebar-form input[type="text"], +.sidebar-form .btn { + box-shadow: none; + background-color: #fff; + border: 1px solid transparent; + height: 35px; +} +.sidebar-form input[type="text"] { + color: #666; + border-top-left-radius: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 2px; +} +.sidebar-form input[type="text"]:focus, +.sidebar-form input[type="text"]:focus + .input-group-btn .btn { + background-color: #fff; + color: #666; +} +.sidebar-form input[type="text"]:focus + .input-group-btn .btn { + border-left-color: #fff; +} +.sidebar-form .btn { + color: #999; + border-top-left-radius: 0; + border-top-right-radius: 2px; + border-bottom-right-radius: 2px; + border-bottom-left-radius: 0; +} +@media (min-width: 768px) { + .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { + border-left: 1px solid #d2d6de; + } +} +.sidebar { + padding: 30px 12px 0 12px; +} +.sidebar-menu, +.sidebar-menu li, +.sidebar-menu li a { + white-space: normal; + overflow: hidden; + text-overflow: ellipsis; + font-weight: normal; + border: none; +} +.sidebar-menu li { + position: relative; +} +.sidebar-menu > li > a { + padding-top: 5px; + padding-bottom: 5px; + padding-left: 24px; +} +.sidebar-menu li a:link, +.sidebar-menu li a:visited, +.sidebar-menu li a:active { + color: #333333; +} +.sidebar-menu li a:hover { + color: #337ab7; +} +.sidebar-menu li.treeview.active > a, +.sidebar-menu > li.treeview.active > a, +.sidebar-menu li.treeview.active:hover > a, +.sidebar-menu > li.treeview.active:hover > a, +.sidebar-menu li:hover > a, +.sidebar-menu > li:hover > a, +.sidebar-menu li.active > a, +.sidebar-menu > li.active > a, +.sidebar-menu li.active:hover > a, +.sidebar-menu > li.active:hover > a { + background: transparent; +} +.sidebar-menu li.selected { + background-color: #eff5fb; + border-radius: 6px; +} +.sidebar-menu li.selected > a { + background-color: #337ab7 !important; + color: white; + font-weight: 600; +} +.sidebar-menu li.selected > a:link, +.sidebar-menu li.selected > a:visited, +.sidebar-menu li.selected > a:active, +.sidebar-menu li.selected > a:hover { + color: white; +} +.sidebar-menu li > a.expand { + position: absolute; + left: -18px; + top: 2px; + font-size: 18px; + /* Font Awesome */ + margin-left: 0.3em; + display: inline-block; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + line-height: 1; + -webkit-font-smoothing: antialiased; +} +.sidebar-menu li > a.expand:before { + content: "\f0da"; +} +.sidebar-menu li.active > a.expand { + top: -4px; + left: -10px; + padding-top: 0; + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); +} +.sidebar-menu .treeview-menu, +.sidebar-menu .treeview-menu .treeview-menu { + padding-left: 18px; +} +.sidebar-menu li.divider { + padding-top: 18px; + border-bottom: 1px solid #eeeeee; + margin-bottom: 18px; +} +.sidebar-menu li.header { + text-transform: uppercase; + font-size: 14px; + font-weight: 600; + color: #d2d6de; + background-color: transparent; + border: none; +} +.sidebar-menu .treeview-menu > li > a, +.sidebar-menu .treeview-menu > li.header { + padding-left: 18px; +} +.sidebar-menu > li > .treeview-menu { + background-color: transparent; +} +.table-striped tr { + background-color: #f9fafc; +} +.table thead tr { + background-color: #337ab7; + color: #fff; +} +.box { + border-top-color: #286090; +} +.main-header, +.main-footer { + margin-bottom: 30px; +} +.no-gutter .main-header { + margin-bottom: 0px; +} +.main-footer { + border-top: none; +} +.bottom-footer { + text-align: center; +} +.wrapper, +.content-wrapper, +.main-sidebar, +.left-side, +.right-side { + background-color: white; +} +.layout-top-nav .main-header > .logo { + background-color: #337ab7; + color: #fff; + border-bottom: 0 solid transparent; +} +.layout-top-nav .main-header > .logo:hover { + background-color: #3278b3; +} +hr { + border-top-color: #B5BBC8; +} +.lead { + padding: 10px 20px; + margin: 0 0 20px; + border-left: 5px solid #337ab7; +} +.three-cols th, +.three-cols td { + width: 30%; +} +.two-cols th, +.two-cols td { + width: 60%; +} +.two-cols th:last-child, +.two-cols td:last-child, +.three-cols th:last-child, +.three-cols td:last-child { + width: 40%; +} +.two-cols-alt th, +.two-cols-alt td { + width: 30%; +} +.two-cols-alt th:last-child, +.two-cols-alt td:last-child { + width: 70%; +} +.larger { + font-size: 18px; +} +.smaller { + font-size: 12px; +} +.content-header > hr { + margin-bottom: 0; +} +dl, +dl ul, +dl ol, +.box-body dl, +.box-body.lead { + margin-bottom: 0; +} +.paramref, +.typeparamref { + font-style: italic; +} +.table-responsive { + border: none; +} +/* IE doesn't recognize - http://stackoverflow.com/a/23759279/807064 */ + +wbr:after { + content: "\00200B"; +} +/* Infobar */ + +.infobar { + padding: 30px 12px 0 12px; +} +.affix { + position: relative; +} +@media only screen and (max-width: 1249px) { + .wyam .sidebar { + padding-top: 0; + } +} +@media only screen and (min-width: 1250px) { + .infobar { + padding: 18px; + position: absolute; + left: 1250px; + top: 80px; + width: 230px; + } + .infobar.affix { + top: 20px; + position: fixed; + left: auto; + margin-left: 1250px; + } + .infobar-hidden { + display: none; + } + .wrapper.with-container { + overflow: visible; + } +} +@media only screen and (max-width: 1670px) and (min-width: 1250px) { + .wrapper.with-container { + max-width: 1020px; + left: -115px; + } + .infobar { + padding: 18px; + position: absolute; + left: 1020px; + top: 80px; + width: 230px; + } + .infobar.affix { + top: 20px; + position: fixed; + left: auto; + margin-left: 1020px; + } +} +/* Back to top */ + +#return-to-top { + position: fixed; + bottom: 20px; + right: 20px; + background: #000000; + background: rgba(0, 0, 0, 0.7); + width: 50px; + height: 50px; + display: block; + text-decoration: none; + border-radius: 35px; + display: none; +} +#return-to-top i { + color: #fff; + margin: 0; + position: relative; + left: 16px; + top: 13px; + font-size: 19px; +} +#return-to-top:hover { + background: rgba(0, 0, 0, 0.9); +} +#return-to-top:hover i { + color: #fff; +} +/* Code styles */ + +pre { + padding: 0px; + margin: 0 0 8px 0; + overflow: auto; + word-wrap: normal; + word-break: normal; + border-color: #ddd; + font-size: 12px; +} +code a { + color: inherit; +} +/* Mermaid */ + +.mermaid { + overflow: hidden; + visibility: hidden; +} +.mermaid[data-processed="true"] { + visibility: visible; +} +.node rect, +.node circle, +.node ellipse, +.node polygon { + fill: #eff5fb; + stroke: #000; +} +.type-node rect, +.type-node circle, +.type-node ellipse, +.type-node polygon { + fill: #a0c4e4; + stroke: #000; +} +.cluster rect { + fill: #f3f3f3 !important; + stroke: #ddd !important; +} +/* Turbolinks */ + +.turbolinks-progress-bar { + background-color: #337ab7 !important; +} diff --git a/assets/fonts/FontAwesome.otf b/assets/fonts/FontAwesome.otf new file mode 100644 index 0000000..d4de13e Binary files /dev/null and b/assets/fonts/FontAwesome.otf differ diff --git a/assets/fonts/fontawesome-webfont.eot b/assets/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000..c7b00d2 Binary files /dev/null and b/assets/fonts/fontawesome-webfont.eot differ diff --git a/assets/fonts/fontawesome-webfont.svg b/assets/fonts/fontawesome-webfont.svg new file mode 100644 index 0000000..8b66187 --- /dev/null +++ b/assets/fonts/fontawesome-webfont.svg @@ -0,0 +1,685 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/fonts/fontawesome-webfont.ttf b/assets/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000..f221e50 Binary files /dev/null and b/assets/fonts/fontawesome-webfont.ttf differ diff --git a/assets/fonts/fontawesome-webfont.woff b/assets/fonts/fontawesome-webfont.woff new file mode 100644 index 0000000..6e7483c Binary files /dev/null and b/assets/fonts/fontawesome-webfont.woff differ diff --git a/assets/fonts/fontawesome-webfont.woff2 b/assets/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000..7eb74fd Binary files /dev/null and b/assets/fonts/fontawesome-webfont.woff2 differ diff --git a/assets/fonts/glyphicons-halflings-regular.eot b/assets/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 0000000..b93a495 Binary files /dev/null and b/assets/fonts/glyphicons-halflings-regular.eot differ diff --git a/assets/fonts/glyphicons-halflings-regular.svg b/assets/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 0000000..94fb549 --- /dev/null +++ b/assets/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/fonts/glyphicons-halflings-regular.ttf b/assets/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000..1413fc6 Binary files /dev/null and b/assets/fonts/glyphicons-halflings-regular.ttf differ diff --git a/assets/fonts/glyphicons-halflings-regular.woff b/assets/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 0000000..9e61285 Binary files /dev/null and b/assets/fonts/glyphicons-halflings-regular.woff differ diff --git a/assets/fonts/glyphicons-halflings-regular.woff2 b/assets/fonts/glyphicons-halflings-regular.woff2 new file mode 100644 index 0000000..64539b5 Binary files /dev/null and b/assets/fonts/glyphicons-halflings-regular.woff2 differ diff --git a/assets/img/index.html b/assets/img/index.html new file mode 100644 index 0000000..bc87def --- /dev/null +++ b/assets/img/index.html @@ -0,0 +1,213 @@ + + + + + + + + + + + LitJSON - Img + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Img

+
+
+
+
+ + + + + + + + +
Social Flat Rounded Rects Svg +
+
+
+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/img/logo.png b/assets/img/logo.png new file mode 100644 index 0000000..a4c15e5 Binary files /dev/null and b/assets/img/logo.png differ diff --git a/assets/img/logo_64.png b/assets/img/logo_64.png new file mode 100644 index 0000000..5268408 Binary files /dev/null and b/assets/img/logo_64.png differ diff --git a/assets/img/social_flat_rounded_rects_svg/Email.svg b/assets/img/social_flat_rounded_rects_svg/Email.svg new file mode 100644 index 0000000..c66e4d3 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Email.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Facebook.svg b/assets/img/social_flat_rounded_rects_svg/Facebook.svg new file mode 100644 index 0000000..b56ba16 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Google+.svg b/assets/img/social_flat_rounded_rects_svg/Google+.svg new file mode 100644 index 0000000..1cc37a1 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Google+.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/LinkedIn.svg b/assets/img/social_flat_rounded_rects_svg/LinkedIn.svg new file mode 100644 index 0000000..8a3b58a --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/LinkedIn.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Pinboard.svg b/assets/img/social_flat_rounded_rects_svg/Pinboard.svg new file mode 100644 index 0000000..b740c23 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Pinboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Pinterest.svg b/assets/img/social_flat_rounded_rects_svg/Pinterest.svg new file mode 100644 index 0000000..19f40c5 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Pinterest.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Pocket.svg b/assets/img/social_flat_rounded_rects_svg/Pocket.svg new file mode 100644 index 0000000..50f67cb --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Pocket.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Reddit.svg b/assets/img/social_flat_rounded_rects_svg/Reddit.svg new file mode 100644 index 0000000..224f27e --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Reddit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Tumblr.svg b/assets/img/social_flat_rounded_rects_svg/Tumblr.svg new file mode 100644 index 0000000..8823e4e --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Tumblr.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Twitter.svg b/assets/img/social_flat_rounded_rects_svg/Twitter.svg new file mode 100644 index 0000000..074287b --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/Wordpress.svg b/assets/img/social_flat_rounded_rects_svg/Wordpress.svg new file mode 100644 index 0000000..bb572d7 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/Wordpress.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/index.html b/assets/img/social_flat_rounded_rects_svg/index.html new file mode 100644 index 0000000..998c074 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/index.html @@ -0,0 +1,213 @@ + + + + + + + + + + + LitJSON - Social Flat Rounded Rects Svg + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Social Flat Rounded Rects Svg

+
+
+
+
+ + + + + + + + +
License +
+
+
+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/img/social_flat_rounded_rects_svg/license.html b/assets/img/social_flat_rounded_rects_svg/license.html new file mode 100644 index 0000000..011e922 --- /dev/null +++ b/assets/img/social_flat_rounded_rects_svg/license.html @@ -0,0 +1,204 @@ + + + + + + + + + LitJSON - License + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

License

+
+
+

Social Flat Rounded Rects

+

by Aha-Soft Team

+

License: Creative Commons (Attribution 3.0 Unported)

+

Dec 26th, 2014

+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/index.html b/assets/index.html new file mode 100644 index 0000000..a006494 --- /dev/null +++ b/assets/index.html @@ -0,0 +1,213 @@ + + + + + + + + + + + LitJSON - Assets + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Assets

+
+
+
+
+ + + + + + + + +
Img +
+
+
+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/js/app.js b/assets/js/app.js new file mode 100644 index 0000000..6eef206 --- /dev/null +++ b/assets/js/app.js @@ -0,0 +1,763 @@ +/*! AdminLTE app.js + * ================ + * Main JS application file for AdminLTE v2. This file + * should be included in all pages. It controls some layout + * options and implements exclusive AdminLTE plugins. + * + * @Author Almsaeed Studio + * @Support + * @Email + * @version 2.3.8 + * @license MIT + */ + +//Make sure jQuery has been loaded before app.js +if (typeof jQuery === "undefined") { + throw new Error("AdminLTE requires jQuery"); +} + +/* AdminLTE + * + * @type Object + * @description $.AdminLTE is the main object for the template's app. + * It's used for implementing functions and options related + * to the template. Keeping everything wrapped in an object + * prevents conflict with other plugins and is a better + * way to organize our code. + */ +$.AdminLTE = {}; + +/* -------------------- + * - AdminLTE Options - + * -------------------- + * Modify these options to suit your implementation + */ +$.AdminLTE.options = { + //Add slimscroll to navbar menus + //This requires you to load the slimscroll plugin + //in every page before app.js + navbarMenuSlimscroll: true, + navbarMenuSlimscrollWidth: "3px", //The width of the scroll bar + navbarMenuHeight: "200px", //The height of the inner menu + //General animation speed for JS animated elements such as box collapse/expand and + //sidebar treeview slide up/down. This options accepts an integer as milliseconds, + //'fast', 'normal', or 'slow' + animationSpeed: 500, + //Sidebar push menu toggle button selector + sidebarToggleSelector: "[data-toggle='offcanvas']", + //Activate sidebar push menu + sidebarPushMenu: true, + //Activate sidebar slimscroll if the fixed layout is set (requires SlimScroll Plugin) + sidebarSlimScroll: true, + //Enable sidebar expand on hover effect for sidebar mini + //This option is forced to true if both the fixed layout and sidebar mini + //are used together + sidebarExpandOnHover: false, + //BoxRefresh Plugin + enableBoxRefresh: true, + //Bootstrap.js tooltip + enableBSToppltip: true, + BSTooltipSelector: "[data-toggle='tooltip']", + //Enable Fast Click. Fastclick.js creates a more + //native touch experience with touch devices. If you + //choose to enable the plugin, make sure you load the script + //before AdminLTE's app.js + enableFastclick: false, + //Control Sidebar Options + enableControlSidebar: true, + controlSidebarOptions: { + //Which button should trigger the open/close event + toggleBtnSelector: "[data-toggle='control-sidebar']", + //The sidebar selector + selector: ".control-sidebar", + //Enable slide over content + slide: true + }, + //Box Widget Plugin. Enable this plugin + //to allow boxes to be collapsed and/or removed + enableBoxWidget: true, + //Box Widget plugin options + boxWidgetOptions: { + boxWidgetIcons: { + //Collapse icon + collapse: 'fa-minus', + //Open icon + open: 'fa-plus', + //Remove icon + remove: 'fa-times' + }, + boxWidgetSelectors: { + //Remove button selector + remove: '[data-widget="remove"]', + //Collapse button selector + collapse: '[data-widget="collapse"]' + } + }, + //Direct Chat plugin options + directChat: { + //Enable direct chat by default + enable: true, + //The button to open and close the chat contacts pane + contactToggleSelector: '[data-widget="chat-pane-toggle"]' + }, + //Define the set of colors to use globally around the website + colors: { + lightBlue: "#3c8dbc", + red: "#f56954", + green: "#00a65a", + aqua: "#00c0ef", + yellow: "#f39c12", + blue: "#0073b7", + navy: "#001F3F", + teal: "#39CCCC", + olive: "#3D9970", + lime: "#01FF70", + orange: "#FF851B", + fuchsia: "#F012BE", + purple: "#8E24AA", + maroon: "#D81B60", + black: "#222222", + gray: "#d2d6de" + }, + //The standard screen sizes that bootstrap uses. + //If you change these in the variables.less file, change + //them here too. + screenSizes: { + xs: 480, + sm: 768, + md: 992, + lg: 1200 + } +}; + +/* ------------------ + * - Implementation - + * ------------------ + * The next block of code implements AdminLTE's + * functions and plugins as specified by the + * options above. + */ +$(function () { + "use strict"; + + //Fix for IE page transitions + $("body").removeClass("hold-transition"); + + //Extend options if external options exist + if (typeof AdminLTEOptions !== "undefined") { + $.extend(true, + $.AdminLTE.options, + AdminLTEOptions); + } + + //Easy access to options + var o = $.AdminLTE.options; + + //Set up the object + _init(); + + //Activate the layout maker + $.AdminLTE.layout.activate(); + + //Enable sidebar tree view controls + $.AdminLTE.tree('.sidebar'); + + //Enable control sidebar + if (o.enableControlSidebar) { + $.AdminLTE.controlSidebar.activate(); + } + + //Add slimscroll to navbar dropdown + if (o.navbarMenuSlimscroll && typeof $.fn.slimscroll != 'undefined') { + $(".navbar .menu").slimscroll({ + height: o.navbarMenuHeight, + alwaysVisible: false, + size: o.navbarMenuSlimscrollWidth + }).css("width", "100%"); + } + + //Activate sidebar push menu + if (o.sidebarPushMenu) { + $.AdminLTE.pushMenu.activate(o.sidebarToggleSelector); + } + + //Activate Bootstrap tooltip + if (o.enableBSToppltip) { + $('body').tooltip({ + selector: o.BSTooltipSelector + }); + } + + //Activate box widget + if (o.enableBoxWidget) { + $.AdminLTE.boxWidget.activate(); + } + + //Activate fast click + if (o.enableFastclick && typeof FastClick != 'undefined') { + FastClick.attach(document.body); + } + + //Activate direct chat widget + if (o.directChat.enable) { + $(document).on('click', o.directChat.contactToggleSelector, function () { + var box = $(this).parents('.direct-chat').first(); + box.toggleClass('direct-chat-contacts-open'); + }); + } + + /* + * INITIALIZE BUTTON TOGGLE + * ------------------------ + */ + $('.btn-group[data-toggle="btn-toggle"]').each(function () { + var group = $(this); + $(this).find(".btn").on('click', function (e) { + group.find(".btn.active").removeClass("active"); + $(this).addClass("active"); + e.preventDefault(); + }); + + }); +}); + +/* ---------------------------------- + * - Initialize the AdminLTE Object - + * ---------------------------------- + * All AdminLTE functions are implemented below. + */ +function _init() { + 'use strict'; + /* Layout + * ====== + * Fixes the layout height in case min-height fails. + * + * @type Object + * @usage $.AdminLTE.layout.activate() + * $.AdminLTE.layout.fix() + * $.AdminLTE.layout.fixSidebar() + */ + $.AdminLTE.layout = { + activate: function () { + var _this = this; + _this.fix(); + _this.fixSidebar(); + $(window, ".wrapper").resize(function () { + _this.fix(); + _this.fixSidebar(); + }); + }, + fix: function () { + //Get window height and the wrapper height + var neg = $('.main-header').outerHeight() + $('.main-footer').outerHeight(); + var window_height = $(window).height(); + var sidebar_height = $(".sidebar").height(); + //Set the min-height of the content and sidebar based on the + //the height of the document. + if ($("body").hasClass("fixed")) { + $(".content-wrapper, .right-side").css('min-height', window_height - $('.main-footer').outerHeight()); + } else { + var postSetWidth; + if (window_height >= sidebar_height) { + $(".content-wrapper, .right-side").css('min-height', window_height - neg); + postSetWidth = window_height - neg; + } else { + $(".content-wrapper, .right-side").css('min-height', sidebar_height); + postSetWidth = sidebar_height; + } + + //Fix for the control sidebar height + var controlSidebar = $($.AdminLTE.options.controlSidebarOptions.selector); + if (typeof controlSidebar !== "undefined") { + if (controlSidebar.height() > postSetWidth) + $(".content-wrapper, .right-side").css('min-height', controlSidebar.height()); + } + + } + }, + fixSidebar: function () { + //Make sure the body tag has the .fixed class + if (!$("body").hasClass("fixed")) { + if (typeof $.fn.slimScroll != 'undefined') { + $(".sidebar").slimScroll({destroy: true}).height("auto"); + } + return; + } else if (typeof $.fn.slimScroll == 'undefined' && window.console) { + window.console.error("Error: the fixed layout requires the slimscroll plugin!"); + } + //Enable slimscroll for fixed layout + if ($.AdminLTE.options.sidebarSlimScroll) { + if (typeof $.fn.slimScroll != 'undefined') { + //Destroy if it exists + $(".sidebar").slimScroll({destroy: true}).height("auto"); + //Add slimscroll + $(".sidebar").slimscroll({ + height: ($(window).height() - $(".main-header").height()) + "px", + color: "rgba(0,0,0,0.2)", + size: "3px" + }); + } + } + } + }; + + /* PushMenu() + * ========== + * Adds the push menu functionality to the sidebar. + * + * @type Function + * @usage: $.AdminLTE.pushMenu("[data-toggle='offcanvas']") + */ + $.AdminLTE.pushMenu = { + activate: function (toggleBtn) { + //Get the screen sizes + var screenSizes = $.AdminLTE.options.screenSizes; + + //Enable sidebar toggle + $(document).on('click', toggleBtn, function (e) { + e.preventDefault(); + + //Enable sidebar push menu + if ($(window).width() > (screenSizes.sm - 1)) { + if ($("body").hasClass('sidebar-collapse')) { + $("body").removeClass('sidebar-collapse').trigger('expanded.pushMenu'); + } else { + $("body").addClass('sidebar-collapse').trigger('collapsed.pushMenu'); + } + } + //Handle sidebar push menu for small screens + else { + if ($("body").hasClass('sidebar-open')) { + $("body").removeClass('sidebar-open').removeClass('sidebar-collapse').trigger('collapsed.pushMenu'); + } else { + $("body").addClass('sidebar-open').trigger('expanded.pushMenu'); + } + } + }); + + $(".content-wrapper").click(function () { + //Enable hide menu when clicking on the content-wrapper on small screens + if ($(window).width() <= (screenSizes.sm - 1) && $("body").hasClass("sidebar-open")) { + $("body").removeClass('sidebar-open'); + } + }); + + //Enable expand on hover for sidebar mini + if ($.AdminLTE.options.sidebarExpandOnHover + || ($('body').hasClass('fixed') + && $('body').hasClass('sidebar-mini'))) { + this.expandOnHover(); + } + }, + expandOnHover: function () { + var _this = this; + var screenWidth = $.AdminLTE.options.screenSizes.sm - 1; + //Expand sidebar on hover + $('.main-sidebar').hover(function () { + if ($('body').hasClass('sidebar-mini') + && $("body").hasClass('sidebar-collapse') + && $(window).width() > screenWidth) { + _this.expand(); + } + }, function () { + if ($('body').hasClass('sidebar-mini') + && $('body').hasClass('sidebar-expanded-on-hover') + && $(window).width() > screenWidth) { + _this.collapse(); + } + }); + }, + expand: function () { + $("body").removeClass('sidebar-collapse').addClass('sidebar-expanded-on-hover'); + }, + collapse: function () { + if ($('body').hasClass('sidebar-expanded-on-hover')) { + $('body').removeClass('sidebar-expanded-on-hover').addClass('sidebar-collapse'); + } + } + }; + + /* Tree() + * ====== + * Converts the sidebar into a multilevel + * tree view menu. + * + * @type Function + * @Usage: $.AdminLTE.tree('.sidebar') + */ + $.AdminLTE.tree = function (menu) { + var _this = this; + var animationSpeed = $.AdminLTE.options.animationSpeed; + $(document).off('click', menu + ' li a') + .on('click', menu + ' li a', function (e) { + //Get the clicked link and the next element + var $this = $(this); + var checkElement = $this.next(); + + //Check if the next element is a menu and is visible + if ((checkElement.is('.treeview-menu')) && (checkElement.is(':visible')) && (!$('body').hasClass('sidebar-collapse'))) { + //Close the menu + checkElement.slideUp(animationSpeed, function () { + checkElement.removeClass('menu-open'); + //Fix the layout in case the sidebar stretches over the height of the window + //_this.layout.fix(); + }); + checkElement.parent("li").removeClass("active"); + } + //If the menu is not visible + else if ((checkElement.is('.treeview-menu')) && (!checkElement.is(':visible'))) { + //Get the parent menu + var parent = $this.parents('ul').first(); + //Close all open menus within the parent + var ul = parent.find('ul:visible').slideUp(animationSpeed); + //Remove the menu-open class from the parent + ul.removeClass('menu-open'); + //Get the parent li + var parent_li = $this.parent("li"); + + //Open the target menu and add the menu-open class + checkElement.slideDown(animationSpeed, function () { + //Add the class active to the parent li + checkElement.addClass('menu-open'); + parent.find('li.active').removeClass('active'); + parent_li.addClass('active'); + //Fix the layout in case the sidebar stretches over the height of the window + _this.layout.fix(); + }); + } + //if this isn't a link, prevent the page from being redirected + if (checkElement.is('.treeview-menu')) { + e.preventDefault(); + } + }); + }; + + /* ControlSidebar + * ============== + * Adds functionality to the right sidebar + * + * @type Object + * @usage $.AdminLTE.controlSidebar.activate(options) + */ + $.AdminLTE.controlSidebar = { + //instantiate the object + activate: function () { + //Get the object + var _this = this; + //Update options + var o = $.AdminLTE.options.controlSidebarOptions; + //Get the sidebar + var sidebar = $(o.selector); + //The toggle button + var btn = $(o.toggleBtnSelector); + + //Listen to the click event + btn.on('click', function (e) { + e.preventDefault(); + //If the sidebar is not open + if (!sidebar.hasClass('control-sidebar-open') + && !$('body').hasClass('control-sidebar-open')) { + //Open the sidebar + _this.open(sidebar, o.slide); + } else { + _this.close(sidebar, o.slide); + } + }); + + //If the body has a boxed layout, fix the sidebar bg position + var bg = $(".control-sidebar-bg"); + _this._fix(bg); + + //If the body has a fixed layout, make the control sidebar fixed + if ($('body').hasClass('fixed')) { + _this._fixForFixed(sidebar); + } else { + //If the content height is less than the sidebar's height, force max height + if ($('.content-wrapper, .right-side').height() < sidebar.height()) { + _this._fixForContent(sidebar); + } + } + }, + //Open the control sidebar + open: function (sidebar, slide) { + //Slide over content + if (slide) { + sidebar.addClass('control-sidebar-open'); + } else { + //Push the content by adding the open class to the body instead + //of the sidebar itself + $('body').addClass('control-sidebar-open'); + } + }, + //Close the control sidebar + close: function (sidebar, slide) { + if (slide) { + sidebar.removeClass('control-sidebar-open'); + } else { + $('body').removeClass('control-sidebar-open'); + } + }, + _fix: function (sidebar) { + var _this = this; + if ($("body").hasClass('layout-boxed')) { + sidebar.css('position', 'absolute'); + sidebar.height($(".wrapper").height()); + if (_this.hasBindedResize) { + return; + } + $(window).resize(function () { + _this._fix(sidebar); + }); + _this.hasBindedResize = true; + } else { + sidebar.css({ + 'position': 'fixed', + 'height': 'auto' + }); + } + }, + _fixForFixed: function (sidebar) { + sidebar.css({ + 'position': 'fixed', + 'max-height': '100%', + 'overflow': 'auto', + 'padding-bottom': '50px' + }); + }, + _fixForContent: function (sidebar) { + $(".content-wrapper, .right-side").css('min-height', sidebar.height()); + } + }; + + /* BoxWidget + * ========= + * BoxWidget is a plugin to handle collapsing and + * removing boxes from the screen. + * + * @type Object + * @usage $.AdminLTE.boxWidget.activate() + * Set all your options in the main $.AdminLTE.options object + */ + $.AdminLTE.boxWidget = { + selectors: $.AdminLTE.options.boxWidgetOptions.boxWidgetSelectors, + icons: $.AdminLTE.options.boxWidgetOptions.boxWidgetIcons, + animationSpeed: $.AdminLTE.options.animationSpeed, + activate: function (_box) { + var _this = this; + if (!_box) { + _box = document; // activate all boxes per default + } + //Listen for collapse event triggers + $(_box).on('click', _this.selectors.collapse, function (e) { + e.preventDefault(); + _this.collapse($(this)); + }); + + //Listen for remove event triggers + $(_box).on('click', _this.selectors.remove, function (e) { + e.preventDefault(); + _this.remove($(this)); + }); + }, + collapse: function (element) { + var _this = this; + //Find the box parent + var box = element.parents(".box").first(); + //Find the body and the footer + var box_content = box.find("> .box-body, > .box-footer, > form >.box-body, > form > .box-footer"); + if (!box.hasClass("collapsed-box")) { + //Convert minus into plus + element.children(":first") + .removeClass(_this.icons.collapse) + .addClass(_this.icons.open); + //Hide the content + box_content.slideUp(_this.animationSpeed, function () { + box.addClass("collapsed-box"); + }); + } else { + //Convert plus into minus + element.children(":first") + .removeClass(_this.icons.open) + .addClass(_this.icons.collapse); + //Show the content + box_content.slideDown(_this.animationSpeed, function () { + box.removeClass("collapsed-box"); + }); + } + }, + remove: function (element) { + //Find the box parent + var box = element.parents(".box").first(); + box.slideUp(this.animationSpeed); + } + }; +} + +/* ------------------ + * - Custom Plugins - + * ------------------ + * All custom plugins are defined below. + */ + +/* + * BOX REFRESH BUTTON + * ------------------ + * This is a custom plugin to use with the component BOX. It allows you to add + * a refresh button to the box. It converts the box's state to a loading state. + * + * @type plugin + * @usage $("#box-widget").boxRefresh( options ); + */ +(function ($) { + + "use strict"; + + $.fn.boxRefresh = function (options) { + + // Render options + var settings = $.extend({ + //Refresh button selector + trigger: ".refresh-btn", + //File source to be loaded (e.g: ajax/src.php) + source: "", + //Callbacks + onLoadStart: function (box) { + return box; + }, //Right after the button has been clicked + onLoadDone: function (box) { + return box; + } //When the source has been loaded + + }, options); + + //The overlay + var overlay = $('
'); + + return this.each(function () { + //if a source is specified + if (settings.source === "") { + if (window.console) { + window.console.log("Please specify a source first - boxRefresh()"); + } + return; + } + //the box + var box = $(this); + //the button + var rBtn = box.find(settings.trigger).first(); + + //On trigger click + rBtn.on('click', function (e) { + e.preventDefault(); + //Add loading overlay + start(box); + + //Perform ajax call + box.find(".box-body").load(settings.source, function () { + done(box); + }); + }); + }); + + function start(box) { + //Add overlay and loading img + box.append(overlay); + + settings.onLoadStart.call(box); + } + + function done(box) { + //Remove overlay and loading img + box.find(overlay).remove(); + + settings.onLoadDone.call(box); + } + + }; + +})(jQuery); + +/* + * EXPLICIT BOX CONTROLS + * ----------------------- + * This is a custom plugin to use with the component BOX. It allows you to activate + * a box inserted in the DOM after the app.js was loaded, toggle and remove box. + * + * @type plugin + * @usage $("#box-widget").activateBox(); + * @usage $("#box-widget").toggleBox(); + * @usage $("#box-widget").removeBox(); + */ +(function ($) { + + 'use strict'; + + $.fn.activateBox = function () { + $.AdminLTE.boxWidget.activate(this); + }; + + $.fn.toggleBox = function () { + var button = $($.AdminLTE.boxWidget.selectors.collapse, this); + $.AdminLTE.boxWidget.collapse(button); + }; + + $.fn.removeBox = function () { + var button = $($.AdminLTE.boxWidget.selectors.remove, this); + $.AdminLTE.boxWidget.remove(button); + }; + +})(jQuery); + +/* + * TODO LIST CUSTOM PLUGIN + * ----------------------- + * This plugin depends on iCheck plugin for checkbox and radio inputs + * + * @type plugin + * @usage $("#todo-widget").todolist( options ); + */ +(function ($) { + + 'use strict'; + + $.fn.todolist = function (options) { + // Render options + var settings = $.extend({ + //When the user checks the input + onCheck: function (ele) { + return ele; + }, + //When the user unchecks the input + onUncheck: function (ele) { + return ele; + } + }, options); + + return this.each(function () { + + if (typeof $.fn.iCheck != 'undefined') { + $('input', this).on('ifChecked', function () { + var ele = $(this).parents("li").first(); + ele.toggleClass("done"); + settings.onCheck.call(ele); + }); + + $('input', this).on('ifUnchecked', function () { + var ele = $(this).parents("li").first(); + ele.toggleClass("done"); + settings.onUncheck.call(ele); + }); + } else { + $('input', this).on('change', function () { + var ele = $(this).parents("li").first(); + ele.toggleClass("done"); + if ($('input', ele).is(":checked")) { + settings.onCheck.call(ele); + } else { + settings.onUncheck.call(ele); + } + }); + } + }); + }; +}(jQuery)); diff --git a/assets/js/app.min.js b/assets/js/app.min.js new file mode 100644 index 0000000..aee14f2 --- /dev/null +++ b/assets/js/app.min.js @@ -0,0 +1,13 @@ +/*! AdminLTE app.js + * ================ + * Main JS application file for AdminLTE v2. This file + * should be included in all pages. It controls some layout + * options and implements exclusive AdminLTE plugins. + * + * @Author Almsaeed Studio + * @Support + * @Email + * @version 2.3.8 + * @license MIT + */ +function _init(){"use strict";$.AdminLTE.layout={activate:function(){var a=this;a.fix(),a.fixSidebar(),$(window,".wrapper").resize(function(){a.fix(),a.fixSidebar()})},fix:function(){var a=$(".main-header").outerHeight()+$(".main-footer").outerHeight(),b=$(window).height(),c=$(".sidebar").height();if($("body").hasClass("fixed"))$(".content-wrapper, .right-side").css("min-height",b-$(".main-footer").outerHeight());else{var d;b>=c?($(".content-wrapper, .right-side").css("min-height",b-a),d=b-a):($(".content-wrapper, .right-side").css("min-height",c),d=c);var e=$($.AdminLTE.options.controlSidebarOptions.selector);"undefined"!=typeof e&&e.height()>d&&$(".content-wrapper, .right-side").css("min-height",e.height())}},fixSidebar:function(){return $("body").hasClass("fixed")?("undefined"==typeof $.fn.slimScroll&&window.console&&window.console.error("Error: the fixed layout requires the slimscroll plugin!"),void($.AdminLTE.options.sidebarSlimScroll&&"undefined"!=typeof $.fn.slimScroll&&($(".sidebar").slimScroll({destroy:!0}).height("auto"),$(".sidebar").slimscroll({height:$(window).height()-$(".main-header").height()+"px",color:"rgba(0,0,0,0.2)",size:"3px"})))):void("undefined"!=typeof $.fn.slimScroll&&$(".sidebar").slimScroll({destroy:!0}).height("auto"))}},$.AdminLTE.pushMenu={activate:function(a){var b=$.AdminLTE.options.screenSizes;$(document).on("click",a,function(a){a.preventDefault(),$(window).width()>b.sm-1?$("body").hasClass("sidebar-collapse")?$("body").removeClass("sidebar-collapse").trigger("expanded.pushMenu"):$("body").addClass("sidebar-collapse").trigger("collapsed.pushMenu"):$("body").hasClass("sidebar-open")?$("body").removeClass("sidebar-open").removeClass("sidebar-collapse").trigger("collapsed.pushMenu"):$("body").addClass("sidebar-open").trigger("expanded.pushMenu")}),$(".content-wrapper").click(function(){$(window).width()<=b.sm-1&&$("body").hasClass("sidebar-open")&&$("body").removeClass("sidebar-open")}),($.AdminLTE.options.sidebarExpandOnHover||$("body").hasClass("fixed")&&$("body").hasClass("sidebar-mini"))&&this.expandOnHover()},expandOnHover:function(){var a=this,b=$.AdminLTE.options.screenSizes.sm-1;$(".main-sidebar").hover(function(){$("body").hasClass("sidebar-mini")&&$("body").hasClass("sidebar-collapse")&&$(window).width()>b&&a.expand()},function(){$("body").hasClass("sidebar-mini")&&$("body").hasClass("sidebar-expanded-on-hover")&&$(window).width()>b&&a.collapse()})},expand:function(){$("body").removeClass("sidebar-collapse").addClass("sidebar-expanded-on-hover")},collapse:function(){$("body").hasClass("sidebar-expanded-on-hover")&&$("body").removeClass("sidebar-expanded-on-hover").addClass("sidebar-collapse")}},$.AdminLTE.tree=function(a){var b=this,c=$.AdminLTE.options.animationSpeed;$(document).off("click",a+" li a").on("click",a+" li a",function(a){var d=$(this),e=d.next();if(e.is(".treeview-menu")&&e.is(":visible")&&!$("body").hasClass("sidebar-collapse"))e.slideUp(c,function(){e.removeClass("menu-open")}),e.parent("li").removeClass("active");else if(e.is(".treeview-menu")&&!e.is(":visible")){var f=d.parents("ul").first(),g=f.find("ul:visible").slideUp(c);g.removeClass("menu-open");var h=d.parent("li");e.slideDown(c,function(){e.addClass("menu-open"),f.find("li.active").removeClass("active"),h.addClass("active"),b.layout.fix()})}e.is(".treeview-menu")&&a.preventDefault()})},$.AdminLTE.controlSidebar={activate:function(){var a=this,b=$.AdminLTE.options.controlSidebarOptions,c=$(b.selector),d=$(b.toggleBtnSelector);d.on("click",function(d){d.preventDefault(),c.hasClass("control-sidebar-open")||$("body").hasClass("control-sidebar-open")?a.close(c,b.slide):a.open(c,b.slide)});var e=$(".control-sidebar-bg");a._fix(e),$("body").hasClass("fixed")?a._fixForFixed(c):$(".content-wrapper, .right-side").height() .box-body, > .box-footer, > form >.box-body, > form > .box-footer");c.hasClass("collapsed-box")?(a.children(":first").removeClass(b.icons.open).addClass(b.icons.collapse),d.slideDown(b.animationSpeed,function(){c.removeClass("collapsed-box")})):(a.children(":first").removeClass(b.icons.collapse).addClass(b.icons.open),d.slideUp(b.animationSpeed,function(){c.addClass("collapsed-box")}))},remove:function(a){var b=a.parents(".box").first();b.slideUp(this.animationSpeed)}}}if("undefined"==typeof jQuery)throw new Error("AdminLTE requires jQuery");$.AdminLTE={},$.AdminLTE.options={navbarMenuSlimscroll:!0,navbarMenuSlimscrollWidth:"3px",navbarMenuHeight:"200px",animationSpeed:500,sidebarToggleSelector:"[data-toggle='offcanvas']",sidebarPushMenu:!0,sidebarSlimScroll:!0,sidebarExpandOnHover:!1,enableBoxRefresh:!0,enableBSToppltip:!0,BSTooltipSelector:"[data-toggle='tooltip']",enableFastclick:!1,enableControlSidebar:!0,controlSidebarOptions:{toggleBtnSelector:"[data-toggle='control-sidebar']",selector:".control-sidebar",slide:!0},enableBoxWidget:!0,boxWidgetOptions:{boxWidgetIcons:{collapse:"fa-minus",open:"fa-plus",remove:"fa-times"},boxWidgetSelectors:{remove:'[data-widget="remove"]',collapse:'[data-widget="collapse"]'}},directChat:{enable:!0,contactToggleSelector:'[data-widget="chat-pane-toggle"]'},colors:{lightBlue:"#3c8dbc",red:"#f56954",green:"#00a65a",aqua:"#00c0ef",yellow:"#f39c12",blue:"#0073b7",navy:"#001F3F",teal:"#39CCCC",olive:"#3D9970",lime:"#01FF70",orange:"#FF851B",fuchsia:"#F012BE",purple:"#8E24AA",maroon:"#D81B60",black:"#222222",gray:"#d2d6de"},screenSizes:{xs:480,sm:768,md:992,lg:1200}},$(function(){"use strict";$("body").removeClass("hold-transition"),"undefined"!=typeof AdminLTEOptions&&$.extend(!0,$.AdminLTE.options,AdminLTEOptions);var a=$.AdminLTE.options;_init(),$.AdminLTE.layout.activate(),$.AdminLTE.tree(".sidebar"),a.enableControlSidebar&&$.AdminLTE.controlSidebar.activate(),a.navbarMenuSlimscroll&&"undefined"!=typeof $.fn.slimscroll&&$(".navbar .menu").slimscroll({height:a.navbarMenuHeight,alwaysVisible:!1,size:a.navbarMenuSlimscrollWidth}).css("width","100%"),a.sidebarPushMenu&&$.AdminLTE.pushMenu.activate(a.sidebarToggleSelector),a.enableBSToppltip&&$("body").tooltip({selector:a.BSTooltipSelector}),a.enableBoxWidget&&$.AdminLTE.boxWidget.activate(),a.enableFastclick&&"undefined"!=typeof FastClick&&FastClick.attach(document.body),a.directChat.enable&&$(document).on("click",a.directChat.contactToggleSelector,function(){var a=$(this).parents(".direct-chat").first();a.toggleClass("direct-chat-contacts-open")}),$('.btn-group[data-toggle="btn-toggle"]').each(function(){var a=$(this);$(this).find(".btn").on("click",function(b){a.find(".btn.active").removeClass("active"),$(this).addClass("active"),b.preventDefault()})})}),function(a){"use strict";a.fn.boxRefresh=function(b){function c(a){a.append(f),e.onLoadStart.call(a)}function d(a){a.find(f).remove(),e.onLoadDone.call(a)}var e=a.extend({trigger:".refresh-btn",source:"",onLoadStart:function(a){return a},onLoadDone:function(a){return a}},b),f=a('
');return this.each(function(){if(""===e.source)return void(window.console&&window.console.log("Please specify a source first - boxRefresh()"));var b=a(this),f=b.find(e.trigger).first();f.on("click",function(a){a.preventDefault(),c(b),b.find(".box-body").load(e.source,function(){d(b)})})})}}(jQuery),function(a){"use strict";a.fn.activateBox=function(){a.AdminLTE.boxWidget.activate(this)},a.fn.toggleBox=function(){var b=a(a.AdminLTE.boxWidget.selectors.collapse,this);a.AdminLTE.boxWidget.collapse(b)},a.fn.removeBox=function(){var b=a(a.AdminLTE.boxWidget.selectors.remove,this);a.AdminLTE.boxWidget.remove(b)}}(jQuery),function(a){"use strict";a.fn.todolist=function(b){var c=a.extend({onCheck:function(a){return a},onUncheck:function(a){return a}},b);return this.each(function(){"undefined"!=typeof a.fn.iCheck?(a("input",this).on("ifChecked",function(){var b=a(this).parents("li").first();b.toggleClass("done"),c.onCheck.call(b)}),a("input",this).on("ifUnchecked",function(){var b=a(this).parents("li").first();b.toggleClass("done"),c.onUncheck.call(b)})):a("input",this).on("change",function(){var b=a(this).parents("li").first();b.toggleClass("done"),a("input",b).is(":checked")?c.onCheck.call(b):c.onUncheck.call(b)})})}}(jQuery); \ No newline at end of file diff --git a/assets/js/bootstrap.js b/assets/js/bootstrap.js new file mode 100644 index 0000000..8a2e99a --- /dev/null +++ b/assets/js/bootstrap.js @@ -0,0 +1,2377 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ + +if (typeof jQuery === 'undefined') { + throw new Error('Bootstrap\'s JavaScript requires jQuery') +} + ++function ($) { + 'use strict'; + var version = $.fn.jquery.split(' ')[0].split('.') + if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 3)) { + throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4') + } +}(jQuery); + +/* ======================================================================== + * Bootstrap: transition.js v3.3.7 + * http://getbootstrap.com/javascript/#transitions + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) + // ============================================================ + + function transitionEnd() { + var el = document.createElement('bootstrap') + + var transEndEventNames = { + WebkitTransition : 'webkitTransitionEnd', + MozTransition : 'transitionend', + OTransition : 'oTransitionEnd otransitionend', + transition : 'transitionend' + } + + for (var name in transEndEventNames) { + if (el.style[name] !== undefined) { + return { end: transEndEventNames[name] } + } + } + + return false // explicit for ie8 ( ._.) + } + + // http://blog.alexmaccaw.com/css-transitions + $.fn.emulateTransitionEnd = function (duration) { + var called = false + var $el = this + $(this).one('bsTransitionEnd', function () { called = true }) + var callback = function () { if (!called) $($el).trigger($.support.transition.end) } + setTimeout(callback, duration) + return this + } + + $(function () { + $.support.transition = transitionEnd() + + if (!$.support.transition) return + + $.event.special.bsTransitionEnd = { + bindType: $.support.transition.end, + delegateType: $.support.transition.end, + handle: function (e) { + if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) + } + } + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: alert.js v3.3.7 + * http://getbootstrap.com/javascript/#alerts + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.VERSION = '3.3.7' + + Alert.TRANSITION_DURATION = 150 + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector === '#' ? [] : selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.closest('.alert') + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + // detach from parent, fire event then clean up data + $parent.detach().trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one('bsTransitionEnd', removeElement) + .emulateTransitionEnd(Alert.TRANSITION_DURATION) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.alert + + $.fn.alert = Plugin + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: button.js v3.3.7 + * http://getbootstrap.com/javascript/#buttons + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false + } + + Button.VERSION = '3.3.7' + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state += 'Text' + + if (data.resetText == null) $el.data('resetText', $el[val]()) + + // push to event loop to allow forms to submit + setTimeout($.proxy(function () { + $el[val](data[state] == null ? this.options[state] : data[state]) + + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d).prop(d, true) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d).prop(d, false) + } + }, this), 0) + } + + Button.prototype.toggle = function () { + var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked')) changed = false + $parent.find('.active').removeClass('active') + this.$element.addClass('active') + } else if ($input.prop('type') == 'checkbox') { + if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false + this.$element.toggleClass('active') + } + $input.prop('checked', this.$element.hasClass('active')) + if (changed) $input.trigger('change') + } else { + this.$element.attr('aria-pressed', !this.$element.hasClass('active')) + this.$element.toggleClass('active') + } + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + var old = $.fn.button + + $.fn.button = Plugin + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document) + .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { + var $btn = $(e.target).closest('.btn') + Plugin.call($btn, 'toggle') + if (!($(e.target).is('input[type="radio"], input[type="checkbox"]'))) { + // Prevent double click on radios, and the double selections (so cancellation) on checkboxes + e.preventDefault() + // The target component still receive the focus + if ($btn.is('input,button')) $btn.trigger('focus') + else $btn.find('input:visible,button:visible').first().trigger('focus') + } + }) + .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { + $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: carousel.js v3.3.7 + * http://getbootstrap.com/javascript/#carousel + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = null + this.sliding = null + this.interval = null + this.$active = null + this.$items = null + + this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) + + this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element + .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) + .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) + } + + Carousel.VERSION = '3.3.7' + + Carousel.TRANSITION_DURATION = 600 + + Carousel.DEFAULTS = { + interval: 5000, + pause: 'hover', + wrap: true, + keyboard: true + } + + Carousel.prototype.keydown = function (e) { + if (/input|textarea/i.test(e.target.tagName)) return + switch (e.which) { + case 37: this.prev(); break + case 39: this.next(); break + default: return + } + + e.preventDefault() + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getItemIndex = function (item) { + this.$items = item.parent().children('.item') + return this.$items.index(item || this.$active) + } + + Carousel.prototype.getItemForDirection = function (direction, active) { + var activeIndex = this.getItemIndex(active) + var willWrap = (direction == 'prev' && activeIndex === 0) + || (direction == 'next' && activeIndex == (this.$items.length - 1)) + if (willWrap && !this.options.wrap) return active + var delta = direction == 'prev' ? -1 : 1 + var itemIndex = (activeIndex + delta) % this.$items.length + return this.$items.eq(itemIndex) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || this.getItemForDirection(type, $active) + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var that = this + + if ($next.hasClass('active')) return (this.sliding = false) + + var relatedTarget = $next[0] + var slideEvent = $.Event('slide.bs.carousel', { + relatedTarget: relatedTarget, + direction: direction + }) + this.$element.trigger(slideEvent) + if (slideEvent.isDefaultPrevented()) return + + this.sliding = true + + isCycling && this.pause() + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) + $nextIndicator && $nextIndicator.addClass('active') + } + + var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" + if ($.support.transition && this.$element.hasClass('slide')) { + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one('bsTransitionEnd', function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { + that.$element.trigger(slidEvent) + }, 0) + }) + .emulateTransitionEnd(Carousel.TRANSITION_DURATION) + } else { + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger(slidEvent) + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + var old = $.fn.carousel + + $.fn.carousel = Plugin + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + var clickHandler = function (e) { + var href + var $this = $(this) + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 + if (!$target.hasClass('carousel')) return + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + Plugin.call($target, options) + + if (slideIndex) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + } + + $(document) + .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) + .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + Plugin.call($carousel, $carousel.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: collapse.js v3.3.7 + * http://getbootstrap.com/javascript/#collapse + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + +/* jshint latedef: false */ + ++function ($) { + 'use strict'; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + + '[data-toggle="collapse"][data-target="#' + element.id + '"]') + this.transitioning = null + + if (this.options.parent) { + this.$parent = this.getParent() + } else { + this.addAriaAndCollapsedClass(this.$element, this.$trigger) + } + + if (this.options.toggle) this.toggle() + } + + Collapse.VERSION = '3.3.7' + + Collapse.TRANSITION_DURATION = 350 + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var activesData + var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') + + if (actives && actives.length) { + activesData = actives.data('bs.collapse') + if (activesData && activesData.transitioning) return + } + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + if (actives && actives.length) { + Plugin.call(actives, 'hide') + activesData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing')[dimension](0) + .attr('aria-expanded', true) + + this.$trigger + .removeClass('collapsed') + .attr('aria-expanded', true) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('collapse in')[dimension]('') + this.transitioning = 0 + this.$element + .trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element[dimension](this.$element[dimension]())[0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse in') + .attr('aria-expanded', false) + + this.$trigger + .addClass('collapsed') + .attr('aria-expanded', false) + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .removeClass('collapsing') + .addClass('collapse') + .trigger('hidden.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + Collapse.prototype.getParent = function () { + return $(this.options.parent) + .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') + .each($.proxy(function (i, element) { + var $element = $(element) + this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) + }, this)) + .end() + } + + Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { + var isOpen = $element.hasClass('in') + + $element.attr('aria-expanded', isOpen) + $trigger + .toggleClass('collapsed', !isOpen) + .attr('aria-expanded', isOpen) + } + + function getTargetFromTrigger($trigger) { + var href + var target = $trigger.attr('data-target') + || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 + + return $(target) + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.collapse + + $.fn.collapse = Plugin + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { + var $this = $(this) + + if (!$this.attr('data-target')) e.preventDefault() + + var $target = getTargetFromTrigger($this) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + + Plugin.call($target, option) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: dropdown.js v3.3.7 + * http://getbootstrap.com/javascript/#dropdowns + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle="dropdown"]' + var Dropdown = function (element) { + $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.VERSION = '3.3.7' + + function getParent($this) { + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = selector && $(selector) + + return $parent && $parent.length ? $parent : $this.parent() + } + + function clearMenus(e) { + if (e && e.which === 3) return + $(backdrop).remove() + $(toggle).each(function () { + var $this = $(this) + var $parent = getParent($this) + var relatedTarget = { relatedTarget: this } + + if (!$parent.hasClass('open')) return + + if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return + + $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this.attr('aria-expanded', 'false') + $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget)) + }) + } + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we use a backdrop because click events don't delegate + $(document.createElement('div')) + .addClass('dropdown-backdrop') + .insertAfter($(this)) + .on('click', clearMenus) + } + + var relatedTarget = { relatedTarget: this } + $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this + .trigger('focus') + .attr('aria-expanded', 'true') + + $parent + .toggleClass('open') + .trigger($.Event('shown.bs.dropdown', relatedTarget)) + } + + return false + } + + Dropdown.prototype.keydown = function (e) { + if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return + + var $this = $(this) + + e.preventDefault() + e.stopPropagation() + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + if (!isActive && e.which != 27 || isActive && e.which == 27) { + if (e.which == 27) $parent.find(toggle).trigger('focus') + return $this.trigger('click') + } + + var desc = ' li:not(.disabled):visible a' + var $items = $parent.find('.dropdown-menu' + desc) + + if (!$items.length) return + + var index = $items.index(e.target) + + if (e.which == 38 && index > 0) index-- // up + if (e.which == 40 && index < $items.length - 1) index++ // down + if (!~index) index = 0 + + $items.eq(index).trigger('focus') + } + + + // DROPDOWN PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.dropdown') + + if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.dropdown + + $.fn.dropdown = Plugin + $.fn.dropdown.Constructor = Dropdown + + + // DROPDOWN NO CONFLICT + // ==================== + + $.fn.dropdown.noConflict = function () { + $.fn.dropdown = old + return this + } + + + // APPLY TO STANDARD DROPDOWN ELEMENTS + // =================================== + + $(document) + .on('click.bs.dropdown.data-api', clearMenus) + .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) + .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) + .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown) + .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: modal.js v3.3.7 + * http://getbootstrap.com/javascript/#modals + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // MODAL CLASS DEFINITION + // ====================== + + var Modal = function (element, options) { + this.options = options + this.$body = $(document.body) + this.$element = $(element) + this.$dialog = this.$element.find('.modal-dialog') + this.$backdrop = null + this.isShown = null + this.originalBodyPad = null + this.scrollbarWidth = 0 + this.ignoreBackdropClick = false + + if (this.options.remote) { + this.$element + .find('.modal-content') + .load(this.options.remote, $.proxy(function () { + this.$element.trigger('loaded.bs.modal') + }, this)) + } + } + + Modal.VERSION = '3.3.7' + + Modal.TRANSITION_DURATION = 300 + Modal.BACKDROP_TRANSITION_DURATION = 150 + + Modal.DEFAULTS = { + backdrop: true, + keyboard: true, + show: true + } + + Modal.prototype.toggle = function (_relatedTarget) { + return this.isShown ? this.hide() : this.show(_relatedTarget) + } + + Modal.prototype.show = function (_relatedTarget) { + var that = this + var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) + + this.$element.trigger(e) + + if (this.isShown || e.isDefaultPrevented()) return + + this.isShown = true + + this.checkScrollbar() + this.setScrollbar() + this.$body.addClass('modal-open') + + this.escape() + this.resize() + + this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) + + this.$dialog.on('mousedown.dismiss.bs.modal', function () { + that.$element.one('mouseup.dismiss.bs.modal', function (e) { + if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true + }) + }) + + this.backdrop(function () { + var transition = $.support.transition && that.$element.hasClass('fade') + + if (!that.$element.parent().length) { + that.$element.appendTo(that.$body) // don't move modals dom position + } + + that.$element + .show() + .scrollTop(0) + + that.adjustDialog() + + if (transition) { + that.$element[0].offsetWidth // force reflow + } + + that.$element.addClass('in') + + that.enforceFocus() + + var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) + + transition ? + that.$dialog // wait for modal to slide in + .one('bsTransitionEnd', function () { + that.$element.trigger('focus').trigger(e) + }) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + that.$element.trigger('focus').trigger(e) + }) + } + + Modal.prototype.hide = function (e) { + if (e) e.preventDefault() + + e = $.Event('hide.bs.modal') + + this.$element.trigger(e) + + if (!this.isShown || e.isDefaultPrevented()) return + + this.isShown = false + + this.escape() + this.resize() + + $(document).off('focusin.bs.modal') + + this.$element + .removeClass('in') + .off('click.dismiss.bs.modal') + .off('mouseup.dismiss.bs.modal') + + this.$dialog.off('mousedown.dismiss.bs.modal') + + $.support.transition && this.$element.hasClass('fade') ? + this.$element + .one('bsTransitionEnd', $.proxy(this.hideModal, this)) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + this.hideModal() + } + + Modal.prototype.enforceFocus = function () { + $(document) + .off('focusin.bs.modal') // guard against infinite focus loop + .on('focusin.bs.modal', $.proxy(function (e) { + if (document !== e.target && + this.$element[0] !== e.target && + !this.$element.has(e.target).length) { + this.$element.trigger('focus') + } + }, this)) + } + + Modal.prototype.escape = function () { + if (this.isShown && this.options.keyboard) { + this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { + e.which == 27 && this.hide() + }, this)) + } else if (!this.isShown) { + this.$element.off('keydown.dismiss.bs.modal') + } + } + + Modal.prototype.resize = function () { + if (this.isShown) { + $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) + } else { + $(window).off('resize.bs.modal') + } + } + + Modal.prototype.hideModal = function () { + var that = this + this.$element.hide() + this.backdrop(function () { + that.$body.removeClass('modal-open') + that.resetAdjustments() + that.resetScrollbar() + that.$element.trigger('hidden.bs.modal') + }) + } + + Modal.prototype.removeBackdrop = function () { + this.$backdrop && this.$backdrop.remove() + this.$backdrop = null + } + + Modal.prototype.backdrop = function (callback) { + var that = this + var animate = this.$element.hasClass('fade') ? 'fade' : '' + + if (this.isShown && this.options.backdrop) { + var doAnimate = $.support.transition && animate + + this.$backdrop = $(document.createElement('div')) + .addClass('modal-backdrop ' + animate) + .appendTo(this.$body) + + this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) { + if (this.ignoreBackdropClick) { + this.ignoreBackdropClick = false + return + } + if (e.target !== e.currentTarget) return + this.options.backdrop == 'static' + ? this.$element[0].focus() + : this.hide() + }, this)) + + if (doAnimate) this.$backdrop[0].offsetWidth // force reflow + + this.$backdrop.addClass('in') + + if (!callback) return + + doAnimate ? + this.$backdrop + .one('bsTransitionEnd', callback) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callback() + + } else if (!this.isShown && this.$backdrop) { + this.$backdrop.removeClass('in') + + var callbackRemove = function () { + that.removeBackdrop() + callback && callback() + } + $.support.transition && this.$element.hasClass('fade') ? + this.$backdrop + .one('bsTransitionEnd', callbackRemove) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callbackRemove() + + } else if (callback) { + callback() + } + } + + // these following methods are used to handle overflowing modals + + Modal.prototype.handleUpdate = function () { + this.adjustDialog() + } + + Modal.prototype.adjustDialog = function () { + var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight + + this.$element.css({ + paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '', + paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : '' + }) + } + + Modal.prototype.resetAdjustments = function () { + this.$element.css({ + paddingLeft: '', + paddingRight: '' + }) + } + + Modal.prototype.checkScrollbar = function () { + var fullWindowWidth = window.innerWidth + if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 + var documentElementRect = document.documentElement.getBoundingClientRect() + fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) + } + this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth + this.scrollbarWidth = this.measureScrollbar() + } + + Modal.prototype.setScrollbar = function () { + var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) + this.originalBodyPad = document.body.style.paddingRight || '' + if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) + } + + Modal.prototype.resetScrollbar = function () { + this.$body.css('padding-right', this.originalBodyPad) + } + + Modal.prototype.measureScrollbar = function () { // thx walsh + var scrollDiv = document.createElement('div') + scrollDiv.className = 'modal-scrollbar-measure' + this.$body.append(scrollDiv) + var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth + this.$body[0].removeChild(scrollDiv) + return scrollbarWidth + } + + + // MODAL PLUGIN DEFINITION + // ======================= + + function Plugin(option, _relatedTarget) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.modal') + var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data) $this.data('bs.modal', (data = new Modal(this, options))) + if (typeof option == 'string') data[option](_relatedTarget) + else if (options.show) data.show(_relatedTarget) + }) + } + + var old = $.fn.modal + + $.fn.modal = Plugin + $.fn.modal.Constructor = Modal + + + // MODAL NO CONFLICT + // ================= + + $.fn.modal.noConflict = function () { + $.fn.modal = old + return this + } + + + // MODAL DATA-API + // ============== + + $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) { + var $this = $(this) + var href = $this.attr('href') + var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7 + var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) + + if ($this.is('a')) e.preventDefault() + + $target.one('show.bs.modal', function (showEvent) { + if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown + $target.one('hidden.bs.modal', function () { + $this.is(':visible') && $this.trigger('focus') + }) + }) + Plugin.call($target, option, this) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tooltip.js v3.3.7 + * http://getbootstrap.com/javascript/#tooltip + * Inspired by the original jQuery.tipsy by Jason Frame + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TOOLTIP PUBLIC CLASS DEFINITION + // =============================== + + var Tooltip = function (element, options) { + this.type = null + this.options = null + this.enabled = null + this.timeout = null + this.hoverState = null + this.$element = null + this.inState = null + + this.init('tooltip', element, options) + } + + Tooltip.VERSION = '3.3.7' + + Tooltip.TRANSITION_DURATION = 150 + + Tooltip.DEFAULTS = { + animation: true, + placement: 'top', + selector: false, + template: '', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + container: false, + viewport: { + selector: 'body', + padding: 0 + } + } + + Tooltip.prototype.init = function (type, element, options) { + this.enabled = true + this.type = type + this.$element = $(element) + this.options = this.getOptions(options) + this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) + this.inState = { click: false, hover: false, focus: false } + + if (this.$element[0] instanceof document.constructor && !this.options.selector) { + throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') + } + + var triggers = this.options.trigger.split(' ') + + for (var i = triggers.length; i--;) { + var trigger = triggers[i] + + if (trigger == 'click') { + this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) + } else if (trigger != 'manual') { + var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' + var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' + + this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) + } + } + + this.options.selector ? + (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : + this.fixTitle() + } + + Tooltip.prototype.getDefaults = function () { + return Tooltip.DEFAULTS + } + + Tooltip.prototype.getOptions = function (options) { + options = $.extend({}, this.getDefaults(), this.$element.data(), options) + + if (options.delay && typeof options.delay == 'number') { + options.delay = { + show: options.delay, + hide: options.delay + } + } + + return options + } + + Tooltip.prototype.getDelegateOptions = function () { + var options = {} + var defaults = this.getDefaults() + + this._options && $.each(this._options, function (key, value) { + if (defaults[key] != value) options[key] = value + }) + + return options + } + + Tooltip.prototype.enter = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true + } + + if (self.tip().hasClass('in') || self.hoverState == 'in') { + self.hoverState = 'in' + return + } + + clearTimeout(self.timeout) + + self.hoverState = 'in' + + if (!self.options.delay || !self.options.delay.show) return self.show() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'in') self.show() + }, self.options.delay.show) + } + + Tooltip.prototype.isInStateTrue = function () { + for (var key in this.inState) { + if (this.inState[key]) return true + } + + return false + } + + Tooltip.prototype.leave = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false + } + + if (self.isInStateTrue()) return + + clearTimeout(self.timeout) + + self.hoverState = 'out' + + if (!self.options.delay || !self.options.delay.hide) return self.hide() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'out') self.hide() + }, self.options.delay.hide) + } + + Tooltip.prototype.show = function () { + var e = $.Event('show.bs.' + this.type) + + if (this.hasContent() && this.enabled) { + this.$element.trigger(e) + + var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) + if (e.isDefaultPrevented() || !inDom) return + var that = this + + var $tip = this.tip() + + var tipId = this.getUID(this.type) + + this.setContent() + $tip.attr('id', tipId) + this.$element.attr('aria-describedby', tipId) + + if (this.options.animation) $tip.addClass('fade') + + var placement = typeof this.options.placement == 'function' ? + this.options.placement.call(this, $tip[0], this.$element[0]) : + this.options.placement + + var autoToken = /\s?auto?\s?/i + var autoPlace = autoToken.test(placement) + if (autoPlace) placement = placement.replace(autoToken, '') || 'top' + + $tip + .detach() + .css({ top: 0, left: 0, display: 'block' }) + .addClass(placement) + .data('bs.' + this.type, this) + + this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) + this.$element.trigger('inserted.bs.' + this.type) + + var pos = this.getPosition() + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (autoPlace) { + var orgPlacement = placement + var viewportDim = this.getPosition(this.$viewport) + + placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : + placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : + placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : + placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : + placement + + $tip + .removeClass(orgPlacement) + .addClass(placement) + } + + var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) + + this.applyPlacement(calculatedOffset, placement) + + var complete = function () { + var prevHoverState = that.hoverState + that.$element.trigger('shown.bs.' + that.type) + that.hoverState = null + + if (prevHoverState == 'out') that.leave(that) + } + + $.support.transition && this.$tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + } + } + + Tooltip.prototype.applyPlacement = function (offset, placement) { + var $tip = this.tip() + var width = $tip[0].offsetWidth + var height = $tip[0].offsetHeight + + // manually read margins because getBoundingClientRect includes difference + var marginTop = parseInt($tip.css('margin-top'), 10) + var marginLeft = parseInt($tip.css('margin-left'), 10) + + // we must check for NaN for ie 8/9 + if (isNaN(marginTop)) marginTop = 0 + if (isNaN(marginLeft)) marginLeft = 0 + + offset.top += marginTop + offset.left += marginLeft + + // $.fn.offset doesn't round pixel values + // so we use setOffset directly with our own function B-0 + $.offset.setOffset($tip[0], $.extend({ + using: function (props) { + $tip.css({ + top: Math.round(props.top), + left: Math.round(props.left) + }) + } + }, offset), 0) + + $tip.addClass('in') + + // check to see if placing tip in new offset caused the tip to resize itself + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (placement == 'top' && actualHeight != height) { + offset.top = offset.top + height - actualHeight + } + + var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) + + if (delta.left) offset.left += delta.left + else offset.top += delta.top + + var isVertical = /top|bottom/.test(placement) + var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight + var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' + + $tip.offset(offset) + this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) + } + + Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { + this.arrow() + .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') + .css(isVertical ? 'top' : 'left', '') + } + + Tooltip.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + + $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) + $tip.removeClass('fade in top bottom left right') + } + + Tooltip.prototype.hide = function (callback) { + var that = this + var $tip = $(this.$tip) + var e = $.Event('hide.bs.' + this.type) + + function complete() { + if (that.hoverState != 'in') $tip.detach() + if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary. + that.$element + .removeAttr('aria-describedby') + .trigger('hidden.bs.' + that.type) + } + callback && callback() + } + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + $tip.removeClass('in') + + $.support.transition && $tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + + this.hoverState = null + + return this + } + + Tooltip.prototype.fixTitle = function () { + var $e = this.$element + if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { + $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') + } + } + + Tooltip.prototype.hasContent = function () { + return this.getTitle() + } + + Tooltip.prototype.getPosition = function ($element) { + $element = $element || this.$element + + var el = $element[0] + var isBody = el.tagName == 'BODY' + + var elRect = el.getBoundingClientRect() + if (elRect.width == null) { + // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 + elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) + } + var isSvg = window.SVGElement && el instanceof window.SVGElement + // Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3. + // See https://github.com/twbs/bootstrap/issues/20280 + var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset()) + var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } + var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null + + return $.extend({}, elRect, scroll, outerDims, elOffset) + } + + Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { + return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : + /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } + + } + + Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { + var delta = { top: 0, left: 0 } + if (!this.$viewport) return delta + + var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 + var viewportDimensions = this.getPosition(this.$viewport) + + if (/right|left/.test(placement)) { + var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll + var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight + if (topEdgeOffset < viewportDimensions.top) { // top overflow + delta.top = viewportDimensions.top - topEdgeOffset + } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow + delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset + } + } else { + var leftEdgeOffset = pos.left - viewportPadding + var rightEdgeOffset = pos.left + viewportPadding + actualWidth + if (leftEdgeOffset < viewportDimensions.left) { // left overflow + delta.left = viewportDimensions.left - leftEdgeOffset + } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow + delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset + } + } + + return delta + } + + Tooltip.prototype.getTitle = function () { + var title + var $e = this.$element + var o = this.options + + title = $e.attr('data-original-title') + || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) + + return title + } + + Tooltip.prototype.getUID = function (prefix) { + do prefix += ~~(Math.random() * 1000000) + while (document.getElementById(prefix)) + return prefix + } + + Tooltip.prototype.tip = function () { + if (!this.$tip) { + this.$tip = $(this.options.template) + if (this.$tip.length != 1) { + throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') + } + } + return this.$tip + } + + Tooltip.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) + } + + Tooltip.prototype.enable = function () { + this.enabled = true + } + + Tooltip.prototype.disable = function () { + this.enabled = false + } + + Tooltip.prototype.toggleEnabled = function () { + this.enabled = !this.enabled + } + + Tooltip.prototype.toggle = function (e) { + var self = this + if (e) { + self = $(e.currentTarget).data('bs.' + this.type) + if (!self) { + self = new this.constructor(e.currentTarget, this.getDelegateOptions()) + $(e.currentTarget).data('bs.' + this.type, self) + } + } + + if (e) { + self.inState.click = !self.inState.click + if (self.isInStateTrue()) self.enter(self) + else self.leave(self) + } else { + self.tip().hasClass('in') ? self.leave(self) : self.enter(self) + } + } + + Tooltip.prototype.destroy = function () { + var that = this + clearTimeout(this.timeout) + this.hide(function () { + that.$element.off('.' + that.type).removeData('bs.' + that.type) + if (that.$tip) { + that.$tip.detach() + } + that.$tip = null + that.$arrow = null + that.$viewport = null + that.$element = null + }) + } + + + // TOOLTIP PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tooltip') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tooltip + + $.fn.tooltip = Plugin + $.fn.tooltip.Constructor = Tooltip + + + // TOOLTIP NO CONFLICT + // =================== + + $.fn.tooltip.noConflict = function () { + $.fn.tooltip = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: popover.js v3.3.7 + * http://getbootstrap.com/javascript/#popovers + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // POPOVER PUBLIC CLASS DEFINITION + // =============================== + + var Popover = function (element, options) { + this.init('popover', element, options) + } + + if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') + + Popover.VERSION = '3.3.7' + + Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }) + + + // NOTE: POPOVER EXTENDS tooltip.js + // ================================ + + Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) + + Popover.prototype.constructor = Popover + + Popover.prototype.getDefaults = function () { + return Popover.DEFAULTS + } + + Popover.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + var content = this.getContent() + + $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) + $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events + this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' + ](content) + + $tip.removeClass('fade top bottom left right in') + + // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do + // this manually by checking the contents. + if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() + } + + Popover.prototype.hasContent = function () { + return this.getTitle() || this.getContent() + } + + Popover.prototype.getContent = function () { + var $e = this.$element + var o = this.options + + return $e.attr('data-content') + || (typeof o.content == 'function' ? + o.content.call($e[0]) : + o.content) + } + + Popover.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.arrow')) + } + + + // POPOVER PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.popover') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.popover', (data = new Popover(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.popover + + $.fn.popover = Plugin + $.fn.popover.Constructor = Popover + + + // POPOVER NO CONFLICT + // =================== + + $.fn.popover.noConflict = function () { + $.fn.popover = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: scrollspy.js v3.3.7 + * http://getbootstrap.com/javascript/#scrollspy + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // SCROLLSPY CLASS DEFINITION + // ========================== + + function ScrollSpy(element, options) { + this.$body = $(document.body) + this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) + this.options = $.extend({}, ScrollSpy.DEFAULTS, options) + this.selector = (this.options.target || '') + ' .nav li > a' + this.offsets = [] + this.targets = [] + this.activeTarget = null + this.scrollHeight = 0 + + this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) + this.refresh() + this.process() + } + + ScrollSpy.VERSION = '3.3.7' + + ScrollSpy.DEFAULTS = { + offset: 10 + } + + ScrollSpy.prototype.getScrollHeight = function () { + return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) + } + + ScrollSpy.prototype.refresh = function () { + var that = this + var offsetMethod = 'offset' + var offsetBase = 0 + + this.offsets = [] + this.targets = [] + this.scrollHeight = this.getScrollHeight() + + if (!$.isWindow(this.$scrollElement[0])) { + offsetMethod = 'position' + offsetBase = this.$scrollElement.scrollTop() + } + + this.$body + .find(this.selector) + .map(function () { + var $el = $(this) + var href = $el.data('target') || $el.attr('href') + var $href = /^#./.test(href) && $(href) + + return ($href + && $href.length + && $href.is(':visible') + && [[$href[offsetMethod]().top + offsetBase, href]]) || null + }) + .sort(function (a, b) { return a[0] - b[0] }) + .each(function () { + that.offsets.push(this[0]) + that.targets.push(this[1]) + }) + } + + ScrollSpy.prototype.process = function () { + var scrollTop = this.$scrollElement.scrollTop() + this.options.offset + var scrollHeight = this.getScrollHeight() + var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() + var offsets = this.offsets + var targets = this.targets + var activeTarget = this.activeTarget + var i + + if (this.scrollHeight != scrollHeight) { + this.refresh() + } + + if (scrollTop >= maxScroll) { + return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) + } + + if (activeTarget && scrollTop < offsets[0]) { + this.activeTarget = null + return this.clear() + } + + for (i = offsets.length; i--;) { + activeTarget != targets[i] + && scrollTop >= offsets[i] + && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1]) + && this.activate(targets[i]) + } + } + + ScrollSpy.prototype.activate = function (target) { + this.activeTarget = target + + this.clear() + + var selector = this.selector + + '[data-target="' + target + '"],' + + this.selector + '[href="' + target + '"]' + + var active = $(selector) + .parents('li') + .addClass('active') + + if (active.parent('.dropdown-menu').length) { + active = active + .closest('li.dropdown') + .addClass('active') + } + + active.trigger('activate.bs.scrollspy') + } + + ScrollSpy.prototype.clear = function () { + $(this.selector) + .parentsUntil(this.options.target, '.active') + .removeClass('active') + } + + + // SCROLLSPY PLUGIN DEFINITION + // =========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.scrollspy') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.scrollspy + + $.fn.scrollspy = Plugin + $.fn.scrollspy.Constructor = ScrollSpy + + + // SCROLLSPY NO CONFLICT + // ===================== + + $.fn.scrollspy.noConflict = function () { + $.fn.scrollspy = old + return this + } + + + // SCROLLSPY DATA-API + // ================== + + $(window).on('load.bs.scrollspy.data-api', function () { + $('[data-spy="scroll"]').each(function () { + var $spy = $(this) + Plugin.call($spy, $spy.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tab.js v3.3.7 + * http://getbootstrap.com/javascript/#tabs + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TAB CLASS DEFINITION + // ==================== + + var Tab = function (element) { + // jscs:disable requireDollarBeforejQueryAssignment + this.element = $(element) + // jscs:enable requireDollarBeforejQueryAssignment + } + + Tab.VERSION = '3.3.7' + + Tab.TRANSITION_DURATION = 150 + + Tab.prototype.show = function () { + var $this = this.element + var $ul = $this.closest('ul:not(.dropdown-menu)') + var selector = $this.data('target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + if ($this.parent('li').hasClass('active')) return + + var $previous = $ul.find('.active:last a') + var hideEvent = $.Event('hide.bs.tab', { + relatedTarget: $this[0] + }) + var showEvent = $.Event('show.bs.tab', { + relatedTarget: $previous[0] + }) + + $previous.trigger(hideEvent) + $this.trigger(showEvent) + + if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return + + var $target = $(selector) + + this.activate($this.closest('li'), $ul) + this.activate($target, $target.parent(), function () { + $previous.trigger({ + type: 'hidden.bs.tab', + relatedTarget: $this[0] + }) + $this.trigger({ + type: 'shown.bs.tab', + relatedTarget: $previous[0] + }) + }) + } + + Tab.prototype.activate = function (element, container, callback) { + var $active = container.find('> .active') + var transition = callback + && $.support.transition + && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length) + + function next() { + $active + .removeClass('active') + .find('> .dropdown-menu > .active') + .removeClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', false) + + element + .addClass('active') + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + + if (transition) { + element[0].offsetWidth // reflow for transition + element.addClass('in') + } else { + element.removeClass('fade') + } + + if (element.parent('.dropdown-menu').length) { + element + .closest('li.dropdown') + .addClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + } + + callback && callback() + } + + $active.length && transition ? + $active + .one('bsTransitionEnd', next) + .emulateTransitionEnd(Tab.TRANSITION_DURATION) : + next() + + $active.removeClass('in') + } + + + // TAB PLUGIN DEFINITION + // ===================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tab') + + if (!data) $this.data('bs.tab', (data = new Tab(this))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tab + + $.fn.tab = Plugin + $.fn.tab.Constructor = Tab + + + // TAB NO CONFLICT + // =============== + + $.fn.tab.noConflict = function () { + $.fn.tab = old + return this + } + + + // TAB DATA-API + // ============ + + var clickHandler = function (e) { + e.preventDefault() + Plugin.call($(this), 'show') + } + + $(document) + .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) + .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: affix.js v3.3.7 + * http://getbootstrap.com/javascript/#affix + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // AFFIX CLASS DEFINITION + // ====================== + + var Affix = function (element, options) { + this.options = $.extend({}, Affix.DEFAULTS, options) + + this.$target = $(this.options.target) + .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) + .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) + + this.$element = $(element) + this.affixed = null + this.unpin = null + this.pinnedOffset = null + + this.checkPosition() + } + + Affix.VERSION = '3.3.7' + + Affix.RESET = 'affix affix-top affix-bottom' + + Affix.DEFAULTS = { + offset: 0, + target: window + } + + Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + var targetHeight = this.$target.height() + + if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false + + if (this.affixed == 'bottom') { + if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' + return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' + } + + var initializing = this.affixed == null + var colliderTop = initializing ? scrollTop : position.top + var colliderHeight = initializing ? targetHeight : height + + if (offsetTop != null && scrollTop <= offsetTop) return 'top' + if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' + + return false + } + + Affix.prototype.getPinnedOffset = function () { + if (this.pinnedOffset) return this.pinnedOffset + this.$element.removeClass(Affix.RESET).addClass('affix') + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + return (this.pinnedOffset = position.top - scrollTop) + } + + Affix.prototype.checkPositionWithEventLoop = function () { + setTimeout($.proxy(this.checkPosition, this), 1) + } + + Affix.prototype.checkPosition = function () { + if (!this.$element.is(':visible')) return + + var height = this.$element.height() + var offset = this.options.offset + var offsetTop = offset.top + var offsetBottom = offset.bottom + var scrollHeight = Math.max($(document).height(), $(document.body).height()) + + if (typeof offset != 'object') offsetBottom = offsetTop = offset + if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) + if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) + + var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) + + if (this.affixed != affix) { + if (this.unpin != null) this.$element.css('top', '') + + var affixType = 'affix' + (affix ? '-' + affix : '') + var e = $.Event(affixType + '.bs.affix') + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + this.affixed = affix + this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + + this.$element + .removeClass(Affix.RESET) + .addClass(affixType) + .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') + } + + if (affix == 'bottom') { + this.$element.offset({ + top: scrollHeight - height - offsetBottom + }) + } + } + + + // AFFIX PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.affix') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.affix', (data = new Affix(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.affix + + $.fn.affix = Plugin + $.fn.affix.Constructor = Affix + + + // AFFIX NO CONFLICT + // ================= + + $.fn.affix.noConflict = function () { + $.fn.affix = old + return this + } + + + // AFFIX DATA-API + // ============== + + $(window).on('load', function () { + $('[data-spy="affix"]').each(function () { + var $spy = $(this) + var data = $spy.data() + + data.offset = data.offset || {} + + if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom + if (data.offsetTop != null) data.offset.top = data.offsetTop + + Plugin.call($spy, data) + }) + }) + +}(jQuery); diff --git a/assets/js/bootstrap.min.js b/assets/js/bootstrap.min.js new file mode 100644 index 0000000..9bcd2fc --- /dev/null +++ b/assets/js/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ +if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); \ No newline at end of file diff --git a/assets/js/highlight.pack.js b/assets/js/highlight.pack.js new file mode 100644 index 0000000..7b0349b --- /dev/null +++ b/assets/js/highlight.pack.js @@ -0,0 +1,2 @@ +/*! highlight.js v9.7.0 | BSD3 License | git.io/hljslicense */ +!function(e){var n="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):n&&(n.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return n.hljs}))}(function(e){function n(e){return e.replace(/[&<>]/gm,function(e){return I[e]})}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0===t.index}function a(e){return k.test(e)}function i(e){var n,t,r,i,o=e.className+" ";if(o+=e.parentNode?e.parentNode.className:"",t=B.exec(o))return R(t[1])?t[1]:"no-highlight";for(o=o.split(/\s+/),n=0,r=o.length;r>n;n++)if(i=o[n],a(i)||R(i))return i}function o(e,n){var t,r={};for(t in e)r[t]=e[t];if(n)for(t in n)r[t]=n[t];return r}function u(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?a+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function c(e,r,a){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function u(e){l+=""}function c(e){("start"===e.event?o:u)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=i();if(l+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g===e){f.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g===e&&g.length&&g[0].offset===s);f.reverse().forEach(o)}else"start"===g[0].event?f.push(g[0].node):f.pop(),c(g.splice(0,1)[0])}return l+n(a.substr(s))}function s(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var u={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");u[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):E(a.k).forEach(function(e){c(e,a.k[e])}),a.k=u}a.lR=t(a.l||/\w+/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),null==a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(o(e,n))}):s.push("self"===e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var l=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=l.length?t(l.join("|"),!0):{exec:function(){return null}}}}r(e)}function l(e,t,a,i){function o(e,n){var t,a;for(t=0,a=n.c.length;a>t;t++)if(r(n.c[t].bR,e))return n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function c(e,n){return!a&&r(n.iR,e)}function g(e,n){var t=N.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function h(e,n,t,r){var a=r?"":y.classPrefix,i='',i+n+o}function p(){var e,t,r,a;if(!E.k)return n(B);for(a="",t=0,E.lR.lastIndex=0,r=E.lR.exec(B);r;)a+=n(B.substr(t,r.index-t)),e=g(E,r),e?(M+=e[1],a+=h(e[0],n(r[0]))):a+=n(r[0]),t=E.lR.lastIndex,r=E.lR.exec(B);return a+n(B.substr(t))}function d(){var e="string"==typeof E.sL;if(e&&!x[E.sL])return n(B);var t=e?l(E.sL,B,!0,L[E.sL]):f(B,E.sL.length?E.sL:void 0);return E.r>0&&(M+=t.r),e&&(L[E.sL]=t.top),h(t.language,t.value,!1,!0)}function b(){k+=null!=E.sL?d():p(),B=""}function v(e){k+=e.cN?h(e.cN,"",!0):"",E=Object.create(e,{parent:{value:E}})}function m(e,n){if(B+=e,null==n)return b(),0;var t=o(n,E);if(t)return t.skip?B+=n:(t.eB&&(B+=n),b(),t.rB||t.eB||(B=n)),v(t,n),t.rB?0:n.length;var r=u(E,n);if(r){var a=E;a.skip?B+=n:(a.rE||a.eE||(B+=n),b(),a.eE&&(B=n));do E.cN&&(k+=C),E.skip||(M+=E.r),E=E.parent;while(E!==r.parent);return r.starts&&v(r.starts,""),a.rE?0:n.length}if(c(n,E))throw new Error('Illegal lexeme "'+n+'" for mode "'+(E.cN||"")+'"');return B+=n,n.length||1}var N=R(e);if(!N)throw new Error('Unknown language: "'+e+'"');s(N);var w,E=i||N,L={},k="";for(w=E;w!==N;w=w.parent)w.cN&&(k=h(w.cN,"",!0)+k);var B="",M=0;try{for(var I,j,O=0;;){if(E.t.lastIndex=O,I=E.t.exec(t),!I)break;j=m(t.substr(O,I.index-O),I[0]),O=I.index+j}for(m(t.substr(O)),w=E;w.parent;w=w.parent)w.cN&&(k+=C);return{r:M,value:k,language:e,top:E}}catch(T){if(T.message&&-1!==T.message.indexOf("Illegal"))return{r:0,value:n(t)};throw T}}function f(e,t){t=t||y.languages||E(x);var r={r:0,value:n(e)},a=r;return t.filter(R).forEach(function(n){var t=l(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}),a.language&&(r.second_best=a),r}function g(e){return y.tabReplace||y.useBR?e.replace(M,function(e,n){return y.useBR&&"\n"===e?"
":y.tabReplace?n.replace(/\t/g,y.tabReplace):void 0}):e}function h(e,n,t){var r=n?L[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function p(e){var n,t,r,o,s,p=i(e);a(p)||(y.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):n=e,s=n.textContent,r=p?l(p,s,!0):f(s),t=u(n),t.length&&(o=document.createElementNS("http://www.w3.org/1999/xhtml","div"),o.innerHTML=r.value,r.value=c(t,u(o),s)),r.value=g(r.value),e.innerHTML=r.value,e.className=h(e.className,p,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function d(e){y=o(y,e)}function b(){if(!b.called){b.called=!0;var e=document.querySelectorAll("pre code");w.forEach.call(e,p)}}function v(){addEventListener("DOMContentLoaded",b,!1),addEventListener("load",b,!1)}function m(n,t){var r=x[n]=t(e);r.aliases&&r.aliases.forEach(function(e){L[e]=n})}function N(){return E(x)}function R(e){return e=(e||"").toLowerCase(),x[e]||x[L[e]]}var w=[],E=Object.keys,x={},L={},k=/^(no-?highlight|plain|text)$/i,B=/\blang(?:uage)?-([\w-]+)\b/i,M=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,C="
",y={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0},I={"&":"&","<":"<",">":">"};return e.highlight=l,e.highlightAuto=f,e.fixMarkup=g,e.highlightBlock=p,e.configure=d,e.initHighlighting=b,e.initHighlightingOnLoad=v,e.registerLanguage=m,e.listLanguages=N,e.getLanguage=R,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|like)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e});hljs.registerLanguage("ruby",function(e){var b="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},c={cN:"doctag",b:"@[A-Za-z]+"},a={b:"#<",e:">"},s=[e.C("#","$",{c:[c]}),e.C("^\\=begin","^\\=end",{c:[c],r:10}),e.C("^__END__","\\n$")],n={cN:"subst",b:"#\\{",e:"}",k:r},t={cN:"string",c:[e.BE,n],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:/`/,e:/`/},{b:"%[qQwWx]?\\(",e:"\\)"},{b:"%[qQwWx]?\\[",e:"\\]"},{b:"%[qQwWx]?{",e:"}"},{b:"%[qQwWx]?<",e:">"},{b:"%[qQwWx]?/",e:"/"},{b:"%[qQwWx]?%",e:"%"},{b:"%[qQwWx]?-",e:"-"},{b:"%[qQwWx]?\\|",e:"\\|"},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{b:/<<(-?)\w+$/,e:/^\s*\w+$/}]},i={cN:"params",b:"\\(",e:"\\)",endsParent:!0,k:r},d=[t,a,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{b:"<\\s*",c:[{b:"("+e.IR+"::)?"+e.IR}]}].concat(s)},{cN:"function",bK:"def",e:"$|;",c:[e.inherit(e.TM,{b:b}),i].concat(s)},{b:e.IR+"::"},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"symbol",b:":(?!\\s)",c:[t,{b:b}],r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{cN:"params",b:/\|/,e:/\|/,k:r},{b:"("+e.RSR+")\\s*",c:[a,{cN:"regexp",c:[e.BE,n],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}].concat(s),r:0}].concat(s);n.c=d,i.c=d;var l="[>?]>",o="[\\w#]+\\(\\w+\\):\\d+:\\d+>",w="(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>",u=[{b:/^\s*=>/,starts:{e:"$",c:d}},{cN:"meta",b:"^("+l+"|"+o+"|"+w+")",starts:{e:"$",c:d}}];return{aliases:["rb","gemspec","podspec","thor","irb"],k:r,i:/\/\*/,c:s.concat(u).concat(d)}});hljs.registerLanguage("yaml",function(e){var a={literal:"{ } true false yes no Yes No True False null"},b="^[ \\-]*",r="[a-zA-Z_][\\w\\-]*",t={cN:"attr",v:[{b:b+r+":"},{b:b+'"'+r+'":'},{b:b+"'"+r+"':"}]},c={cN:"template-variable",v:[{b:"{{",e:"}}"},{b:"%{",e:"}"}]},l={cN:"string",r:0,v:[{b:/'/,e:/'/},{b:/"/,e:/"/}],c:[e.BE,c]};return{cI:!0,aliases:["yml","YAML","yaml"],c:[t,{cN:"meta",b:"^---s*$",r:10},{cN:"string",b:"[\\|>] *$",rE:!0,c:l.c,e:t.v[0].b},{b:"<%[%=-]?",e:"[%-]?%>",sL:"ruby",eB:!0,eE:!0,r:0},{cN:"type",b:"!!"+e.UIR},{cN:"meta",b:"&"+e.UIR+"$"},{cN:"meta",b:"\\*"+e.UIR+"$"},{cN:"bullet",b:"^ *-",r:0},l,e.HCM,e.CNM],k:a}});hljs.registerLanguage("sql",function(e){var t=e.C("--","$");return{cI:!0,i:/[<>{}*#]/,c:[{bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment",e:/;/,eW:!0,l:/[\w\.]+/,k:{keyword:"abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias allocate allow alter always analyze ancillary and any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second section securefile security seed segment select self sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null",built_in:"array bigint binary bit blob boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text varchar varying void"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM,e.CBCM,t]},e.CBCM,t]}});hljs.registerLanguage("xml",function(s){var e="[A-Za-z0-9\\._:-]+",t={eW:!0,i:/`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},s.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0}]},{cN:"tag",b:"|$)",e:">",k:{name:"style"},c:[t],starts:{e:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"|$)",e:">",k:{name:"script"},c:[t],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"meta",v:[{b:/<\?xml/,e:/\?>/,r:10},{b:/<\?\w+/,e:/\?>/}]},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},t]}]}});hljs.registerLanguage("python",function(e){var r={cN:"meta",b:/^(>>>|\.\.\.) /},b={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[r],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[r],r:10},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},e.ASM,e.QSM]},a={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},l={cN:"params",b:/\(/,e:/\)/,c:["self",r,a,b]};return{aliases:["py","gyp"],k:{keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},i:/(<\/|->|\?)/,c:[r,a,b,e.HCM,{v:[{cN:"function",bK:"def",r:10},{cN:"class",bK:"class"}],e:/:/,i:/[${=;\n,]/,c:[e.UTM,l,{b:/->/,eW:!0,k:"None"}]},{cN:"meta",b:/^[\t ]*@/,e:/$/},{b:/\b(print|exec)\(/}]}});hljs.registerLanguage("makefile",function(e){var a={cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]};return{aliases:["mk","mak"],c:[e.HCM,{b:/^\w+\s*\W*=/,rB:!0,r:0,starts:{e:/\s*\W*=/,eE:!0,starts:{e:/$/,r:0,c:[a]}}},{cN:"section",b:/^[\w]+:\s*$/},{cN:"meta",b:/^\.PHONY:/,e:/$/,k:{"meta-keyword":".PHONY"},l:/[\.\w]+/},{b:/^\t+/,e:/$/,r:0,c:[e.QSM,a]}]}});hljs.registerLanguage("cpp",function(t){var e={cN:"keyword",b:"\\b[a-z\\d_]*_t\\b"},r={cN:"string",v:[{b:'(u8?|U)?L?"',e:'"',i:"\\n",c:[t.BE]},{b:'(u8?|U)?R"',e:'"',c:[t.BE]},{b:"'\\\\?.",e:"'",i:"."}]},s={cN:"number",v:[{b:"\\b(0b[01']+)"},{b:"\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{b:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],r:0},i={cN:"meta",b:/#\s*[a-z]+\b/,e:/$/,k:{"meta-keyword":"if else elif endif define undef warning error line pragma ifdef ifndef include"},c:[{b:/\\\n/,r:0},t.inherit(r,{cN:"meta-string"}),{cN:"meta-string",b:"<",e:">",i:"\\n"},t.CLCM,t.CBCM]},a=t.IR+"\\s*\\(",c={keyword:"int float while private char catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const struct for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using class asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignof constexpr decltype noexcept static_assert thread_local restrict _Bool complex _Complex _Imaginary atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return",built_in:"std string cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr",literal:"true false nullptr NULL"},n=[e,t.CLCM,t.CBCM,s,r];return{aliases:["c","cc","h","c++","h++","hpp"],k:c,i:"",k:c,c:["self",e]},{b:t.IR+"::",k:c},{v:[{b:/=/,e:/;/},{b:/\(/,e:/\)/},{bK:"new throw return else",e:/;/}],k:c,c:n.concat([{b:/\(/,e:/\)/,k:c,c:n.concat(["self"]),r:0}]),r:0},{cN:"function",b:"("+t.IR+"[\\*&\\s]+)+"+a,rB:!0,e:/[{;=]/,eE:!0,k:c,i:/[^\w\s\*&]/,c:[{b:a,rB:!0,c:[t.TM],r:0},{cN:"params",b:/\(/,e:/\)/,k:c,r:0,c:[t.CLCM,t.CBCM,r,s,e]},t.CLCM,t.CBCM,i]}]),exports:{preprocessor:i,strings:r,k:c}}});hljs.registerLanguage("vbscript",function(e){return{aliases:["vbs"],cI:!0,k:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:"lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid scriptenginebuildversion scriptengine split scriptengineminorversion cint sin datepart ltrim sqr scriptenginemajorversion time derived eval date formatpercent exp inputbox left ascw chrw regexp server response request cstr err",literal:"true false null nothing empty"},i:"//",c:[e.inherit(e.QSM,{c:[{b:'""'}]}),e.C(/'/,/$/,{r:0}),e.CNM]}});hljs.registerLanguage("perl",function(e){var t="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when",r={cN:"subst",b:"[$@]\\{",e:"\\}",k:t},s={b:"->{",e:"}"},n={v:[{b:/\$\d/},{b:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{b:/[\$%@][^\s\w{]/,r:0}]},i=[e.BE,r,n],o=[n,e.HCM,e.C("^\\=\\w","\\=cut",{eW:!0}),s,{cN:"string",c:i,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[e.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[e.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"function",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",eE:!0,r:5,c:[e.TM]},{b:"-\\w\\b",r:0},{b:"^__DATA__$",e:"^__END__$",sL:"mojolicious",c:[{b:"^@@.*",e:"$",cN:"comment"}]}];return r.c=o,s.c=o,{aliases:["pl","pm"],l:/[\w\.]+/,k:t,c:o}});hljs.registerLanguage("cs",function(e){var i={keyword:"abstract as base bool break byte case catch char checked const continue decimal default delegate do double else enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while nameof add alias ascending async await by descending dynamic equals from get global group into join let on orderby partial remove select set value var where yield",literal:"null false true"},r={cN:"string",b:'@"',e:'"',c:[{b:'""'}]},t=e.inherit(r,{i:/\n/}),a={cN:"subst",b:"{",e:"}",k:i},n=e.inherit(a,{i:/\n/}),c={cN:"string",b:/\$"/,e:'"',i:/\n/,c:[{b:"{{"},{b:"}}"},e.BE,n]},s={cN:"string",b:/\$@"/,e:'"',c:[{b:"{{"},{b:"}}"},{b:'""'},a]},o=e.inherit(s,{i:/\n/,c:[{b:"{{"},{b:"}}"},{b:'""'},n]});a.c=[s,c,r,e.ASM,e.QSM,e.CNM,e.CBCM],n.c=[o,c,t,e.ASM,e.QSM,e.CNM,e.inherit(e.CBCM,{i:/\n/})];var l={v:[s,c,r,e.ASM,e.QSM]},b=e.IR+"(<"+e.IR+"(\\s*,\\s*"+e.IR+")*>)?(\\[\\])?";return{aliases:["csharp"],k:i,i:/::/,c:[e.C("///","$",{rB:!0,c:[{cN:"doctag",v:[{b:"///",r:0},{b:""},{b:""}]}]}),e.CLCM,e.CBCM,{cN:"meta",b:"#",e:"$",k:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},l,e.CNM,{bK:"class interface",e:/[{;=]/,i:/[^\s:]/,c:[e.TM,e.CLCM,e.CBCM]},{bK:"namespace",e:/[{;=]/,i:/[^\s:]/,c:[e.inherit(e.TM,{b:"[a-zA-Z](\\.?\\w)*"}),e.CLCM,e.CBCM]},{bK:"new return throw await",r:0},{cN:"function",b:"("+b+"\\s+)+"+e.IR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:i,c:[{b:e.IR+"\\s*\\(",rB:!0,c:[e.TM],r:0},{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,k:i,r:0,c:[l,e.CNM,e.CBCM]},e.CLCM,e.CBCM]}]}});hljs.registerLanguage("vbnet",function(e){return{aliases:["vb"],cI:!0,k:{keyword:"addhandler addressof alias and andalso aggregate ansi as assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into is isfalse isnot istrue join key let lib like loop me mid mod module mustinherit mustoverride mybase myclass namespace narrowing new next not notinheritable notoverridable of off on operator option optional or order orelse overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim rem removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly xor",built_in:"boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype date decimal directcast double gettype getxmlnamespace iif integer long object sbyte short single string trycast typeof uinteger ulong ushort",literal:"true false nothing"},i:"//|{|}|endif|gosub|variant|wend",c:[e.inherit(e.QSM,{c:[{b:'""'}]}),e.C("'","$",{rB:!0,c:[{cN:"doctag",b:"'''|",c:[e.PWM]},{cN:"doctag",b:"",c:[e.PWM]}]}),e.CNM,{cN:"meta",b:"#",e:"$",k:{"meta-keyword":"if else elseif end region externalsource"}}]}});hljs.registerLanguage("php",function(e){var c={b:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},i={cN:"meta",b:/<\?(php)?|\?>/},t={cN:"string",c:[e.BE,i],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},a={v:[e.BNM,e.CNM]};return{aliases:["php3","php4","php5","php6"],cI:!0,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[e.HCM,e.C("//","$",{c:[i]}),e.C("/\\*","\\*/",{c:[{cN:"doctag",b:"@[A-Za-z]+"}]}),e.C("__halt_compiler.+?;",!1,{eW:!0,k:"__halt_compiler",l:e.UIR}),{cN:"string",b:/<<<['"]?\w+['"]?$/,e:/^\w+;?$/,c:[e.BE,{cN:"subst",v:[{b:/\$\w+/},{b:/\{\$/,e:/\}/}]}]},i,{cN:"keyword",b:/\$this\b/},c,{b:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{cN:"function",bK:"function",e:/[;{]/,eE:!0,i:"\\$|\\[|%",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",c,e.CBCM,t,a]}]},{cN:"class",bK:"class interface",e:"{",eE:!0,i:/[:\(\$"]/,c:[{bK:"extends implements"},e.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[e.UTM]},{bK:"use",e:";",c:[e.UTM]},{b:"=>"},t,a]}});hljs.registerLanguage("typescript",function(e){var r={keyword:"in if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const class public private protected get set super static implements enum export import declare type namespace abstract",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document any number boolean string void"};return{aliases:["ts"],k:r,c:[{cN:"meta",b:/^\s*['"]use strict['"]/},e.ASM,e.QSM,{cN:"string",b:"`",e:"`",c:[e.BE,{cN:"subst",b:"\\$\\{",e:"\\}"}]},e.CLCM,e.CBCM,{cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM],r:0},{cN:"function",b:"function",e:/[\{;]/,eE:!0,k:r,c:["self",e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,k:r,c:[e.CLCM,e.CBCM],i:/["'\(]/}],i:/%/,r:0},{bK:"constructor",e:/\{/,eE:!0},{b:/module\./,k:{built_in:"module"},r:0},{bK:"module",e:/\{/,eE:!0},{bK:"interface",e:/\{/,eE:!0,k:"interface extends"},{b:/\$[(.]/},{b:"\\."+e.IR,r:0}]}});hljs.registerLanguage("json",function(e){var i={literal:"true false null"},n=[e.QSM,e.CNM],r={e:",",eW:!0,eE:!0,c:n,k:i},t={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(r,{b:/:/})],i:"\\S"},c={b:"\\[",e:"\\]",c:[e.inherit(r)],i:"\\S"};return n.splice(n.length,0,t,c),{c:n,k:i,i:"\\S"}});hljs.registerLanguage("javascript",function(e){var r="[A-Za-z$_][0-9A-Za-z$_]*",t={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},a={cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},n={cN:"subst",b:"\\$\\{",e:"\\}",k:t,c:[]},c={cN:"string",b:"`",e:"`",c:[e.BE,n]};n.c=[e.ASM,e.QSM,c,a,e.RM];var s=n.c.concat([e.CBCM,e.CLCM]);return{aliases:["js","jsx"],k:t,c:[{cN:"meta",r:10,b:/^\s*['"]use (strict|asm)['"]/},{cN:"meta",b:/^#!/,e:/$/},e.ASM,e.QSM,c,e.CLCM,e.CBCM,a,{b:/[{,]\s*/,r:0,c:[{b:r+"\\s*:",rB:!0,r:0,c:[{cN:"attr",b:r,r:0}]}]},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM,{cN:"function",b:"(\\(.*?\\)|"+r+")\\s*=>",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:r},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:t,c:s}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:r}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:s}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor",e:/\{/,eE:!0}],i:/#(?!!)/}});hljs.registerLanguage("ini",function(e){var b={cN:"string",c:[e.BE],v:[{b:"'''",e:"'''",r:10},{b:'"""',e:'"""',r:10},{b:'"',e:'"'},{b:"'",e:"'"}]};return{aliases:["toml"],cI:!0,i:/\S/,c:[e.C(";","$"),e.HCM,{cN:"section",b:/^\s*\[+/,e:/\]+/},{b:/^[a-z0-9\[\]_-]+\s*=\s*/,e:"$",rB:!0,c:[{cN:"attr",b:/[a-z0-9\[\]_-]+/},{b:/=/,eW:!0,r:0,c:[{cN:"literal",b:/\bon|off|true|false|yes|no\b/},{cN:"variable",v:[{b:/\$[\w\d"][\w\d_]*/},{b:/\$\{(.*?)}/}]},b,{cN:"number",b:/([\+\-]+)?[\d]+_[\d_]+/},e.NM]}]}]}});hljs.registerLanguage("diff",function(e){return{aliases:["patch"],c:[{cN:"meta",r:10,v:[{b:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"comment",v:[{b:/Index: /,e:/$/},{b:/={3,}/,e:/$/},{b:/^\-{3}/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+{3}/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"addition",b:"^\\!",e:"$"}]}});hljs.registerLanguage("coffeescript",function(e){var c={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",built_in:"npm require console print module global window document"},n="[A-Za-z$_][0-9A-Za-z$_]*",r={cN:"subst",b:/#\{/,e:/}/,k:c},s=[e.BNM,e.inherit(e.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/"""/,e:/"""/,c:[e.BE,r]},{b:/"/,e:/"/,c:[e.BE,r]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[r,e.HCM]},{b:"//[gim]*",r:0},{b:/\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W|$)/}]},{b:"@"+n},{b:"`",e:"`",eB:!0,eE:!0,sL:"javascript"}];r.c=s;var i=e.inherit(e.TM,{b:n}),t="(\\(.*\\))?\\s*\\B[-=]>",o={cN:"params",b:"\\([^\\(]",rB:!0,c:[{b:/\(/,e:/\)/,k:c,c:["self"].concat(s)}]};return{aliases:["coffee","cson","iced"],k:c,i:/\/\*/,c:s.concat([e.C("###","###"),e.HCM,{cN:"function",b:"^\\s*"+n+"\\s*=\\s*"+t,e:"[-=]>",rB:!0,c:[i,o]},{b:/[:\(,=]\s*/,r:0,c:[{cN:"function",b:t,e:"[-=]>",rB:!0,c:[o]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:!0,i:/[:="\[\]]/,c:[i]},i]},{b:n+":",e:":",rB:!0,rE:!0,r:0}])}});hljs.registerLanguage("scss",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",i={cN:"variable",b:"(\\$"+t+")\\b"},r={cN:"number",b:"#[0-9A-Fa-f]+"};({cN:"attribute",b:"[A-Z\\_\\.\\-]+",e:":",eE:!0,i:"[^\\s]",starts:{eW:!0,eE:!0,c:[r,e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"meta",b:"!important"}]}});return{cI:!0,i:"[=/|']",c:[e.CLCM,e.CBCM,{cN:"selector-id",b:"\\#[A-Za-z0-9_-]+",r:0},{cN:"selector-class",b:"\\.[A-Za-z0-9_-]+",r:0},{cN:"selector-attr",b:"\\[",e:"\\]",i:"$"},{cN:"selector-tag",b:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",r:0},{b:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{b:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},i,{cN:"attribute",b:"\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",i:"[^\\s]"},{b:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{b:":",e:";",c:[i,r,e.CSSNM,e.QSM,e.ASM,{cN:"meta",b:"!important"}]},{b:"@",e:"[{;]",k:"mixin include extend for if else each while charset import debug media page content font-face namespace warn",c:[i,e.QSM,e.ASM,r,e.CSSNM,{b:"\\s[A-Za-z0-9_.-]+",r:0}]}]}});hljs.registerLanguage("objectivec",function(e){var t={cN:"built_in",b:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},_={keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},i=/[a-zA-Z@][a-zA-Z0-9_]*/,n="@interface @class @protocol @implementation";return{aliases:["mm","objc","obj-c"],k:_,l:i,i:""}]}]},{cN:"class",b:"("+n.split(" ").join("|")+")\\b",e:"({|$)",eE:!0,k:n,l:i,c:[e.UTM]},{b:"\\."+e.UIR,r:0}]}});hljs.registerLanguage("powershell",function(e){var t={b:"`[\\s\\S]",r:0},o={cN:"variable",v:[{b:/\$[\w\d][\w\d_:]*/}]},n={cN:"literal",b:/\$(null|true|false)\b/},r={cN:"string",v:[{b:/"/,e:/"/},{b:/@"/,e:/^"@/}],c:[t,o,{cN:"variable",b:/\$[A-z]/,e:/[^A-z]/}]},i={cN:"string",v:[{b:/'/,e:/'/},{b:/@'/,e:/^'@/}]},a={cN:"doctag",v:[{b:/\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/},{b:/\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/}]},s=e.inherit(e.C(null,null),{v:[{b:/#/,e:/$/},{b:/<#/,e:/#>/}],c:[a]});return{aliases:["ps"],l:/-?[A-z\.\-]+/,cI:!0,k:{keyword:"if else foreach return function do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch",built_in:"Add-Computer Add-Content Add-History Add-JobTrigger Add-Member Add-PSSnapin Add-Type Checkpoint-Computer Clear-Content Clear-EventLog Clear-History Clear-Host Clear-Item Clear-ItemProperty Clear-Variable Compare-Object Complete-Transaction Connect-PSSession Connect-WSMan Convert-Path ConvertFrom-Csv ConvertFrom-Json ConvertFrom-SecureString ConvertFrom-StringData ConvertTo-Csv ConvertTo-Html ConvertTo-Json ConvertTo-SecureString ConvertTo-Xml Copy-Item Copy-ItemProperty Debug-Process Disable-ComputerRestore Disable-JobTrigger Disable-PSBreakpoint Disable-PSRemoting Disable-PSSessionConfiguration Disable-WSManCredSSP Disconnect-PSSession Disconnect-WSMan Disable-ScheduledJob Enable-ComputerRestore Enable-JobTrigger Enable-PSBreakpoint Enable-PSRemoting Enable-PSSessionConfiguration Enable-ScheduledJob Enable-WSManCredSSP Enter-PSSession Exit-PSSession Export-Alias Export-Clixml Export-Console Export-Counter Export-Csv Export-FormatData Export-ModuleMember Export-PSSession ForEach-Object Format-Custom Format-List Format-Table Format-Wide Get-Acl Get-Alias Get-AuthenticodeSignature Get-ChildItem Get-Command Get-ComputerRestorePoint Get-Content Get-ControlPanelItem Get-Counter Get-Credential Get-Culture Get-Date Get-Event Get-EventLog Get-EventSubscriber Get-ExecutionPolicy Get-FormatData Get-Host Get-HotFix Get-Help Get-History Get-IseSnippet Get-Item Get-ItemProperty Get-Job Get-JobTrigger Get-Location Get-Member Get-Module Get-PfxCertificate Get-Process Get-PSBreakpoint Get-PSCallStack Get-PSDrive Get-PSProvider Get-PSSession Get-PSSessionConfiguration Get-PSSnapin Get-Random Get-ScheduledJob Get-ScheduledJobOption Get-Service Get-TraceSource Get-Transaction Get-TypeData Get-UICulture Get-Unique Get-Variable Get-Verb Get-WinEvent Get-WmiObject Get-WSManCredSSP Get-WSManInstance Group-Object Import-Alias Import-Clixml Import-Counter Import-Csv Import-IseSnippet Import-LocalizedData Import-PSSession Import-Module Invoke-AsWorkflow Invoke-Command Invoke-Expression Invoke-History Invoke-Item Invoke-RestMethod Invoke-WebRequest Invoke-WmiMethod Invoke-WSManAction Join-Path Limit-EventLog Measure-Command Measure-Object Move-Item Move-ItemProperty New-Alias New-Event New-EventLog New-IseSnippet New-Item New-ItemProperty New-JobTrigger New-Object New-Module New-ModuleManifest New-PSDrive New-PSSession New-PSSessionConfigurationFile New-PSSessionOption New-PSTransportOption New-PSWorkflowExecutionOption New-PSWorkflowSession New-ScheduledJobOption New-Service New-TimeSpan New-Variable New-WebServiceProxy New-WinEvent New-WSManInstance New-WSManSessionOption Out-Default Out-File Out-GridView Out-Host Out-Null Out-Printer Out-String Pop-Location Push-Location Read-Host Receive-Job Register-EngineEvent Register-ObjectEvent Register-PSSessionConfiguration Register-ScheduledJob Register-WmiEvent Remove-Computer Remove-Event Remove-EventLog Remove-Item Remove-ItemProperty Remove-Job Remove-JobTrigger Remove-Module Remove-PSBreakpoint Remove-PSDrive Remove-PSSession Remove-PSSnapin Remove-TypeData Remove-Variable Remove-WmiObject Remove-WSManInstance Rename-Computer Rename-Item Rename-ItemProperty Reset-ComputerMachinePassword Resolve-Path Restart-Computer Restart-Service Restore-Computer Resume-Job Resume-Service Save-Help Select-Object Select-String Select-Xml Send-MailMessage Set-Acl Set-Alias Set-AuthenticodeSignature Set-Content Set-Date Set-ExecutionPolicy Set-Item Set-ItemProperty Set-JobTrigger Set-Location Set-PSBreakpoint Set-PSDebug Set-PSSessionConfiguration Set-ScheduledJob Set-ScheduledJobOption Set-Service Set-StrictMode Set-TraceSource Set-Variable Set-WmiInstance Set-WSManInstance Set-WSManQuickConfig Show-Command Show-ControlPanelItem Show-EventLog Sort-Object Split-Path Start-Job Start-Process Start-Service Start-Sleep Start-Transaction Start-Transcript Stop-Computer Stop-Job Stop-Process Stop-Service Stop-Transcript Suspend-Job Suspend-Service Tee-Object Test-ComputerSecureChannel Test-Connection Test-ModuleManifest Test-Path Test-PSSessionConfigurationFile Trace-Command Unblock-File Undo-Transaction Unregister-Event Unregister-PSSessionConfiguration Unregister-ScheduledJob Update-FormatData Update-Help Update-List Update-TypeData Use-Transaction Wait-Event Wait-Job Wait-Process Where-Object Write-Debug Write-Error Write-EventLog Write-Host Write-Output Write-Progress Write-Verbose Write-Warning",nomarkup:"-ne -eq -lt -gt -ge -le -not -like -notlike -match -notmatch -contains -notcontains -in -notin -replace"},c:[t,e.NM,r,i,n,o,s]}});hljs.registerLanguage("css",function(e){var c="[a-zA-Z-][a-zA-Z0-9_-]*",t={b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\w-]+\(/,rB:!0,c:[{cN:"built_in",b:/[\w-]+/},{b:/\(/,e:/\)/,c:[e.ASM,e.QSM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"number",b:"#[0-9A-Fa-f]+"},{cN:"meta",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,{cN:"selector-id",b:/#[A-Za-z0-9_-]+/},{cN:"selector-class",b:/\.[A-Za-z0-9_-]+/},{cN:"selector-attr",b:/\[/,e:/\]/,i:"$"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{b:"@",e:"[{;]",i:/:/,c:[{cN:"keyword",b:/\w+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[e.ASM,e.QSM,e.CSSNM]}]},{cN:"selector-tag",b:c,r:0},{b:"{",e:"}",i:/\S/,c:[e.CBCM,t]}]}});hljs.registerLanguage("http",function(e){var t="HTTP/[0-9\\.]+";return{aliases:["https"],i:"\\S",c:[{b:"^"+t,e:"$",c:[{cN:"number",b:"\\b\\d{3}\\b"}]},{b:"^[A-Z]+ (.*?) "+t+"$",rB:!0,e:"$",c:[{cN:"string",b:" ",e:" ",eB:!0,eE:!0},{b:t},{cN:"keyword",b:"[A-Z]+"}]},{cN:"attribute",b:"^\\w",e:": ",eE:!0,i:"\\n|\\s|=",starts:{e:"$",r:0}},{b:"\\n\\n",starts:{sL:[],eW:!0}}]}});hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},s={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/-?[a-z\._]+/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,s,a,t]}});hljs.registerLanguage("dockerfile",function(e){return{aliases:["docker"],cI:!0,k:"from maintainer expose env user onbuild",c:[e.HCM,e.ASM,e.QSM,e.NM,{bK:"run cmd entrypoint volume add copy workdir label healthcheck",starts:{e:/[^\\]\n/,sL:"bash"}}],i:"",c:[e.inherit(e.TM,{b:/'[a-zA-Z0-9_]+/})]};return{aliases:["fs"],k:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",i:/\/\*/,c:[{cN:"keyword",b:/\b(yield|return|let|do)!/},{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},{cN:"string",b:'"""',e:'"""'},e.C("\\(\\*","\\*\\)"),{cN:"class",bK:"type",e:"\\(|=|$",eE:!0,c:[e.UTM,t]},{cN:"meta",b:"\\[<",e:">\\]",r:10},{cN:"symbol",b:"\\B('[A-Za-z])\\b",c:[e.BE]},e.CLCM,e.inherit(e.QSM,{i:null}),e.CNM]}});hljs.registerLanguage("less",function(e){var r="[\\w-]+",t="("+r+"|@{"+r+"})",a=[],c=[],s=function(e){return{cN:"string",b:"~?"+e+".*?"+e}},b=function(e,r,t){return{cN:e,b:r,r:t}},n={b:"\\(",e:"\\)",c:c,r:0};c.push(e.CLCM,e.CBCM,s("'"),s('"'),e.CSSNM,{b:"(url|data-uri)\\(",starts:{cN:"string",e:"[\\)\\n]",eE:!0}},b("number","#[0-9A-Fa-f]+\\b"),n,b("variable","@@?"+r,10),b("variable","@{"+r+"}"),b("built_in","~?`[^`]*?`"),{cN:"attribute",b:r+"\\s*:",e:":",rB:!0,eE:!0},{cN:"meta",b:"!important"});var i=c.concat({b:"{",e:"}",c:a}),o={bK:"when",eW:!0,c:[{bK:"and not"}].concat(c)},u={b:t+"\\s*:",rB:!0,e:"[;}]",r:0,c:[{cN:"attribute",b:t,e:":",eE:!0,starts:{eW:!0,i:"[<=$]",r:0,c:c}}]},l={cN:"keyword",b:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{e:"[;{}]",rE:!0,c:c,r:0}},C={cN:"variable",v:[{b:"@"+r+"\\s*:",r:15},{b:"@"+r}],starts:{e:"[;}]",rE:!0,c:i}},p={v:[{b:"[\\.#:&\\[>]",e:"[;{}]"},{b:t,e:"{"}],rB:!0,rE:!0,i:"[<='$\"]",r:0,c:[e.CLCM,e.CBCM,o,b("keyword","all\\b"),b("variable","@{"+r+"}"),b("selector-tag",t+"%?",0),b("selector-id","#"+t),b("selector-class","\\."+t,0),b("selector-tag","&",0),{cN:"selector-attr",b:"\\[",e:"\\]"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"\\(",e:"\\)",c:i},{b:"!important"}]};return a.push(e.CLCM,e.CBCM,l,C,u,p),{cI:!0,i:"[=>'/<($\"]",c:a}});hljs.registerLanguage("java",function(e){var t=e.UIR+"(<"+e.UIR+"(\\s*,\\s*"+e.UIR+")*>)?",a="false synchronized int abstract float private char boolean static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports",r="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",s={cN:"number",b:r,r:0};return{aliases:["jsp"],k:a,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"new throw return else",r:0},{cN:"function",b:"("+t+"\\s+)+"+e.UIR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:a,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,k:a,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},s,{cN:"meta",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("markdown",function(e){return{aliases:["md","mkdown","mkd"],c:[{cN:"section",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"quote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"^```w*s*$",e:"^```s*$"},{b:"`.+?`"},{b:"^( {4}| )",e:"$",r:0}]},{b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].*?[\\)\\]]",rB:!0,c:[{cN:"string",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"symbol",b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:/^\[[^\n]+\]:/,rB:!0,c:[{cN:"symbol",b:/\[/,e:/\]/,eB:!0,eE:!0},{cN:"link",b:/:\s*/,e:/$/,eB:!0}]}]}});hljs.registerLanguage("swift",function(e){var t={keyword:"__COLUMN__ __FILE__ __FUNCTION__ __LINE__ as as! as? associativity break case catch class continue convenience default defer deinit didSet do dynamic dynamicType else enum extension fallthrough false final for func get guard if import in indirect infix init inout internal is lazy left let mutating nil none nonmutating operator optional override postfix precedence prefix private protocol Protocol public repeat required rethrows return right self Self set static struct subscript super switch throw throws true try try! try? Type typealias unowned var weak where while willSet",literal:"true false nil",built_in:"abs advance alignof alignofValue anyGenerator assert assertionFailure bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal fatalError filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced isUniquelyReferencedNonObjC join lazy lexicographicalCompare map max maxElement min minElement numericCast overlaps partition posix precondition preconditionFailure print println quickSort readLine reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith stride strideof strideofValue swap toString transcode underestimateCount unsafeAddressOf unsafeBitCast unsafeDowncast unsafeUnwrap unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafeMutablePointer withUnsafeMutablePointers withUnsafePointer withUnsafePointers withVaList zip"},i={cN:"type",b:"\\b[A-Z][\\w']*",r:0},n=e.C("/\\*","\\*/",{c:["self"]}),r={cN:"subst",b:/\\\(/,e:"\\)",k:t,c:[]},a={cN:"number",b:"\\b([\\d_]+(\\.[\\deE_]+)?|0x[a-fA-F0-9_]+(\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b",r:0},o=e.inherit(e.QSM,{c:[r,e.BE]});return r.c=[a],{k:t,c:[o,e.CLCM,n,i,a,{cN:"function",bK:"func",e:"{",eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/}),{b://},{cN:"params",b:/\(/,e:/\)/,endsParent:!0,k:t,c:["self",a,o,e.CBCM,{b:":"}],i:/["']/}],i:/\[|%/},{cN:"class",bK:"struct protocol class extension enum",k:t,e:"\\{",eE:!0,c:[e.inherit(e.TM,{b:/[A-Za-z$_][0-9A-Za-z$_]*/})]},{cN:"meta",b:"(@warn_unused_result|@exported|@lazy|@noescape|@NSCopying|@NSManaged|@objc|@convention|@required|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix|@autoclosure|@testable|@available|@nonobjc|@NSApplicationMain|@UIApplicationMain)"},{bK:"import",e:/$/,c:[e.CLCM,n]}]}}); \ No newline at end of file diff --git a/assets/js/html5shiv.min.js b/assets/js/html5shiv.min.js new file mode 100644 index 0000000..d4c731a --- /dev/null +++ b/assets/js/html5shiv.min.js @@ -0,0 +1,4 @@ +/** +* @preserve HTML5 Shiv 3.7.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed +*/ +!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.2",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b)}(this,document); \ No newline at end of file diff --git a/assets/js/jquery-2.2.3.min.js b/assets/js/jquery-2.2.3.min.js new file mode 100644 index 0000000..b8c4187 --- /dev/null +++ b/assets/js/jquery-2.2.3.min.js @@ -0,0 +1,4 @@ +/*! jQuery v2.2.3 | (c) jQuery Foundation | jquery.org/license */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m="2.2.3",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return e.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:e.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a){return n.each(this,a)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(e.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:g,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){var b=a&&a.toString();return!n.isArray(a)&&b-parseFloat(b)+1>=0},isPlainObject:function(a){var b;if("object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;if(a.constructor&&!k.call(a,"constructor")&&!k.call(a.constructor.prototype||{},"isPrototypeOf"))return!1;for(b in a);return void 0===b||k.call(a,b)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?i[j.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=d.createElement("script"),b.text=a,d.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(s(a)){for(c=a.length;c>d;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):g.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:h.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,g=0,h=[];if(s(a))for(d=a.length;d>g;g++)e=b(a[g],g,c),null!=e&&h.push(e);else for(g in a)e=b(a[g],g,c),null!=e&&h.push(e);return f.apply([],h)},guid:1,proxy:function(a,b){var c,d,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(d=e.call(arguments,2),f=function(){return a.apply(b||this,d.concat(e.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:l}),"function"==typeof Symbol&&(n.fn[Symbol.iterator]=c[Symbol.iterator]),n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){i["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ga(),z=ga(),A=ga(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+M+"))|)"+L+"*\\]",O=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+N+")*)|.*)\\)|)",P=new RegExp(L+"+","g"),Q=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),R=new RegExp("^"+L+"*,"+L+"*"),S=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),T=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),U=new RegExp(O),V=new RegExp("^"+M+"$"),W={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,_=/[+~]/,aa=/'|\\/g,ba=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ca=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},da=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(ea){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fa(a,b,d,e){var f,h,j,k,l,o,r,s,w=b&&b.ownerDocument,x=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==x&&9!==x&&11!==x)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==x&&(o=$.exec(a)))if(f=o[1]){if(9===x){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(w&&(j=w.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(o[2])return H.apply(d,b.getElementsByTagName(a)),d;if((f=o[3])&&c.getElementsByClassName&&b.getElementsByClassName)return H.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==x)w=b,s=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(aa,"\\$&"):b.setAttribute("id",k=u),r=g(a),h=r.length,l=V.test(k)?"#"+k:"[id='"+k+"']";while(h--)r[h]=l+" "+qa(r[h]);s=r.join(","),w=_.test(a)&&oa(b.parentNode)||b}if(s)try{return H.apply(d,w.querySelectorAll(s)),d}catch(y){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(Q,"$1"),b,d,e)}function ga(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ha(a){return a[u]=!0,a}function ia(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ja(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function ka(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function la(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function na(a){return ha(function(b){return b=+b,ha(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function oa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=fa.support={},f=fa.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fa.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ia(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ia(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Z.test(n.getElementsByClassName),c.getById=ia(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return"undefined"!=typeof b.getElementsByClassName&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=Z.test(n.querySelectorAll))&&(ia(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ia(function(a){var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Z.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ia(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",O)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Z.test(o.compareDocumentPosition),t=b||Z.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return ka(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?ka(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},fa.matches=function(a,b){return fa(a,null,null,b)},fa.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(T,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fa(b,n,null,[a]).length>0},fa.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fa.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fa.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fa.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fa.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fa.selectors={cacheLength:50,createPseudo:ha,match:W,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ba,ca),a[3]=(a[3]||a[4]||a[5]||"").replace(ba,ca),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fa.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fa.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return W.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&U.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ba,ca).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fa.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(P," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fa.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ha(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ha(function(a){var b=[],c=[],d=h(a.replace(Q,"$1"));return d[u]?ha(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ha(function(a){return function(b){return fa(a,b).length>0}}),contains:ha(function(a){return a=a.replace(ba,ca),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ha(function(a){return V.test(a||"")||fa.error("unsupported lang: "+a),a=a.replace(ba,ca).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Y.test(a.nodeName)},input:function(a){return X.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:na(function(){return[0]}),last:na(function(a,b){return[b-1]}),eq:na(function(a,b,c){return[0>c?c+b:c]}),even:na(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:na(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:na(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:na(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function ra(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j,k=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(j=b[u]||(b[u]={}),i=j[b.uniqueID]||(j[b.uniqueID]={}),(h=i[d])&&h[0]===w&&h[1]===f)return k[2]=h[2];if(i[d]=k,k[2]=a(b,c,g))return!0}}}function sa(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ta(a,b,c){for(var d=0,e=b.length;e>d;d++)fa(a,b[d],c);return c}function ua(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function va(a,b,c,d,e,f){return d&&!d[u]&&(d=va(d)),e&&!e[u]&&(e=va(e,f)),ha(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ta(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ua(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ua(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ua(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function wa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ra(function(a){return a===b},h,!0),l=ra(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[ra(sa(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return va(i>1&&sa(m),i>1&&qa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(Q,"$1"),c,e>i&&wa(a.slice(i,e)),f>e&&wa(a=a.slice(e)),f>e&&qa(a))}m.push(c)}return sa(m)}function xa(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=F.call(i));u=ua(u)}H.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&fa.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ha(f):f}return h=fa.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xa(e,d)),f.selector=a}return f},i=fa.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ba,ca),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=W.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ba,ca),_.test(j[0].type)&&oa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qa(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||_.test(a)&&oa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ia(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ia(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ja("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ia(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ja("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ia(function(a){return null==a.getAttribute("disabled")})||ja(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fa}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.uniqueSort=n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},v=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},w=n.expr.match.needsContext,x=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,y=/^.[^:#\[\.,]*$/;function z(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return h.call(b,a)>-1!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(z(this,a||[],!1))},not:function(a){return this.pushStack(z(this,a||[],!0))},is:function(a){return!!z(this,"string"==typeof a&&w.test(a)?n(a):a||[],!1).length}});var A,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=n.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||A,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:B.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),x.test(e[1])&&n.isPlainObject(b))for(e in b)n.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&f.parentNode&&(this.length=1,this[0]=f),this.context=d,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?void 0!==c.ready?c.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};C.prototype=n.fn,A=n(d);var D=/^(?:parents|prev(?:Until|All))/,E={children:!0,contents:!0,next:!0,prev:!0};n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=w.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?h.call(n(a),this[0]):h.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.uniqueSort(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function F(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return u(a,"parentNode")},parentsUntil:function(a,b,c){return u(a,"parentNode",c)},next:function(a){return F(a,"nextSibling")},prev:function(a){return F(a,"previousSibling")},nextAll:function(a){return u(a,"nextSibling")},prevAll:function(a){return u(a,"previousSibling")},nextUntil:function(a,b,c){return u(a,"nextSibling",c)},prevUntil:function(a,b,c){return u(a,"previousSibling",c)},siblings:function(a){return v((a.parentNode||{}).firstChild,a)},children:function(a){return v(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(E[a]||n.uniqueSort(e),D.test(a)&&e.reverse()),this.pushStack(e)}});var G=/\S+/g;function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?H(a):n.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),h>=c&&h--}),this},has:function(a){return a?n.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().progress(c.notify).done(c.resolve).fail(c.reject):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=e.call(arguments),d=c.length,f=1!==d||a&&n.isFunction(a.promise)?d:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?e.call(arguments):d,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(d>1)for(i=new Array(d),j=new Array(d),k=new Array(d);d>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().progress(h(b,j,i)).done(h(b,k,c)).fail(g.reject):--f;return f||g.resolveWith(k,c),g.promise()}});var I;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(I.resolveWith(d,[n]),n.fn.triggerHandler&&(n(d).triggerHandler("ready"),n(d).off("ready"))))}});function J(){d.removeEventListener("DOMContentLoaded",J),a.removeEventListener("load",J),n.ready()}n.ready.promise=function(b){return I||(I=n.Deferred(),"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(n.ready):(d.addEventListener("DOMContentLoaded",J),a.addEventListener("load",J))),I.promise(b)},n.ready.promise();var K=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)K(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},L=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function M(){this.expando=n.expando+M.uid++}M.uid=1,M.prototype={register:function(a,b){var c=b||{};return a.nodeType?a[this.expando]=c:Object.defineProperty(a,this.expando,{value:c,writable:!0,configurable:!0}),a[this.expando]},cache:function(a){if(!L(a))return{};var b=a[this.expando];return b||(b={},L(a)&&(a.nodeType?a[this.expando]=b:Object.defineProperty(a,this.expando,{value:b,configurable:!0}))),b},set:function(a,b,c){var d,e=this.cache(a);if("string"==typeof b)e[b]=c;else for(d in b)e[d]=b[d];return e},get:function(a,b){return void 0===b?this.cache(a):a[this.expando]&&a[this.expando][b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=a[this.expando];if(void 0!==f){if(void 0===b)this.register(a);else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in f?d=[b,e]:(d=e,d=d in f?[d]:d.match(G)||[])),c=d.length;while(c--)delete f[d[c]]}(void 0===b||n.isEmptyObject(f))&&(a.nodeType?a[this.expando]=void 0:delete a[this.expando])}},hasData:function(a){var b=a[this.expando];return void 0!==b&&!n.isEmptyObject(b)}};var N=new M,O=new M,P=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,Q=/[A-Z]/g;function R(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(Q,"-$&").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:P.test(c)?n.parseJSON(c):c; +}catch(e){}O.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return O.hasData(a)||N.hasData(a)},data:function(a,b,c){return O.access(a,b,c)},removeData:function(a,b){O.remove(a,b)},_data:function(a,b,c){return N.access(a,b,c)},_removeData:function(a,b){N.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=O.get(f),1===f.nodeType&&!N.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),R(f,d,e[d])));N.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){O.set(this,a)}):K(this,function(b){var c,d;if(f&&void 0===b){if(c=O.get(f,a)||O.get(f,a.replace(Q,"-$&").toLowerCase()),void 0!==c)return c;if(d=n.camelCase(a),c=O.get(f,d),void 0!==c)return c;if(c=R(f,d,void 0),void 0!==c)return c}else d=n.camelCase(a),this.each(function(){var c=O.get(this,d);O.set(this,d,b),a.indexOf("-")>-1&&void 0!==c&&O.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){O.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=N.get(a,b),c&&(!d||n.isArray(c)?d=N.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return N.get(a,c)||N.access(a,c,{empty:n.Callbacks("once memory").add(function(){N.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length",""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};$.optgroup=$.option,$.tbody=$.tfoot=$.colgroup=$.caption=$.thead,$.th=$.td;function _(a,b){var c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function aa(a,b){for(var c=0,d=a.length;d>c;c++)N.set(a[c],"globalEval",!b||N.get(b[c],"globalEval"))}var ba=/<|&#?\w+;/;function ca(a,b,c,d,e){for(var f,g,h,i,j,k,l=b.createDocumentFragment(),m=[],o=0,p=a.length;p>o;o++)if(f=a[o],f||0===f)if("object"===n.type(f))n.merge(m,f.nodeType?[f]:f);else if(ba.test(f)){g=g||l.appendChild(b.createElement("div")),h=(Y.exec(f)||["",""])[1].toLowerCase(),i=$[h]||$._default,g.innerHTML=i[1]+n.htmlPrefilter(f)+i[2],k=i[0];while(k--)g=g.lastChild;n.merge(m,g.childNodes),g=l.firstChild,g.textContent=""}else m.push(b.createTextNode(f));l.textContent="",o=0;while(f=m[o++])if(d&&n.inArray(f,d)>-1)e&&e.push(f);else if(j=n.contains(f.ownerDocument,f),g=_(l.appendChild(f),"script"),j&&aa(g),c){k=0;while(f=g[k++])Z.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),l.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="",l.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var da=/^key/,ea=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,fa=/^([^.]*)(?:\.(.+)|)/;function ga(){return!0}function ha(){return!1}function ia(){try{return d.activeElement}catch(a){}}function ja(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ja(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=ha;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return"undefined"!=typeof n&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(G)||[""],j=b.length;while(j--)h=fa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=N.hasData(a)&&N.get(a);if(r&&(i=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=fa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&N.remove(a,"handle events")}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(N.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())a.rnamespace&&!a.rnamespace.test(g.namespace)||(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!==this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]*)\/>/gi,la=/\s*$/g;function pa(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function qa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function ra(a){var b=na.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function sa(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(N.hasData(a)&&(f=N.access(a),g=N.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}O.hasData(a)&&(h=O.access(a),i=n.extend({},h),O.set(b,i))}}function ta(a,b){var c=b.nodeName.toLowerCase();"input"===c&&X.test(a.type)?b.checked=a.checked:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}function ua(a,b,c,d){b=f.apply([],b);var e,g,h,i,j,k,m=0,o=a.length,p=o-1,q=b[0],r=n.isFunction(q);if(r||o>1&&"string"==typeof q&&!l.checkClone&&ma.test(q))return a.each(function(e){var f=a.eq(e);r&&(b[0]=q.call(this,e,f.html())),ua(f,b,c,d)});if(o&&(e=ca(b,a[0].ownerDocument,!1,a,d),g=e.firstChild,1===e.childNodes.length&&(e=g),g||d)){for(h=n.map(_(e,"script"),qa),i=h.length;o>m;m++)j=e,m!==p&&(j=n.clone(j,!0,!0),i&&n.merge(h,_(j,"script"))),c.call(a[m],j,m);if(i)for(k=h[h.length-1].ownerDocument,n.map(h,ra),m=0;i>m;m++)j=h[m],Z.test(j.type||"")&&!N.access(j,"globalEval")&&n.contains(k,j)&&(j.src?n._evalUrl&&n._evalUrl(j.src):n.globalEval(j.textContent.replace(oa,"")))}return a}function va(a,b,c){for(var d,e=b?n.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||n.cleanData(_(d)),d.parentNode&&(c&&n.contains(d.ownerDocument,d)&&aa(_(d,"script")),d.parentNode.removeChild(d));return a}n.extend({htmlPrefilter:function(a){return a.replace(ka,"<$1>")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(l.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=_(h),f=_(a),d=0,e=f.length;e>d;d++)ta(f[d],g[d]);if(b)if(c)for(f=f||_(a),g=g||_(h),d=0,e=f.length;e>d;d++)sa(f[d],g[d]);else sa(a,h);return g=_(h,"script"),g.length>0&&aa(g,!i&&_(a,"script")),h},cleanData:function(a){for(var b,c,d,e=n.event.special,f=0;void 0!==(c=a[f]);f++)if(L(c)){if(b=c[N.expando]){if(b.events)for(d in b.events)e[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);c[N.expando]=void 0}c[O.expando]&&(c[O.expando]=void 0)}}}),n.fn.extend({domManip:ua,detach:function(a){return va(this,a,!0)},remove:function(a){return va(this,a)},text:function(a){return K(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return ua(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=pa(this,a);b.appendChild(a)}})},prepend:function(){return ua(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=pa(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return ua(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return ua(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(_(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return K(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!la.test(a)&&!$[(Y.exec(a)||["",""])[1].toLowerCase()]){a=n.htmlPrefilter(a);try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(_(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return ua(this,arguments,function(b){var c=this.parentNode;n.inArray(this,a)<0&&(n.cleanData(_(this)),c&&c.replaceChild(b,this))},a)}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),f=e.length-1,h=0;f>=h;h++)c=h===f?this:this.clone(!0),n(e[h])[b](c),g.apply(d,c.get());return this.pushStack(d)}});var wa,xa={HTML:"block",BODY:"block"};function ya(a,b){var c=n(b.createElement(a)).appendTo(b.body),d=n.css(c[0],"display");return c.detach(),d}function za(a){var b=d,c=xa[a];return c||(c=ya(a,b),"none"!==c&&c||(wa=(wa||n(" + + + + + +
+
+ + +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/docs/quickstart/configuring-the-librarys-behavior.html b/docs/quickstart/configuring-the-librarys-behavior.html new file mode 100644 index 0000000..1fd67bc --- /dev/null +++ b/docs/quickstart/configuring-the-librarys-behavior.html @@ -0,0 +1,346 @@ + + + + + + + + + + + LitJSON - Configuring the library’s behavior + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Configuring the library’s behavior

+
+
+

JSON is a very concise data-interchange format; nothing more, nothing less. For this reason, handling data in JSON format inside a program may require a deliberate decision on your part regarding some little detail that goes beyond the scope of JSON’s specs.

+

Consider, for example, reading data from JSON strings where single-quotes are used to delimit strings, or Javascript-style comments are included as a form of documentation. Those things are not part of the JSON standard, but they are commonly used by some developers, so you may want to be forgiving or strict depending on the situation. Or what about if you want to convert a .Net object into a JSON string, but pretty-printed (using indentation)?

+

To declare the behavior you want, you may change a few properties from your JsonReader and JsonWriter objects.

+

Configuration of JsonReader

+
using LitJson;
+using System;
+
+public class JsonReaderConfigExample
+{
+    public static void Main()
+    {
+        string json;
+
+        json = " /* these are some numbers */ [ 2, 3, 5, 7, 11 ] ";
+        TestReadingArray(json);
+
+        json = " [ \"hello\", 'world' ] ";
+        TestReadingArray(json);
+    }
+
+    static void TestReadingArray(string json_array)
+    {
+        JsonReader defaultReader, customReader;
+
+        defaultReader = new JsonReader(json_array);
+        customReader  = new JsonReader(json_array);
+
+        customReader.AllowComments            = false;
+        customReader.AllowSingleQuotedStrings = false;
+
+        ReadArray(defaultReader);
+        ReadArray(customReader);
+    }
+
+    static void ReadArray(JsonReader reader)
+    {
+        Console.WriteLine("Reading an array");
+
+        try {
+            JsonData data = JsonMapper.ToObject(reader);
+
+            foreach (JsonData elem in data)
+                Console.Write("  {0}", elem);
+
+            Console.WriteLine("  [end]");
+        }
+        catch (Exception e) {
+            Console.WriteLine("  Exception caught: {0}", e.Message);
+        }
+    }
+}
+
+

Output from the example:

+
Reading an array
+  2  3  5  7  11  [end]
+Reading an array
+  Exception caught: Invalid character '/' in input string
+Reading an array
+  hello  world  [end]
+Reading an array
+  Exception caught: Invalid character ''' in input string
+
+

Configuration of JsonWriter

+
using LitJson;
+using System;
+
+public enum AnimalType
+{
+    Dog,
+    Cat,
+    Parrot
+}
+
+public class Animal
+{
+    public string     Name { get; set; }
+    public AnimalType Type { get; set; }
+    public int        Age  { get; set; }
+    public string[]   Toys { get; set; }
+}
+
+public class JsonWriterConfigExample
+{
+    public static void Main()
+    {
+        var dog = new Animal {
+            Name = "Noam Chompsky",
+            Type = AnimalType.Dog,
+            Age  = 3,
+            Toys = new string[] { "rubber bone", "tennis ball" }
+        };
+
+        var cat = new Animal {
+            Name = "Colonel Meow",
+            Type = AnimalType.Cat,
+            Age  = 5,
+            Toys = new string[] { "cardboard box" }
+        };
+
+        TestWritingAnimal(dog);
+        TestWritingAnimal(cat, 2);
+    }
+
+    static void TestWritingAnimal(Animal pet, int indentLevel = 0)
+    {
+        Console.WriteLine("\nConverting {0}'s data into JSON..", pet.Name);
+        JsonWriter writer1 = new JsonWriter(Console.Out);
+        JsonWriter writer2 = new JsonWriter(Console.Out);
+
+        writer2.PrettyPrint = true;
+        if (indentLevel != 0)
+            writer2.IndentValue = indentLevel;
+
+        Console.WriteLine("Default JSON string:");
+        JsonMapper.ToJson(pet, writer1);
+
+        Console.Write("\nPretty-printed:");
+        JsonMapper.ToJson(pet, writer2);
+        Console.WriteLine("");
+    }
+}
+
+

Output from the example:

+
Converting Noam Chompsky's data into JSON..
+Default JSON string:
+{"Name":"Noam Chompsky","Type":0,"Age":3,"Toys":["rubber bone","tennis ball"]}
+Pretty-printed:
+{
+    "Name" : "Noam Chompsky",
+    "Type" : 0,
+    "Age"  : 3,
+    "Toys" : [
+        "rubber bone",
+        "tennis ball"
+    ]
+}
+
+Converting Colonel Meow's data into JSON..
+Default JSON string:
+{"Name":"Colonel Meow","Type":1,"Age":5,"Toys":["cardboard box"]}
+Pretty-printed:
+{
+  "Name" : "Colonel Meow",
+  "Type" : 1,
+  "Age"  : 5,
+  "Toys" : [
+    "cardboard box"
+  ]
+}
+
+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/docs/quickstart/index.html b/docs/quickstart/index.html new file mode 100644 index 0000000..4a31603 --- /dev/null +++ b/docs/quickstart/index.html @@ -0,0 +1,221 @@ + + + + + + + + + + + LitJSON - Quickstart + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Quickstart

+
+
+ + + +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/docs/quickstart/mapping-json-to-objects.html b/docs/quickstart/mapping-json-to-objects.html new file mode 100644 index 0000000..418f6ab --- /dev/null +++ b/docs/quickstart/mapping-json-to-objects.html @@ -0,0 +1,319 @@ + + + + + + + + + + + LitJSON - Mapping JSON to objects and vice versa + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Mapping JSON to objects and vice versa

+
+
+

In order to consume data in JSON format inside .Net programs, the natural approach that comes to mind is to use JSON text to populate a new instance of a particular class; either a custom one, built to match the structure of the input JSON text, or a more general one which acts as a dictionary.

+

Conversely, in order to build new JSON strings from data stored in objects, a simple export operation sounds like a good idea.

+

For this purpose, LitJSON includes the JsonMapper class, which provides two main methods used to do JSON-to-object and object-to-JSON conversions. These methods are JsonMapper.ToObject and JsonMapper.ToJson.

+

Simple JsonMapper examples

+
using LitJson;
+using System;
+
+public class Person
+{
+    // C# 3.0 auto-implemented properties
+    public string   Name     { get; set; }
+    public int      Age      { get; set; }
+    public DateTime Birthday { get; set; }
+}
+
+public class JsonSample
+{
+    public static void Main()
+    {
+        PersonToJson();
+        JsonToPerson();
+    }
+
+    public static void PersonToJson()
+    {
+        Person bill = new Person();
+
+        bill.Name = "William Shakespeare";
+        bill.Age  = 51;
+        bill.Birthday = new DateTime(1564, 4, 26);
+
+        string json_bill = JsonMapper.ToJson(bill);
+
+        Console.WriteLine(json_bill);
+    }
+
+    public static void JsonToPerson()
+    {
+        string json = @"
+            {
+                ""Name""     : ""Thomas More"",
+                ""Age""      : 57,
+                ""Birthday"" : ""02/07/1478 00:00:00""
+            }";
+
+        Person thomas = JsonMapper.ToObject<Person>(json);
+
+        Console.WriteLine("Thomas' age: {0}", thomas.Age);
+    }
+}
+
+

Output from the example:

+
{"Name":"William Shakespeare","Age":51,"Birthday":"04/26/1564 00:00:00"}
+Thomas' age: 57
+
+

Using the non-generic variant of JsonMapper.ToObject

+

When JSON data is to be read and a custom class that matches a particular data structure is not available or desired, users can use the non-generic variant of ToObject, which returns a JsonData instance. JsonData is a general purpose type that can hold any of the data types supported by JSON, including lists and dictionaries.

+
using LitJson;
+using System;
+
+public class JsonSample
+{
+    public static void Main()
+    {
+        string json = @"
+          {
+            ""album"" : {
+              ""name""   : ""The Dark Side of the Moon"",
+              ""artist"" : ""Pink Floyd"",
+              ""year""   : 1973,
+              ""tracks"" : [
+                ""Speak To Me"",
+                ""Breathe"",
+                ""On The Run""
+              ]
+            }
+          }
+        ";
+
+        LoadAlbumData(json);
+    }
+
+    public static void LoadAlbumData(string json_text)
+    {
+        Console.WriteLine("Reading data from the following JSON string: {0}",
+                          json_text);
+
+        JsonData data = JsonMapper.ToObject(json_text);
+
+        // Dictionaries are accessed like a hash-table
+        Console.WriteLine("Album's name: {0}", data["album"]["name"]);
+
+        // Scalar elements stored in a JsonData instance can be cast to
+        // their natural types
+        string artist = (string) data["album"]["artist"];
+        int    year   = (int) data["album"]["year"];
+
+        Console.WriteLine("Recorded by {0} in {1}", artist, year);
+
+        // Arrays are accessed like regular lists as well
+        Console.WriteLine("First track: {0}", data["album"]["tracks"][0]);
+    }
+}
+
+

Output from the example:

+
Reading data from the following JSON string:
+          {
+            "album" : {
+              "name"   : "The Dark Side of the Moon",
+              "artist" : "Pink Floyd",
+              "year"   : 1973,
+              "tracks" : [
+                "Speak To Me",
+                "Breathe",
+                "On The Run"
+              ]
+            }
+          }
+
+Album's name: The Dark Side of the Moon
+Recorded by Pink Floyd in 1973
+First track: Speak To Me
+
+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/docs/quickstart/readers-and-writers.html b/docs/quickstart/readers-and-writers.html new file mode 100644 index 0000000..cf76fa4 --- /dev/null +++ b/docs/quickstart/readers-and-writers.html @@ -0,0 +1,289 @@ + + + + + + + + + + + LitJSON - Readers and Writers + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+

Readers and Writers

+
+
+

An alternative interface to handling JSON data that might be familiar to some developers is through classes that make it possible to read and write data in a stream-like fashion. These classes are JsonReader and JsonWriter.

+

These two types are in fact the foundation of this library, and the JsonMapper type is built on top of them, so in a way, the developer can think of the reader and writer classes as the low-level programming interface for LitJSON.

+

Using JsonReader

+
using LitJson;
+using System;
+
+public class DataReader
+{
+    public static void Main()
+    {
+        string sample = @"{
+            ""name""  : ""Bill"",
+            ""age""   : 32,
+            ""awake"" : true,
+            ""n""     : 1994.0226,
+            ""note""  : [ ""life"", ""is"", ""but"", ""a"", ""dream"" ]
+          }";
+
+        PrintJson(sample);
+    }
+
+    public static void PrintJson(string json)
+    {
+        JsonReader reader = new JsonReader(json);
+
+        Console.WriteLine ("{0,14} {1,10} {2,16}", "Token", "Value", "Type");
+        Console.WriteLine (new String ('-', 42));
+
+        // The Read() method returns false when there's nothing else to read
+        while (reader.Read()) {
+            string type = reader.Value != null ?
+                reader.Value.GetType().ToString() : "";
+
+            Console.WriteLine("{0,14} {1,10} {2,16}",
+                              reader.Token, reader.Value, type);
+        }
+    }
+}
+
+

Output from the example:

+
Token         Value             Type
+------------------------------------------
+ObjectStart                            
+PropertyName  name              System.String
+String        Bill              System.String
+PropertyName  age               System.String
+  Int         32                System.Int32
+PropertyName  awake             System.String
+Boolean       True              System.Boolean
+PropertyName  n                 System.String
+Double        1994.0226         System.Double
+PropertyName  note              System.String
+ArrayStart                            
+String        life              System.String
+String        is                System.String
+String        but               System.String
+String        a                 System.String
+String        dream             System.String
+ArrayEnd                            
+ObjectEnd 
+
+

Using JsonWriter

+

The JsonWriter class is quite simple. Keep in mind that if you want to convert some arbitrary object into a JSON string, you’d normally just use JsonMapper.ToJson.

+
using LitJson;
+using System;
+using System.Text;
+
+public class DataWriter
+{
+    public static void Main()
+    {
+        StringBuilder sb = new StringBuilder();
+        JsonWriter writer = new JsonWriter(sb);
+
+        writer.WriteArrayStart();
+        writer.Write(1);
+        writer.Write(2);
+        writer.Write(3);
+
+        writer.WriteObjectStart();
+        writer.WritePropertyName("color");
+        writer.Write("blue");
+        writer.WriteObjectEnd();
+
+        writer.WriteArrayEnd();
+
+        Console.WriteLine(sb.ToString());
+    }
+}
+
+

Output from the example:

+
[1,2,3,{"color":"blue"}]
+
+ +
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/feed.atom b/feed.atom new file mode 100644 index 0000000..c856420 --- /dev/null +++ b/feed.atom @@ -0,0 +1,561 @@ + + + + https://litjson.net/ + LitJSON + 2023 + 2023-11-19T21:02:38Z + + + devlead + + + https://litjson.net/blog/2023/11/litjson-v0.19.0-released + Litjson v0.19.0 released + 2023-11-19T00:00:00Z + <p>Version <strong>0.19.0</strong> of LitJSON has been released. Take it for a spin and give us feedback on our <a href="https://github.com/LitJSON/litjson/discussions/158">discussion board</a>.</p> +<p>This release includes new features, improvements, and bug fixes since the <a href="/blog/2022/03/litjson-v0.18.0-released">LitJSON 0.18.0 release</a>! 🚀</p> +<h3 id="highlights-of-this-release">Highlights of this release</h3> +<ul> +<li>.NET 8 Support</li> +<li>LitJson.Source</li> +</ul> +<h3 id="net-8-support">.NET 8 Support</h3> +<p>LitJSON adds the <code>net8.0</code> target framework moniker which now means it supports the following frameworks</p> +<ul> +<li>.NET 8</li> +<li>.NET 6</li> +<li>.NET Standard 2.1</li> +<li>.NET Standard 2.0</li> +<li>.NET Standard 1.5</li> +<li>.NET Framework 4.8</li> +<li>.NET Framework 4.5</li> +<li>.NET Framework 4.0</li> +<li>.NET Framework 3.5 (including SQLCLR)</li> +<li>.NET Framework 2.0</li> +<li>Mono 4.4.2 and above</li> +</ul> +<h3 id="litjson.source">LitJson.Source</h3> +<p>Which 0.19.0 we also ship <a href="https://www.nuget.org/packages/LitJson.Source">LitJson.Source</a>, which is a source code NuGet package, which means LitJSON gets compiled and embedded with your application/assembly. Useful if you need a zero-dependency JSON serializer within your own code.</p> +<h3 id="contributors">Contributors</h3> +<p>This release was made possible thanks to the contribution of these awesome members of the community listed below:</p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +<li>Dave Black</li> +<li><a href="https://github.com/udlose">udlose</a></li> +</ul> +<p>Full details of everything that was included in this release can be seen below.</p> +<!--excerpt--> +<h3 id="issues">Issues</h3> +<p>As part of this release we had <a href="https://github.com/LitJSON/litjson/milestone/2?closed=1">10 issues</a> closed.</p> +<p><strong>enhancement</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/issues/154"><strong>#154</strong></a> Update System.Reflection.TypeExtensions to 4.7.0.</li> +<li><a href="https://github.com/LitJSON/litjson/issues/153"><strong>#153</strong></a> Update System.Collections.* to 4.3.0.</li> +<li><a href="https://github.com/LitJSON/litjson/issues/146"><strong>#146</strong></a> Add .NET 8 and update to .NET 8.0.100 SDK.</li> +</ul> +<p><strong>bug</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/issues/143"><strong>#143</strong></a> Race conditions affecting JsonMapper and its usage of static members w/o synchronization.</li> +</ul> + + <p>Version <strong>0.19.0</strong> of LitJSON has been released. Take it for a spin and give us feedback on our <a href="https://github.com/LitJSON/litjson/discussions/158">discussion board</a>.</p> +<p>This release includes new features, improvements, and bug fixes since the <a href="/blog/2022/03/litjson-v0.18.0-released">LitJSON 0.18.0 release</a>! 🚀</p> + + + +<p>LitJSON adds the <code>net8.0</code> target framework moniker which now means it supports the following frameworks</p> + + +<p>Which 0.19.0 we also ship <a href="https://www.nuget.org/packages/LitJson.Source">LitJson.Source</a>, which is a source code NuGet package, which means LitJSON gets compiled and embedded with your application/assembly. Useful if you need a zero-dependency JSON serializer within your own code.</p> + +<p>This release was made possible thanks to the contribution of these awesome members of the community listed below:</p> + +<p>Full details of everything that was included in this release can be seen below.</p> + + + + devlead + + + https://litjson.net/blog/2022/03/litjson-v0.18.0-released + Litjson 0.18.0 released + 2022-03-27T00:00:00Z + <p>Version 0.18.0 of LitJSON has been released.</p> +<p>This version is built using .NET 6 SDK and adds .NET 6 &amp; .NET Standard 2.1 framework monikers.</p> +<p>Contributions were included from:</p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + <p>Version 0.18.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2021/01/litjson-v0.17.0-released + Litjson 0.17.0 released + 2021-01-21T00:00:00Z + <p>Version 0.17.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix for issues with byte/short enum serialization.</p> +<p>Contributions were included from:</p> +<ul> +<li><a href="https://github.com/kdw9502">kdw9502</a></li> +</ul> +<p>Full details of everything that was included in this release can be seen below.</p> +<!--excerpt--> +<h3 id="issues">Issues</h3> +<p>As part of this release we had <a href="https://github.com/LitJSON/litjson/milestone/1?closed=1">1 issues</a> closed.</p> +<p><strong>bug</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/pull/124"><strong>#124</strong></a> Fix byte,short underlying Enum Write issue</li> +</ul> + + <p>Version 0.17.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix for issues with byte/short enum serialization.</p> +<p>Contributions were included from:</p> + +<p>Full details of everything that was included in this release can be seen below.</p> + + + + devlead + + + https://litjson.net/blog/2020/01/litjson-0.16.0-released + Litjson 0.16.0 released + 2020-01-22T00:00:00Z + <p>Version 0.16.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix around empty array handling and improved float support.</p> +<p>Contributions were included from:</p> +<ul> +<li><a href="https://github.com/kdw9502">kdw9502</a></li> +<li><a href="https://github.com/summitn">summitn</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> +<p>Full details of everything that was included in this release can be seen below.</p> +<!--excerpt--> +<h3 id="issues">Issues</h3> +<p>As part of this release we had <a href="https://github.com/LitJSON/litjson/milestone/1?closed=1">3 issues</a> closed.</p> +<p><strong>enhancement</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/pull/112"><strong>#112</strong></a> Support for float.</li> +</ul> +<p><strong>bug</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/issues/98"><strong>#98</strong></a> LitJson doesnt write empty arrays.</li> +<li><a href="https://github.com/LitJSON/litjson/issues/38"><strong>#38</strong></a> In version 0.9.0 empty arrays are still handled incorrectly.</li> +</ul> + + <p>Version 0.16.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix around empty array handling and improved float support.</p> +<p>Contributions were included from:</p> + +<p>Full details of everything that was included in this release can be seen below.</p> + + + + devlead + + + https://litjson.net/blog/2019/10/litjson-v0.15.0-released + LitJSON v0.15.0 released + 2019-10-21T00:00:00Z + <p>Version v0.15.0 of LitJSON has been released.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Fixed issue with serializing non string dictionary key ( <a href="https://github.com/LitJSON/litjson/issues/104">#104</a> )</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/grantfar">grantfar</a></li> +</ul> + + <p>Version v0.15.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2019/09/litjson-v0.14.0-released + LitJSON v0.14.0 released + 2019-09-18T00:00:00Z + <p>Version v0.14.0 of LitJSON has been released.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Fixed package license warning (use license expression)</li> +<li>Fixed DateTimeOffset support.</li> +<li>Added the ability to remove elements from JsonData objects as well as JsonData arrays.</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/kenykhung">kenykhung</a></li> +<li><a href="https://github.com/hogiyogi597">hogiyogi597</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + <p>Version v0.14.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2018/05/litjson-v0.13.0-released + LitJSON v0.13.0 released + 2018-05-09T00:00:00Z + <p>Version v0.13.0 of LitJSON has been released.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Added support for DateTimeOffset</li> +<li>Added method to check existence of key in JsonData</li> +<li>Fixed long / int cast issue</li> +<li>Fixed SourceLink line ending issues</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/blubbfish">blubbfish</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + <p>Version v0.13.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2018/01/litjson-v0.12.0-released + LitJSON v0.12.0 released + 2018-01-24T00:00:00Z + <p>Version v0.12.0 of LitJSON has been released.</p> +<p>This is a minor release of LitJSON, which based on community feedback and contribution, adds back support for .NET Framework version 2.0.</p> +<p>This means we now with the pre-built binaries available on NuGet support:</p> +<ul> +<li>.NET Standard 2.0</li> +<li>.NET Standard 1.5</li> +<li>.NET Framework 4.5 and above</li> +<li>.NET Framework 4.0</li> +<li>.NET Framework 3.5 (including SQLCLR)</li> +<li>.NET Framework 2.0</li> +<li>Mono 4.4.2 and above</li> +</ul> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Added .NET 2.0 target</li> +<li>Updated build to Cake 0.25.0</li> +<li>Updated to .NET Core SDK 2.1.4</li> +<li>Updated PowerShell boostrapper to support PowerShell Core and non Windows Platforms</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/immitev">immitev</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + <p>Version v0.12.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2018/01/litjson-v0.11.0-released + LitJSON v0.11.0 released + 2018-01-08T00:00:00Z + <p>Version v0.11.0 of LitJSON has been released.</p> +<p>This is a minor release to address NuGet compatibility with Unity, which currently supports max .NET 3.5.</p> +<p>We've also added SourceLink for portable PDBs, and source code to symbols NuGet package, to simplify debugging - by linking symbols to GitHub commit.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Added .NET 3.5 target</li> +<li>Added .NET 4.0 target</li> +<li>Added source link</li> +<li>Added source to symbols package</li> +<li>Added NuGet package description</li> +<li>Added Use CLRF based on environment</li> +<li>Added CLRF fix for AppVeyor</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + <p>Version v0.11.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2018/01/litjson-v0.10.0-released + LitJSON v0.10.0 released + 2018-01-04T00:00:00Z + <p>Version v0.10.0 of LitJSON has been released.</p> +<p>This is the first release under the new LitJSON organization, it includes a few new major improvements and a couple of bug fixes.</p> +<p><strong>Features</strong></p> +<p>LitJSON has now been ported to .NET Core, which means it's now targets</p> +<ul> +<li>.NET Standard 2.0</li> +<li>.NET Standard 1.5</li> +<li>.NET Framework 4.5</li> +</ul> +<p>Which makes it available to most of the .NET runtimes out there, please raise an issue/pullrequest if you are missing any target.</p> +<p>The <a href="https://litjson.net/api/LitJson/JsonWriter">JsonWriter</a> now has the <a href="https://litjson.net/api/LitJson/JsonWriter/B6391FAB">LowerCaseProperties</a> property which forces all properties to be outputted in lowercase.</p> +<p>The code base is now compatible and compilable under SQLCLR, which makes it an option for handling JSON with your CLR procedures and functions in SQL Server 2012 and up.</p> +<p><strong>Bugfixes</strong></p> +<p>Long/Int64 are now handled more robustly and can be upcast from an int.</p> +<p>Numbers are now handled in a culture invariant way, which means things will work the same regardless of culture on the clients maachine.</p> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +<li><a href="https://github.com/ikasoumen4">ikasoumen4</a></li> +<li><a href="https://github.com/zhenlinyang">zhenlinyang</a></li> +</ul> +<p>A big thanks to all LitJSON contributors and users, it wouldn't have been possible without you!</p> +<p><strong>Housekeeping</strong></p> +<p>There's been plenty of yak shaving before this release, to improve quality and simplify contribution to the project.</p> +<p>The project is now compiling multitargeted using .NET Core CLI, unit tests have migrated to work with newer versions of NUnit and the .NET CLI. This aslo means there's now an MSBuild solution and project files, so you can open and compile the project in Visual Studio, Visual Studio for Mac, VSCode and Jetbrains Rider.</p> +<p>A <a href="https://cakebuild.net">Cake</a> build script has been added to orchestrate the build, test, packaging and deployment of the project. Invoking the Cake build script is most easily done via the bootstrappers, <code>build.ps1</code> (Windows) or <code>build.sh</code> (MacOS/Linux), which will fetch the specfied Cake version and the .NET SDK needed to build the project.</p> +<p>LitJSON now has CI configured on <a href="https://ci.appveyor.com/project/litjson/litjson/branch/develop">AppVeyor</a> and <a href="https://travis-ci.org/LitJSON/litjson">TravisCI</a>, which means each commit and pull requests now continously builds on Linux, MacOS and Windows.</p> +<p>We now automatically deploy each commit to <a href="https://www.myget.org/gallery/litjson">MyGet</a>, so you if needed you can use pre-release versions, and we're now also deploying each release to <a href="https://www.nuget.org/packages/LitJson">NuGet</a>.</p> + + <p>Version v0.10.0 of LitJSON has been released.</p> + + + + devlead + + + https://litjson.net/blog/2017/12/new-org-and-site + New organization and web site + 2017-12-28T00:00:00Z + <p>After the project's been a bit dormant for a while we're now happy to announce that <a href="https://github.com/LitJSON/litjson">LitJSON</a> has now moved to it's own <a href="https://github.com/litjson">LitJSON</a> GitHub organization.</p> +<p>Together with the new organization we're now launching this new site ( <a href="https://litjson.net">litjson.net</a> ), which will host our <a href="/docs">documentation</a>, <a href="/api">API reference</a> and <a href="/blog">blog posts</a>. A <a href="https://twitter.com/litjsonnet">litjsonnet</a> Twitter account, with the intention to post any announcements there too.</p> +<p>For community discussions we've added a <a href="https://gitter.im/LitJSON/lobby">LitJSON/lobby</a> Gitter channel, which i great for questions and real-time discussions.</p> +<p><a href="https://github.com/devlead">Mattias Karlsson</a> as been added as a maintainer to the project and he'll try to triage pull request and issues so we in the near future can get out a new release with some long awaited bug fixes.</p> +<p>Post that we're planning to focus on a release to add support for .NET Standard so LitJSON can be easily consumable from i.e. .NET Core and UWP too.</p> +<p>And at the same time we'll be adding cross platform continuous integration and support for continuous deployment of releases to NuGet.org and each commit to MyGet.org.</p> + + <p>After the project's been a bit dormant for a while we're now happy to announce that <a href="https://github.com/LitJSON/litjson">LitJSON</a> has now moved to it's own <a href="https://github.com/litjson">LitJSON</a> GitHub organization.</p> + + + + lbv + + + https://litjson.net/blog/2014/09/litjson-v0.9.0-released + LitJSON v0.9.0 released + 2014-09-08T00:00:00Z + <html><head></head><body><p>Version v0.9.0 of LitJSON has been released.</p> +<h2 id="additions">Additions</h2> +<ul> +<li>Added <code><a href="/api/LitJson/JsonData/A64A1513">JsonData.Keys</a></code> property, with type <code>ICollection&lt;string&gt;</code>.</li> +</ul> +<h2 id="bug-fixes">Bug fixes</h2> +<ul> +<li>Handle nullable types (Issue #3)</li> +<li>Parse UInt64 numbers correctly</li> +</ul> +<h2 id="other-changes">Other changes</h2> +<ul> +<li>Allow specifying a custom PKG_CONFIG in build/make.</li> +</ul> +<h2 id="contributors-for-this-release">Contributors for this release</h2> +<ul> +<li><a href="https://github.com/michaelbartnett">Michael Bartnett</a></li> +<li><a href="https://github.com/MickeyKim">MickeyKim</a></li> +</ul> +</body></html> + <p>Version v0.9.0 of LitJSON has been released.</p> + + + + lbv + + + https://litjson.net/blog/2013/04/litjson-v0.7.0-released + LitJSON v0.7.0 released + 2013-04-26T00:00:00Z + <html><head></head><body><p>Version v0.7.0 of LitJSON has been released.</p> +<p>General changes and improvements:</p> +<ul> +<li><p>Simplified the building mechanism. Dropped the entire autotools +infrastructure, and instead added a single Makefile to compile the project +and run the tests with <em>GNU make</em>.</p> +</li> +<li><p>Added <code>SkipNonMembers</code> property to <code><a href="/api/LitJson/JsonReader">JsonReader</a></code>. When active, it allows to +parse JSON data using <code>JsonMapper.ToObject&lt;T&gt;</code> and ignore any properties +not available in the type <code>T</code>. Its default value is <code>true</code>.</p> +</li> +<li><p>Started moving the documentation into Markdown format.</p> +</li> +<li><p>Added a new section to the QuickStart Guide, regarding customisation of +the library's behaviour.</p> +</li> +</ul> +<p>Bug fixes:</p> +<ul> +<li><p>Convert <code>null</code> properties properly in <code>JsonData.ToJson</code>.</p> +</li> +<li><p>Read nested arrays in <code>JsonMapper.ToObject</code> and <code>JsonMapper.ToObject&lt;T&gt;</code> +correctly.</p> +</li> +</ul> +<p>Contributors for this release:</p> +<ul> +<li><a href="https://github.com/whoo24">whoo24</a></li> +<li>Christopher Dummy</li> +</ul> +</body></html> + <p>Version v0.7.0 of LitJSON has been released.</p> + + + + lbv + + + https://litjson.net/blog/2007/10/litjson-v0.5.0-released + LitJSON v0.5.0 released + 2007-10-04T00:00:00Z + <p>Version v0.5.0 of LitJSON has been released.</p> +<p>New features and improvements:</p> +<ul> +<li><p>The JsonRader class now has two properties to control the reading of data +from an input stream: EndOfInput and EndOfJson. The latter becomes +true whenever a complete piece of JSON text has been read, while the +former is a flag that becomes true when the stream itself reaches the end. +This way, reading multiple JSON texts from the same input stream is +straightforward.</p> +</li> +<li><p>Added new base importers in JsonMapper for reading numeric values +correctly into float and double members.</p> +</li> +<li><p>Now Enum's can be imported/exported as numeric values.</p> +</li> +<li><p>JsonData implements the IEquatable<T> interface now.</p> +</li> +</ul> +<p>API changes:</p> +<p>The following types are new: +enum JsonType</p> +<p>The following methods are new: +IJsonWrapper.GetJsonType() +IJsonWrapper.SetJsonType()</p> +<p>The following properties are new: +JsonReader.EndOfInput</p> +<p>Bug fixes:</p> +<ul> +<li><p>Correctly import/export properties that are read-only or write-only.</p> +</li> +<li><p>Correctly convert null values when adding them as array elements or +properties to a JsonData instance.</p> +</li> +<li><p>Fixed conversion of empty JSON objects and arrays.</p> +</li> +</ul> +<p>Thanks to all the contributors that reported problems and suggested fixes +for this release: +Colin Alworth +Ralf Callenberg +andi</p> + + <p>Version v0.5.0 of LitJSON has been released.</p> + + + + lbv + + + https://litjson.net/blog/2007/08/litjson-v0.3.0-released + LitJSON v0.3.0 released + 2007-08-15T00:00:00Z + <p>Version v0.3.0 of LitJSON has been released.</p> +<p>New features and improvements:</p> +<ul> +<li><p>Exporters and importers. +Custom conversions using the JsonMapper class can be made through +importers and exporters. These are delegates that tell the library how to +perform conversions between non-basic types (i.e. not string, int, long, +double or boolean) and JSON. There are base and custom +exporters/importers. The base exporters and importers are built-in +delegates that currently handle simple conversions between JSON and the +following value types:</p> +<p>byte +char +DateTime +decimal +sbyte +short +ushort +uint +ulong</p> +<p>Custom exporters and importers can be defined through +JsonMapper.RegisterExporter and JsonMapper.RegisterImporter, and they +override the built-in conversions.</p> +</li> +<li><p>Improved performance of JsonMapper.ToJson() +A static JsonWriter is re-used to reduce the activity in the heap, +improving performance for multiple conversions.</p> +</li> +<li><p>Allowing extended grammar +The lexer can now accept single-quoted strings, and comments in the +following forms:</p> +</li> +</ul> +<pre><code> // Single-line comment + + /* + * Multi-line comment + */ +</code></pre> +<p>This way, certain forms of input coming from JavaScript that don't +necessarily conform to the strict JSON grammar are allowed and succesfully +parsed.</p> +<p>A JsonReader can be configured to accept only the strict grammar or the +extended one. These extensions are allowed by default.</p> +<ul> +<li><p>API cleanups and additions. +The following members are new:</p> +<p>JsonData.Count +JsonMapper.RegisterExporter() +JsonMapper.RegisterImporter() +JsonMapper.UnregisterExporters() +JsonMapper.UnregisterImporters() +JsonReader.AllowComments +JsonReader.AllowSingleQuotedStrings +JsonWriter.Reset()</p> +<p>The following overloads have been added:</p> +<p>JsonMapper.ToJson(object obj, JsonWriter writer) +JsonMapper.ToObject(JsonReader reader)</p> +<p>The following members have been renamed:</p> +<p>JsonReader.HasReachedEnd is now JsonReader.EndOfJson</p> +</li> +</ul> +<p>Bugs fixed:</p> +<ul> +<li>JsonMapper.ToJson() avoids entering an infinite recursion by defining a +max nesting depth.</li> +<li>The JsonData int indexer now behaves correctly both when it acts as an +array and as an object.</li> +</ul> + + <p>Version v0.3.0 of LitJSON has been released.</p> + + + + lbv + + + https://litjson.net/blog/2007/08/first-release + LitJSON v0.1.0 released + 2007-08-09T00:00:00Z + <p>Version v0.1.0 of LitJSON has been released.</p> +<p>The first release of LitJSON, a new xplat .NET JSON serializer has been born.</p> + + <p>Version v0.1.0 of LitJSON has been released.</p> + + \ No newline at end of file diff --git a/feed.rss b/feed.rss new file mode 100644 index 0000000..612902e --- /dev/null +++ b/feed.rss @@ -0,0 +1,532 @@ + + + + LitJSON + https://litjson.net/ + + 2023 + Sun, 19 Nov 2023 21:02:38 GMT + Sun, 19 Nov 2023 21:02:38 GMT + + Litjson v0.19.0 released + https://litjson.net/blog/2023/11/litjson-v0.19.0-released + <p>Version <strong>0.19.0</strong> of LitJSON has been released. Take it for a spin and give us feedback on our <a href="https://github.com/LitJSON/litjson/discussions/158">discussion board</a>.</p> +<p>This release includes new features, improvements, and bug fixes since the <a href="/blog/2022/03/litjson-v0.18.0-released">LitJSON 0.18.0 release</a>! 🚀</p> + + + +<p>LitJSON adds the <code>net8.0</code> target framework moniker which now means it supports the following frameworks</p> + + +<p>Which 0.19.0 we also ship <a href="https://www.nuget.org/packages/LitJson.Source">LitJson.Source</a>, which is a source code NuGet package, which means LitJSON gets compiled and embedded with your application/assembly. Useful if you need a zero-dependency JSON serializer within your own code.</p> + +<p>This release was made possible thanks to the contribution of these awesome members of the community listed below:</p> + +<p>Full details of everything that was included in this release can be seen below.</p> + devlead + https://litjson.net/blog/2023/11/litjson-v0.19.0-released + Sun, 19 Nov 2023 00:00:00 GMT + <p>Version <strong>0.19.0</strong> of LitJSON has been released. Take it for a spin and give us feedback on our <a href="https://github.com/LitJSON/litjson/discussions/158">discussion board</a>.</p> +<p>This release includes new features, improvements, and bug fixes since the <a href="/blog/2022/03/litjson-v0.18.0-released">LitJSON 0.18.0 release</a>! 🚀</p> +<h3 id="highlights-of-this-release">Highlights of this release</h3> +<ul> +<li>.NET 8 Support</li> +<li>LitJson.Source</li> +</ul> +<h3 id="net-8-support">.NET 8 Support</h3> +<p>LitJSON adds the <code>net8.0</code> target framework moniker which now means it supports the following frameworks</p> +<ul> +<li>.NET 8</li> +<li>.NET 6</li> +<li>.NET Standard 2.1</li> +<li>.NET Standard 2.0</li> +<li>.NET Standard 1.5</li> +<li>.NET Framework 4.8</li> +<li>.NET Framework 4.5</li> +<li>.NET Framework 4.0</li> +<li>.NET Framework 3.5 (including SQLCLR)</li> +<li>.NET Framework 2.0</li> +<li>Mono 4.4.2 and above</li> +</ul> +<h3 id="litjson.source">LitJson.Source</h3> +<p>Which 0.19.0 we also ship <a href="https://www.nuget.org/packages/LitJson.Source">LitJson.Source</a>, which is a source code NuGet package, which means LitJSON gets compiled and embedded with your application/assembly. Useful if you need a zero-dependency JSON serializer within your own code.</p> +<h3 id="contributors">Contributors</h3> +<p>This release was made possible thanks to the contribution of these awesome members of the community listed below:</p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +<li>Dave Black</li> +<li><a href="https://github.com/udlose">udlose</a></li> +</ul> +<p>Full details of everything that was included in this release can be seen below.</p> +<!--excerpt--> +<h3 id="issues">Issues</h3> +<p>As part of this release we had <a href="https://github.com/LitJSON/litjson/milestone/2?closed=1">10 issues</a> closed.</p> +<p><strong>enhancement</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/issues/154"><strong>#154</strong></a> Update System.Reflection.TypeExtensions to 4.7.0.</li> +<li><a href="https://github.com/LitJSON/litjson/issues/153"><strong>#153</strong></a> Update System.Collections.* to 4.3.0.</li> +<li><a href="https://github.com/LitJSON/litjson/issues/146"><strong>#146</strong></a> Add .NET 8 and update to .NET 8.0.100 SDK.</li> +</ul> +<p><strong>bug</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/issues/143"><strong>#143</strong></a> Race conditions affecting JsonMapper and its usage of static members w/o synchronization.</li> +</ul> + + + + Litjson 0.18.0 released + https://litjson.net/blog/2022/03/litjson-v0.18.0-released + <p>Version 0.18.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2022/03/litjson-v0.18.0-released + Sun, 27 Mar 2022 00:00:00 GMT + <p>Version 0.18.0 of LitJSON has been released.</p> +<p>This version is built using .NET 6 SDK and adds .NET 6 &amp; .NET Standard 2.1 framework monikers.</p> +<p>Contributions were included from:</p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + + + Litjson 0.17.0 released + https://litjson.net/blog/2021/01/litjson-v0.17.0-released + <p>Version 0.17.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix for issues with byte/short enum serialization.</p> +<p>Contributions were included from:</p> + +<p>Full details of everything that was included in this release can be seen below.</p> + devlead + https://litjson.net/blog/2021/01/litjson-v0.17.0-released + Thu, 21 Jan 2021 00:00:00 GMT + <p>Version 0.17.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix for issues with byte/short enum serialization.</p> +<p>Contributions were included from:</p> +<ul> +<li><a href="https://github.com/kdw9502">kdw9502</a></li> +</ul> +<p>Full details of everything that was included in this release can be seen below.</p> +<!--excerpt--> +<h3 id="issues">Issues</h3> +<p>As part of this release we had <a href="https://github.com/LitJSON/litjson/milestone/1?closed=1">1 issues</a> closed.</p> +<p><strong>bug</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/pull/124"><strong>#124</strong></a> Fix byte,short underlying Enum Write issue</li> +</ul> + + + + Litjson 0.16.0 released + https://litjson.net/blog/2020/01/litjson-0.16.0-released + <p>Version 0.16.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix around empty array handling and improved float support.</p> +<p>Contributions were included from:</p> + +<p>Full details of everything that was included in this release can be seen below.</p> + devlead + https://litjson.net/blog/2020/01/litjson-0.16.0-released + Wed, 22 Jan 2020 00:00:00 GMT + <p>Version 0.16.0 of LitJSON has been released.</p> +<p>In this version we've got a bug fix around empty array handling and improved float support.</p> +<p>Contributions were included from:</p> +<ul> +<li><a href="https://github.com/kdw9502">kdw9502</a></li> +<li><a href="https://github.com/summitn">summitn</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> +<p>Full details of everything that was included in this release can be seen below.</p> +<!--excerpt--> +<h3 id="issues">Issues</h3> +<p>As part of this release we had <a href="https://github.com/LitJSON/litjson/milestone/1?closed=1">3 issues</a> closed.</p> +<p><strong>enhancement</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/pull/112"><strong>#112</strong></a> Support for float.</li> +</ul> +<p><strong>bug</strong></p> +<ul> +<li><a href="https://github.com/LitJSON/litjson/issues/98"><strong>#98</strong></a> LitJson doesnt write empty arrays.</li> +<li><a href="https://github.com/LitJSON/litjson/issues/38"><strong>#38</strong></a> In version 0.9.0 empty arrays are still handled incorrectly.</li> +</ul> + + + + LitJSON v0.15.0 released + https://litjson.net/blog/2019/10/litjson-v0.15.0-released + <p>Version v0.15.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2019/10/litjson-v0.15.0-released + Mon, 21 Oct 2019 00:00:00 GMT + <p>Version v0.15.0 of LitJSON has been released.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Fixed issue with serializing non string dictionary key ( <a href="https://github.com/LitJSON/litjson/issues/104">#104</a> )</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/grantfar">grantfar</a></li> +</ul> + + + + LitJSON v0.14.0 released + https://litjson.net/blog/2019/09/litjson-v0.14.0-released + <p>Version v0.14.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2019/09/litjson-v0.14.0-released + Wed, 18 Sep 2019 00:00:00 GMT + <p>Version v0.14.0 of LitJSON has been released.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Fixed package license warning (use license expression)</li> +<li>Fixed DateTimeOffset support.</li> +<li>Added the ability to remove elements from JsonData objects as well as JsonData arrays.</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/kenykhung">kenykhung</a></li> +<li><a href="https://github.com/hogiyogi597">hogiyogi597</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + + + LitJSON v0.13.0 released + https://litjson.net/blog/2018/05/litjson-v0.13.0-released + <p>Version v0.13.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2018/05/litjson-v0.13.0-released + Wed, 09 May 2018 00:00:00 GMT + <p>Version v0.13.0 of LitJSON has been released.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Added support for DateTimeOffset</li> +<li>Added method to check existence of key in JsonData</li> +<li>Fixed long / int cast issue</li> +<li>Fixed SourceLink line ending issues</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/blubbfish">blubbfish</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + + + LitJSON v0.12.0 released + https://litjson.net/blog/2018/01/litjson-v0.12.0-released + <p>Version v0.12.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2018/01/litjson-v0.12.0-released + Wed, 24 Jan 2018 00:00:00 GMT + <p>Version v0.12.0 of LitJSON has been released.</p> +<p>This is a minor release of LitJSON, which based on community feedback and contribution, adds back support for .NET Framework version 2.0.</p> +<p>This means we now with the pre-built binaries available on NuGet support:</p> +<ul> +<li>.NET Standard 2.0</li> +<li>.NET Standard 1.5</li> +<li>.NET Framework 4.5 and above</li> +<li>.NET Framework 4.0</li> +<li>.NET Framework 3.5 (including SQLCLR)</li> +<li>.NET Framework 2.0</li> +<li>Mono 4.4.2 and above</li> +</ul> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Added .NET 2.0 target</li> +<li>Updated build to Cake 0.25.0</li> +<li>Updated to .NET Core SDK 2.1.4</li> +<li>Updated PowerShell boostrapper to support PowerShell Core and non Windows Platforms</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/immitev">immitev</a></li> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + + + LitJSON v0.11.0 released + https://litjson.net/blog/2018/01/litjson-v0.11.0-released + <p>Version v0.11.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2018/01/litjson-v0.11.0-released + Mon, 08 Jan 2018 00:00:00 GMT + <p>Version v0.11.0 of LitJSON has been released.</p> +<p>This is a minor release to address NuGet compatibility with Unity, which currently supports max .NET 3.5.</p> +<p>We've also added SourceLink for portable PDBs, and source code to symbols NuGet package, to simplify debugging - by linking symbols to GitHub commit.</p> +<p><strong>Changes in this release</strong></p> +<ul> +<li>Added .NET 3.5 target</li> +<li>Added .NET 4.0 target</li> +<li>Added source link</li> +<li>Added source to symbols package</li> +<li>Added NuGet package description</li> +<li>Added Use CLRF based on environment</li> +<li>Added CLRF fix for AppVeyor</li> +</ul> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +</ul> + + + + LitJSON v0.10.0 released + https://litjson.net/blog/2018/01/litjson-v0.10.0-released + <p>Version v0.10.0 of LitJSON has been released.</p> + devlead + https://litjson.net/blog/2018/01/litjson-v0.10.0-released + Thu, 04 Jan 2018 00:00:00 GMT + <p>Version v0.10.0 of LitJSON has been released.</p> +<p>This is the first release under the new LitJSON organization, it includes a few new major improvements and a couple of bug fixes.</p> +<p><strong>Features</strong></p> +<p>LitJSON has now been ported to .NET Core, which means it's now targets</p> +<ul> +<li>.NET Standard 2.0</li> +<li>.NET Standard 1.5</li> +<li>.NET Framework 4.5</li> +</ul> +<p>Which makes it available to most of the .NET runtimes out there, please raise an issue/pullrequest if you are missing any target.</p> +<p>The <a href="https://litjson.net/api/LitJson/JsonWriter">JsonWriter</a> now has the <a href="https://litjson.net/api/LitJson/JsonWriter/B6391FAB">LowerCaseProperties</a> property which forces all properties to be outputted in lowercase.</p> +<p>The code base is now compatible and compilable under SQLCLR, which makes it an option for handling JSON with your CLR procedures and functions in SQL Server 2012 and up.</p> +<p><strong>Bugfixes</strong></p> +<p>Long/Int64 are now handled more robustly and can be upcast from an int.</p> +<p>Numbers are now handled in a culture invariant way, which means things will work the same regardless of culture on the clients maachine.</p> +<p><strong>This release's contributors</strong></p> +<ul> +<li><a href="https://github.com/devlead">devlead</a></li> +<li><a href="https://github.com/ikasoumen4">ikasoumen4</a></li> +<li><a href="https://github.com/zhenlinyang">zhenlinyang</a></li> +</ul> +<p>A big thanks to all LitJSON contributors and users, it wouldn't have been possible without you!</p> +<p><strong>Housekeeping</strong></p> +<p>There's been plenty of yak shaving before this release, to improve quality and simplify contribution to the project.</p> +<p>The project is now compiling multitargeted using .NET Core CLI, unit tests have migrated to work with newer versions of NUnit and the .NET CLI. This aslo means there's now an MSBuild solution and project files, so you can open and compile the project in Visual Studio, Visual Studio for Mac, VSCode and Jetbrains Rider.</p> +<p>A <a href="https://cakebuild.net">Cake</a> build script has been added to orchestrate the build, test, packaging and deployment of the project. Invoking the Cake build script is most easily done via the bootstrappers, <code>build.ps1</code> (Windows) or <code>build.sh</code> (MacOS/Linux), which will fetch the specfied Cake version and the .NET SDK needed to build the project.</p> +<p>LitJSON now has CI configured on <a href="https://ci.appveyor.com/project/litjson/litjson/branch/develop">AppVeyor</a> and <a href="https://travis-ci.org/LitJSON/litjson">TravisCI</a>, which means each commit and pull requests now continously builds on Linux, MacOS and Windows.</p> +<p>We now automatically deploy each commit to <a href="https://www.myget.org/gallery/litjson">MyGet</a>, so you if needed you can use pre-release versions, and we're now also deploying each release to <a href="https://www.nuget.org/packages/LitJson">NuGet</a>.</p> + + + + New organization and web site + https://litjson.net/blog/2017/12/new-org-and-site + <p>After the project's been a bit dormant for a while we're now happy to announce that <a href="https://github.com/LitJSON/litjson">LitJSON</a> has now moved to it's own <a href="https://github.com/litjson">LitJSON</a> GitHub organization.</p> + devlead + https://litjson.net/blog/2017/12/new-org-and-site + Thu, 28 Dec 2017 00:00:00 GMT + <p>After the project's been a bit dormant for a while we're now happy to announce that <a href="https://github.com/LitJSON/litjson">LitJSON</a> has now moved to it's own <a href="https://github.com/litjson">LitJSON</a> GitHub organization.</p> +<p>Together with the new organization we're now launching this new site ( <a href="https://litjson.net">litjson.net</a> ), which will host our <a href="/docs">documentation</a>, <a href="/api">API reference</a> and <a href="/blog">blog posts</a>. A <a href="https://twitter.com/litjsonnet">litjsonnet</a> Twitter account, with the intention to post any announcements there too.</p> +<p>For community discussions we've added a <a href="https://gitter.im/LitJSON/lobby">LitJSON/lobby</a> Gitter channel, which i great for questions and real-time discussions.</p> +<p><a href="https://github.com/devlead">Mattias Karlsson</a> as been added as a maintainer to the project and he'll try to triage pull request and issues so we in the near future can get out a new release with some long awaited bug fixes.</p> +<p>Post that we're planning to focus on a release to add support for .NET Standard so LitJSON can be easily consumable from i.e. .NET Core and UWP too.</p> +<p>And at the same time we'll be adding cross platform continuous integration and support for continuous deployment of releases to NuGet.org and each commit to MyGet.org.</p> + + + + LitJSON v0.9.0 released + https://litjson.net/blog/2014/09/litjson-v0.9.0-released + <p>Version v0.9.0 of LitJSON has been released.</p> + lbv + https://litjson.net/blog/2014/09/litjson-v0.9.0-released + Mon, 08 Sep 2014 00:00:00 GMT + <html><head></head><body><p>Version v0.9.0 of LitJSON has been released.</p> +<h2 id="additions">Additions</h2> +<ul> +<li>Added <code><a href="/api/LitJson/JsonData/A64A1513">JsonData.Keys</a></code> property, with type <code>ICollection&lt;string&gt;</code>.</li> +</ul> +<h2 id="bug-fixes">Bug fixes</h2> +<ul> +<li>Handle nullable types (Issue #3)</li> +<li>Parse UInt64 numbers correctly</li> +</ul> +<h2 id="other-changes">Other changes</h2> +<ul> +<li>Allow specifying a custom PKG_CONFIG in build/make.</li> +</ul> +<h2 id="contributors-for-this-release">Contributors for this release</h2> +<ul> +<li><a href="https://github.com/michaelbartnett">Michael Bartnett</a></li> +<li><a href="https://github.com/MickeyKim">MickeyKim</a></li> +</ul> +</body></html> + + + LitJSON v0.7.0 released + https://litjson.net/blog/2013/04/litjson-v0.7.0-released + <p>Version v0.7.0 of LitJSON has been released.</p> + lbv + https://litjson.net/blog/2013/04/litjson-v0.7.0-released + Fri, 26 Apr 2013 00:00:00 GMT + <html><head></head><body><p>Version v0.7.0 of LitJSON has been released.</p> +<p>General changes and improvements:</p> +<ul> +<li><p>Simplified the building mechanism. Dropped the entire autotools +infrastructure, and instead added a single Makefile to compile the project +and run the tests with <em>GNU make</em>.</p> +</li> +<li><p>Added <code>SkipNonMembers</code> property to <code><a href="/api/LitJson/JsonReader">JsonReader</a></code>. When active, it allows to +parse JSON data using <code>JsonMapper.ToObject&lt;T&gt;</code> and ignore any properties +not available in the type <code>T</code>. Its default value is <code>true</code>.</p> +</li> +<li><p>Started moving the documentation into Markdown format.</p> +</li> +<li><p>Added a new section to the QuickStart Guide, regarding customisation of +the library's behaviour.</p> +</li> +</ul> +<p>Bug fixes:</p> +<ul> +<li><p>Convert <code>null</code> properties properly in <code>JsonData.ToJson</code>.</p> +</li> +<li><p>Read nested arrays in <code>JsonMapper.ToObject</code> and <code>JsonMapper.ToObject&lt;T&gt;</code> +correctly.</p> +</li> +</ul> +<p>Contributors for this release:</p> +<ul> +<li><a href="https://github.com/whoo24">whoo24</a></li> +<li>Christopher Dummy</li> +</ul> +</body></html> + + + LitJSON v0.5.0 released + https://litjson.net/blog/2007/10/litjson-v0.5.0-released + <p>Version v0.5.0 of LitJSON has been released.</p> + lbv + https://litjson.net/blog/2007/10/litjson-v0.5.0-released + Thu, 04 Oct 2007 00:00:00 GMT + <p>Version v0.5.0 of LitJSON has been released.</p> +<p>New features and improvements:</p> +<ul> +<li><p>The JsonRader class now has two properties to control the reading of data +from an input stream: EndOfInput and EndOfJson. The latter becomes +true whenever a complete piece of JSON text has been read, while the +former is a flag that becomes true when the stream itself reaches the end. +This way, reading multiple JSON texts from the same input stream is +straightforward.</p> +</li> +<li><p>Added new base importers in JsonMapper for reading numeric values +correctly into float and double members.</p> +</li> +<li><p>Now Enum's can be imported/exported as numeric values.</p> +</li> +<li><p>JsonData implements the IEquatable<T> interface now.</p> +</li> +</ul> +<p>API changes:</p> +<p>The following types are new: +enum JsonType</p> +<p>The following methods are new: +IJsonWrapper.GetJsonType() +IJsonWrapper.SetJsonType()</p> +<p>The following properties are new: +JsonReader.EndOfInput</p> +<p>Bug fixes:</p> +<ul> +<li><p>Correctly import/export properties that are read-only or write-only.</p> +</li> +<li><p>Correctly convert null values when adding them as array elements or +properties to a JsonData instance.</p> +</li> +<li><p>Fixed conversion of empty JSON objects and arrays.</p> +</li> +</ul> +<p>Thanks to all the contributors that reported problems and suggested fixes +for this release: +Colin Alworth +Ralf Callenberg +andi</p> + + + + LitJSON v0.3.0 released + https://litjson.net/blog/2007/08/litjson-v0.3.0-released + <p>Version v0.3.0 of LitJSON has been released.</p> + lbv + https://litjson.net/blog/2007/08/litjson-v0.3.0-released + Wed, 15 Aug 2007 00:00:00 GMT + <p>Version v0.3.0 of LitJSON has been released.</p> +<p>New features and improvements:</p> +<ul> +<li><p>Exporters and importers. +Custom conversions using the JsonMapper class can be made through +importers and exporters. These are delegates that tell the library how to +perform conversions between non-basic types (i.e. not string, int, long, +double or boolean) and JSON. There are base and custom +exporters/importers. The base exporters and importers are built-in +delegates that currently handle simple conversions between JSON and the +following value types:</p> +<p>byte +char +DateTime +decimal +sbyte +short +ushort +uint +ulong</p> +<p>Custom exporters and importers can be defined through +JsonMapper.RegisterExporter and JsonMapper.RegisterImporter, and they +override the built-in conversions.</p> +</li> +<li><p>Improved performance of JsonMapper.ToJson() +A static JsonWriter is re-used to reduce the activity in the heap, +improving performance for multiple conversions.</p> +</li> +<li><p>Allowing extended grammar +The lexer can now accept single-quoted strings, and comments in the +following forms:</p> +</li> +</ul> +<pre><code> // Single-line comment + + /* + * Multi-line comment + */ +</code></pre> +<p>This way, certain forms of input coming from JavaScript that don't +necessarily conform to the strict JSON grammar are allowed and succesfully +parsed.</p> +<p>A JsonReader can be configured to accept only the strict grammar or the +extended one. These extensions are allowed by default.</p> +<ul> +<li><p>API cleanups and additions. +The following members are new:</p> +<p>JsonData.Count +JsonMapper.RegisterExporter() +JsonMapper.RegisterImporter() +JsonMapper.UnregisterExporters() +JsonMapper.UnregisterImporters() +JsonReader.AllowComments +JsonReader.AllowSingleQuotedStrings +JsonWriter.Reset()</p> +<p>The following overloads have been added:</p> +<p>JsonMapper.ToJson(object obj, JsonWriter writer) +JsonMapper.ToObject(JsonReader reader)</p> +<p>The following members have been renamed:</p> +<p>JsonReader.HasReachedEnd is now JsonReader.EndOfJson</p> +</li> +</ul> +<p>Bugs fixed:</p> +<ul> +<li>JsonMapper.ToJson() avoids entering an infinite recursion by defining a +max nesting depth.</li> +<li>The JsonData int indexer now behaves correctly both when it acts as an +array and as an object.</li> +</ul> + + + + LitJSON v0.1.0 released + https://litjson.net/blog/2007/08/first-release + <p>Version v0.1.0 of LitJSON has been released.</p> + lbv + https://litjson.net/blog/2007/08/first-release + Thu, 09 Aug 2007 00:00:00 GMT + <p>Version v0.1.0 of LitJSON has been released.</p> +<p>The first release of LitJSON, a new xplat .NET JSON serializer has been born.</p> + + + + \ No newline at end of file diff --git a/index.html b/index.html index 0df335a..e87bd84 100644 --- a/index.html +++ b/index.html @@ -1,8 +1,222 @@ + - LitJSON - .NET Json Serializer + + + + + + + + LitJSON - Home + + + + + + + + + + + + + + + + + + - - TBD + +
+
+ +
+ + + + +
+ + + + + +
+ + + + +
+
+

What is LitJSON?

+

A .Net library to handle conversions from and to JSON (JavaScript Object Notation) strings.

+

LitJSON is written in C#, and it’s intended to be small, fast and easy to use.

+

It's quick and lean, without external dependencies.
+ Just a few classes, so easily embeddable in your own code, or a very small assembly to ship with your code.
+ The code is highly portable, which in general makes it easy to adapt for new platforms.
+

+

+ Quickstart » +

+
+
+ +
+
+

Blog posts

+
+

Litjson v0.19.0 released
+ Published: Sunday, November 19, 2023

+

Litjson 0.18.0 released
+ Published: Sunday, March 27, 2022

+

Litjson 0.17.0 released
+ Published: Thursday, January 21, 2021

+

Litjson 0.16.0 released
+ Published: Wednesday, January 22, 2020

+

LitJSON v0.15.0 released
+ Published: Monday, October 21, 2019

+

LitJSON v0.14.0 released
+ Published: Wednesday, September 18, 2019

+

LitJSON v0.13.0 released
+ Published: Wednesday, May 9, 2018

+

LitJSON v0.12.0 released
+ Published: Wednesday, January 24, 2018

+

LitJSON v0.11.0 released
+ Published: Monday, January 8, 2018

+

LitJSON v0.10.0 released
+ Published: Thursday, January 4, 2018

+
+ +
+
+ +
+ + +
+
+ +
+
+ +
+ + + + + + + + + + \ No newline at end of file