Merge pull request #275 from saschagottfried/master
Remove client-side libraries managed by Library Manager from reposito…
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -25,7 +25,7 @@ bld/
|
|||||||
# Visual Studio 2015 cache/options directory
|
# Visual Studio 2015 cache/options directory
|
||||||
.vs/
|
.vs/
|
||||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||||
#wwwroot/
|
**/wwwroot/lib/
|
||||||
|
|
||||||
# MSTest test Results
|
# MSTest test Results
|
||||||
[Tt]est[Rr]esult*/
|
[Tt]est[Rr]esult*/
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
6757
src/Web/wwwroot/lib/bootstrap/dist/css/bootstrap.css
vendored
6757
src/Web/wwwroot/lib/bootstrap/dist/css/bootstrap.css
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2377
src/Web/wwwroot/lib/bootstrap/dist/js/bootstrap.js
vendored
2377
src/Web/wwwroot/lib/bootstrap/dist/js/bootstrap.js
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
1601
src/Web/wwwroot/lib/jquery-validate/jquery.validate.js
vendored
1601
src/Web/wwwroot/lib/jquery-validate/jquery.validate.js
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,431 +0,0 @@
|
|||||||
// Unobtrusive validation support library for jQuery and jQuery Validate
|
|
||||||
// Copyright (C) Microsoft Corporation. All rights reserved.
|
|
||||||
// @version v3.2.10
|
|
||||||
|
|
||||||
/*jslint white: true, browser: true, onevar: true, undef: true, nomen: true, eqeqeq: true, plusplus: true, bitwise: true, regexp: true, newcap: true, immed: true, strict: false */
|
|
||||||
/*global document: false, jQuery: false */
|
|
||||||
|
|
||||||
(function (factory) {
|
|
||||||
if (typeof define === 'function' && define.amd) {
|
|
||||||
// AMD. Register as an anonymous module.
|
|
||||||
define("jquery.validate.unobtrusive", ['jquery-validation'], factory);
|
|
||||||
} else if (typeof module === 'object' && module.exports) {
|
|
||||||
// CommonJS-like environments that support module.exports
|
|
||||||
module.exports = factory(require('jquery-validation'));
|
|
||||||
} else {
|
|
||||||
// Browser global
|
|
||||||
jQuery.validator.unobtrusive = factory(jQuery);
|
|
||||||
}
|
|
||||||
}(function ($) {
|
|
||||||
var $jQval = $.validator,
|
|
||||||
adapters,
|
|
||||||
data_validation = "unobtrusiveValidation";
|
|
||||||
|
|
||||||
function setValidationValues(options, ruleName, value) {
|
|
||||||
options.rules[ruleName] = value;
|
|
||||||
if (options.message) {
|
|
||||||
options.messages[ruleName] = options.message;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function splitAndTrim(value) {
|
|
||||||
return value.replace(/^\s+|\s+$/g, "").split(/\s*,\s*/g);
|
|
||||||
}
|
|
||||||
|
|
||||||
function escapeAttributeValue(value) {
|
|
||||||
// As mentioned on http://api.jquery.com/category/selectors/
|
|
||||||
return value.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g, "\\$1");
|
|
||||||
}
|
|
||||||
|
|
||||||
function getModelPrefix(fieldName) {
|
|
||||||
return fieldName.substr(0, fieldName.lastIndexOf(".") + 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
function appendModelPrefix(value, prefix) {
|
|
||||||
if (value.indexOf("*.") === 0) {
|
|
||||||
value = value.replace("*.", prefix);
|
|
||||||
}
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
|
|
||||||
function onError(error, inputElement) { // 'this' is the form element
|
|
||||||
var container = $(this).find("[data-valmsg-for='" + escapeAttributeValue(inputElement[0].name) + "']"),
|
|
||||||
replaceAttrValue = container.attr("data-valmsg-replace"),
|
|
||||||
replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) !== false : null;
|
|
||||||
|
|
||||||
container.removeClass("field-validation-valid").addClass("field-validation-error");
|
|
||||||
error.data("unobtrusiveContainer", container);
|
|
||||||
|
|
||||||
if (replace) {
|
|
||||||
container.empty();
|
|
||||||
error.removeClass("input-validation-error").appendTo(container);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
error.hide();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function onErrors(event, validator) { // 'this' is the form element
|
|
||||||
var container = $(this).find("[data-valmsg-summary=true]"),
|
|
||||||
list = container.find("ul");
|
|
||||||
|
|
||||||
if (list && list.length && validator.errorList.length) {
|
|
||||||
list.empty();
|
|
||||||
container.addClass("validation-summary-errors").removeClass("validation-summary-valid");
|
|
||||||
|
|
||||||
$.each(validator.errorList, function () {
|
|
||||||
$("<li />").html(this.message).appendTo(list);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function onSuccess(error) { // 'this' is the form element
|
|
||||||
var container = error.data("unobtrusiveContainer");
|
|
||||||
|
|
||||||
if (container) {
|
|
||||||
var replaceAttrValue = container.attr("data-valmsg-replace"),
|
|
||||||
replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) : null;
|
|
||||||
|
|
||||||
container.addClass("field-validation-valid").removeClass("field-validation-error");
|
|
||||||
error.removeData("unobtrusiveContainer");
|
|
||||||
|
|
||||||
if (replace) {
|
|
||||||
container.empty();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function onReset(event) { // 'this' is the form element
|
|
||||||
var $form = $(this),
|
|
||||||
key = '__jquery_unobtrusive_validation_form_reset';
|
|
||||||
if ($form.data(key)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// Set a flag that indicates we're currently resetting the form.
|
|
||||||
$form.data(key, true);
|
|
||||||
try {
|
|
||||||
$form.data("validator").resetForm();
|
|
||||||
} finally {
|
|
||||||
$form.removeData(key);
|
|
||||||
}
|
|
||||||
|
|
||||||
$form.find(".validation-summary-errors")
|
|
||||||
.addClass("validation-summary-valid")
|
|
||||||
.removeClass("validation-summary-errors");
|
|
||||||
$form.find(".field-validation-error")
|
|
||||||
.addClass("field-validation-valid")
|
|
||||||
.removeClass("field-validation-error")
|
|
||||||
.removeData("unobtrusiveContainer")
|
|
||||||
.find(">*") // If we were using valmsg-replace, get the underlying error
|
|
||||||
.removeData("unobtrusiveContainer");
|
|
||||||
}
|
|
||||||
|
|
||||||
function validationInfo(form) {
|
|
||||||
var $form = $(form),
|
|
||||||
result = $form.data(data_validation),
|
|
||||||
onResetProxy = $.proxy(onReset, form),
|
|
||||||
defaultOptions = $jQval.unobtrusive.options || {},
|
|
||||||
execInContext = function (name, args) {
|
|
||||||
var func = defaultOptions[name];
|
|
||||||
func && $.isFunction(func) && func.apply(form, args);
|
|
||||||
};
|
|
||||||
|
|
||||||
if (!result) {
|
|
||||||
result = {
|
|
||||||
options: { // options structure passed to jQuery Validate's validate() method
|
|
||||||
errorClass: defaultOptions.errorClass || "input-validation-error",
|
|
||||||
errorElement: defaultOptions.errorElement || "span",
|
|
||||||
errorPlacement: function () {
|
|
||||||
onError.apply(form, arguments);
|
|
||||||
execInContext("errorPlacement", arguments);
|
|
||||||
},
|
|
||||||
invalidHandler: function () {
|
|
||||||
onErrors.apply(form, arguments);
|
|
||||||
execInContext("invalidHandler", arguments);
|
|
||||||
},
|
|
||||||
messages: {},
|
|
||||||
rules: {},
|
|
||||||
success: function () {
|
|
||||||
onSuccess.apply(form, arguments);
|
|
||||||
execInContext("success", arguments);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
attachValidation: function () {
|
|
||||||
$form
|
|
||||||
.off("reset." + data_validation, onResetProxy)
|
|
||||||
.on("reset." + data_validation, onResetProxy)
|
|
||||||
.validate(this.options);
|
|
||||||
},
|
|
||||||
validate: function () { // a validation function that is called by unobtrusive Ajax
|
|
||||||
$form.validate();
|
|
||||||
return $form.valid();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
$form.data(data_validation, result);
|
|
||||||
}
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
$jQval.unobtrusive = {
|
|
||||||
adapters: [],
|
|
||||||
|
|
||||||
parseElement: function (element, skipAttach) {
|
|
||||||
/// <summary>
|
|
||||||
/// Parses a single HTML element for unobtrusive validation attributes.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="element" domElement="true">The HTML element to be parsed.</param>
|
|
||||||
/// <param name="skipAttach" type="Boolean">[Optional] true to skip attaching the
|
|
||||||
/// validation to the form. If parsing just this single element, you should specify true.
|
|
||||||
/// If parsing several elements, you should specify false, and manually attach the validation
|
|
||||||
/// to the form when you are finished. The default is false.</param>
|
|
||||||
var $element = $(element),
|
|
||||||
form = $element.parents("form")[0],
|
|
||||||
valInfo, rules, messages;
|
|
||||||
|
|
||||||
if (!form) { // Cannot do client-side validation without a form
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
valInfo = validationInfo(form);
|
|
||||||
valInfo.options.rules[element.name] = rules = {};
|
|
||||||
valInfo.options.messages[element.name] = messages = {};
|
|
||||||
|
|
||||||
$.each(this.adapters, function () {
|
|
||||||
var prefix = "data-val-" + this.name,
|
|
||||||
message = $element.attr(prefix),
|
|
||||||
paramValues = {};
|
|
||||||
|
|
||||||
if (message !== undefined) { // Compare against undefined, because an empty message is legal (and falsy)
|
|
||||||
prefix += "-";
|
|
||||||
|
|
||||||
$.each(this.params, function () {
|
|
||||||
paramValues[this] = $element.attr(prefix + this);
|
|
||||||
});
|
|
||||||
|
|
||||||
this.adapt({
|
|
||||||
element: element,
|
|
||||||
form: form,
|
|
||||||
message: message,
|
|
||||||
params: paramValues,
|
|
||||||
rules: rules,
|
|
||||||
messages: messages
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.extend(rules, { "__dummy__": true });
|
|
||||||
|
|
||||||
if (!skipAttach) {
|
|
||||||
valInfo.attachValidation();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
parse: function (selector) {
|
|
||||||
/// <summary>
|
|
||||||
/// Parses all the HTML elements in the specified selector. It looks for input elements decorated
|
|
||||||
/// with the [data-val=true] attribute value and enables validation according to the data-val-*
|
|
||||||
/// attribute values.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="selector" type="String">Any valid jQuery selector.</param>
|
|
||||||
|
|
||||||
// $forms includes all forms in selector's DOM hierarchy (parent, children and self) that have at least one
|
|
||||||
// element with data-val=true
|
|
||||||
var $selector = $(selector),
|
|
||||||
$forms = $selector.parents()
|
|
||||||
.addBack()
|
|
||||||
.filter("form")
|
|
||||||
.add($selector.find("form"))
|
|
||||||
.has("[data-val=true]");
|
|
||||||
|
|
||||||
$selector.find("[data-val=true]").each(function () {
|
|
||||||
$jQval.unobtrusive.parseElement(this, true);
|
|
||||||
});
|
|
||||||
|
|
||||||
$forms.each(function () {
|
|
||||||
var info = validationInfo(this);
|
|
||||||
if (info) {
|
|
||||||
info.attachValidation();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
adapters = $jQval.unobtrusive.adapters;
|
|
||||||
|
|
||||||
adapters.add = function (adapterName, params, fn) {
|
|
||||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation.</summary>
|
|
||||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
|
||||||
/// in the data-val-nnnn HTML attribute (where nnnn is the adapter name).</param>
|
|
||||||
/// <param name="params" type="Array" optional="true">[Optional] An array of parameter names (strings) that will
|
|
||||||
/// be extracted from the data-val-nnnn-mmmm HTML attributes (where nnnn is the adapter name, and
|
|
||||||
/// mmmm is the parameter name).</param>
|
|
||||||
/// <param name="fn" type="Function">The function to call, which adapts the values from the HTML
|
|
||||||
/// attributes into jQuery Validate rules and/or messages.</param>
|
|
||||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
|
||||||
if (!fn) { // Called with no params, just a function
|
|
||||||
fn = params;
|
|
||||||
params = [];
|
|
||||||
}
|
|
||||||
this.push({ name: adapterName, params: params, adapt: fn });
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
|
|
||||||
adapters.addBool = function (adapterName, ruleName) {
|
|
||||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where
|
|
||||||
/// the jQuery Validate validation rule has no parameter values.</summary>
|
|
||||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
|
||||||
/// in the data-val-nnnn HTML attribute (where nnnn is the adapter name).</param>
|
|
||||||
/// <param name="ruleName" type="String" optional="true">[Optional] The name of the jQuery Validate rule. If not provided, the value
|
|
||||||
/// of adapterName will be used instead.</param>
|
|
||||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
|
||||||
return this.add(adapterName, function (options) {
|
|
||||||
setValidationValues(options, ruleName || adapterName, true);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
adapters.addMinMax = function (adapterName, minRuleName, maxRuleName, minMaxRuleName, minAttribute, maxAttribute) {
|
|
||||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where
|
|
||||||
/// the jQuery Validate validation has three potential rules (one for min-only, one for max-only, and
|
|
||||||
/// one for min-and-max). The HTML parameters are expected to be named -min and -max.</summary>
|
|
||||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
|
||||||
/// in the data-val-nnnn HTML attribute (where nnnn is the adapter name).</param>
|
|
||||||
/// <param name="minRuleName" type="String">The name of the jQuery Validate rule to be used when you only
|
|
||||||
/// have a minimum value.</param>
|
|
||||||
/// <param name="maxRuleName" type="String">The name of the jQuery Validate rule to be used when you only
|
|
||||||
/// have a maximum value.</param>
|
|
||||||
/// <param name="minMaxRuleName" type="String">The name of the jQuery Validate rule to be used when you
|
|
||||||
/// have both a minimum and maximum value.</param>
|
|
||||||
/// <param name="minAttribute" type="String" optional="true">[Optional] The name of the HTML attribute that
|
|
||||||
/// contains the minimum value. The default is "min".</param>
|
|
||||||
/// <param name="maxAttribute" type="String" optional="true">[Optional] The name of the HTML attribute that
|
|
||||||
/// contains the maximum value. The default is "max".</param>
|
|
||||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
|
||||||
return this.add(adapterName, [minAttribute || "min", maxAttribute || "max"], function (options) {
|
|
||||||
var min = options.params.min,
|
|
||||||
max = options.params.max;
|
|
||||||
|
|
||||||
if (min && max) {
|
|
||||||
setValidationValues(options, minMaxRuleName, [min, max]);
|
|
||||||
}
|
|
||||||
else if (min) {
|
|
||||||
setValidationValues(options, minRuleName, min);
|
|
||||||
}
|
|
||||||
else if (max) {
|
|
||||||
setValidationValues(options, maxRuleName, max);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
adapters.addSingleVal = function (adapterName, attribute, ruleName) {
|
|
||||||
/// <summary>Adds a new adapter to convert unobtrusive HTML into a jQuery Validate validation, where
|
|
||||||
/// the jQuery Validate validation rule has a single value.</summary>
|
|
||||||
/// <param name="adapterName" type="String">The name of the adapter to be added. This matches the name used
|
|
||||||
/// in the data-val-nnnn HTML attribute(where nnnn is the adapter name).</param>
|
|
||||||
/// <param name="attribute" type="String">[Optional] The name of the HTML attribute that contains the value.
|
|
||||||
/// The default is "val".</param>
|
|
||||||
/// <param name="ruleName" type="String" optional="true">[Optional] The name of the jQuery Validate rule. If not provided, the value
|
|
||||||
/// of adapterName will be used instead.</param>
|
|
||||||
/// <returns type="jQuery.validator.unobtrusive.adapters" />
|
|
||||||
return this.add(adapterName, [attribute || "val"], function (options) {
|
|
||||||
setValidationValues(options, ruleName || adapterName, options.params[attribute]);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
$jQval.addMethod("__dummy__", function (value, element, params) {
|
|
||||||
return true;
|
|
||||||
});
|
|
||||||
|
|
||||||
$jQval.addMethod("regex", function (value, element, params) {
|
|
||||||
var match;
|
|
||||||
if (this.optional(element)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
match = new RegExp(params).exec(value);
|
|
||||||
return (match && (match.index === 0) && (match[0].length === value.length));
|
|
||||||
});
|
|
||||||
|
|
||||||
$jQval.addMethod("nonalphamin", function (value, element, nonalphamin) {
|
|
||||||
var match;
|
|
||||||
if (nonalphamin) {
|
|
||||||
match = value.match(/\W/g);
|
|
||||||
match = match && match.length >= nonalphamin;
|
|
||||||
}
|
|
||||||
return match;
|
|
||||||
});
|
|
||||||
|
|
||||||
if ($jQval.methods.extension) {
|
|
||||||
adapters.addSingleVal("accept", "mimtype");
|
|
||||||
adapters.addSingleVal("extension", "extension");
|
|
||||||
} else {
|
|
||||||
// for backward compatibility, when the 'extension' validation method does not exist, such as with versions
|
|
||||||
// of JQuery Validation plugin prior to 1.10, we should use the 'accept' method for
|
|
||||||
// validating the extension, and ignore mime-type validations as they are not supported.
|
|
||||||
adapters.addSingleVal("extension", "extension", "accept");
|
|
||||||
}
|
|
||||||
|
|
||||||
adapters.addSingleVal("regex", "pattern");
|
|
||||||
adapters.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url");
|
|
||||||
adapters.addMinMax("length", "minlength", "maxlength", "rangelength").addMinMax("range", "min", "max", "range");
|
|
||||||
adapters.addMinMax("minlength", "minlength").addMinMax("maxlength", "minlength", "maxlength");
|
|
||||||
adapters.add("equalto", ["other"], function (options) {
|
|
||||||
var prefix = getModelPrefix(options.element.name),
|
|
||||||
other = options.params.other,
|
|
||||||
fullOtherName = appendModelPrefix(other, prefix),
|
|
||||||
element = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(fullOtherName) + "']")[0];
|
|
||||||
|
|
||||||
setValidationValues(options, "equalTo", element);
|
|
||||||
});
|
|
||||||
adapters.add("required", function (options) {
|
|
||||||
// jQuery Validate equates "required" with "mandatory" for checkbox elements
|
|
||||||
if (options.element.tagName.toUpperCase() !== "INPUT" || options.element.type.toUpperCase() !== "CHECKBOX") {
|
|
||||||
setValidationValues(options, "required", true);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
adapters.add("remote", ["url", "type", "additionalfields"], function (options) {
|
|
||||||
var value = {
|
|
||||||
url: options.params.url,
|
|
||||||
type: options.params.type || "GET",
|
|
||||||
data: {}
|
|
||||||
},
|
|
||||||
prefix = getModelPrefix(options.element.name);
|
|
||||||
|
|
||||||
$.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) {
|
|
||||||
var paramName = appendModelPrefix(fieldName, prefix);
|
|
||||||
value.data[paramName] = function () {
|
|
||||||
var field = $(options.form).find(":input").filter("[name='" + escapeAttributeValue(paramName) + "']");
|
|
||||||
// For checkboxes and radio buttons, only pick up values from checked fields.
|
|
||||||
if (field.is(":checkbox")) {
|
|
||||||
return field.filter(":checked").val() || field.filter(":hidden").val() || '';
|
|
||||||
}
|
|
||||||
else if (field.is(":radio")) {
|
|
||||||
return field.filter(":checked").val() || '';
|
|
||||||
}
|
|
||||||
return field.val();
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
setValidationValues(options, "remote", value);
|
|
||||||
});
|
|
||||||
adapters.add("password", ["min", "nonalphamin", "regex"], function (options) {
|
|
||||||
if (options.params.min) {
|
|
||||||
setValidationValues(options, "minlength", options.params.min);
|
|
||||||
}
|
|
||||||
if (options.params.nonalphamin) {
|
|
||||||
setValidationValues(options, "nonalphamin", options.params.nonalphamin);
|
|
||||||
}
|
|
||||||
if (options.params.regex) {
|
|
||||||
setValidationValues(options, "regex", options.params.regex);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
adapters.add("fileextensions", ["extensions"], function (options) {
|
|
||||||
setValidationValues(options, "extension", options.params.extensions);
|
|
||||||
});
|
|
||||||
|
|
||||||
$(function () {
|
|
||||||
$jQval.unobtrusive.parse(document);
|
|
||||||
});
|
|
||||||
|
|
||||||
return $jQval.unobtrusive;
|
|
||||||
}));
|
|
||||||
File diff suppressed because one or more lines are too long
399
src/Web/wwwroot/lib/jquery/core.js
vendored
399
src/Web/wwwroot/lib/jquery/core.js
vendored
@@ -1,399 +0,0 @@
|
|||||||
/* global Symbol */
|
|
||||||
// Defining this global in .eslintrc.json would create a danger of using the global
|
|
||||||
// unguarded in another place, it seems safer to define global only for this module
|
|
||||||
|
|
||||||
define( [
|
|
||||||
"./var/arr",
|
|
||||||
"./var/document",
|
|
||||||
"./var/getProto",
|
|
||||||
"./var/slice",
|
|
||||||
"./var/concat",
|
|
||||||
"./var/push",
|
|
||||||
"./var/indexOf",
|
|
||||||
"./var/class2type",
|
|
||||||
"./var/toString",
|
|
||||||
"./var/hasOwn",
|
|
||||||
"./var/fnToString",
|
|
||||||
"./var/ObjectFunctionString",
|
|
||||||
"./var/support",
|
|
||||||
"./var/isFunction",
|
|
||||||
"./var/isWindow",
|
|
||||||
"./core/DOMEval",
|
|
||||||
"./core/toType"
|
|
||||||
], function( arr, document, getProto, slice, concat, push, indexOf,
|
|
||||||
class2type, toString, hasOwn, fnToString, ObjectFunctionString,
|
|
||||||
support, isFunction, isWindow, DOMEval, toType ) {
|
|
||||||
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var
|
|
||||||
version = "3.3.1",
|
|
||||||
|
|
||||||
// Define a local copy of jQuery
|
|
||||||
jQuery = function( selector, context ) {
|
|
||||||
|
|
||||||
// The jQuery object is actually just the init constructor 'enhanced'
|
|
||||||
// Need init if jQuery is called (just allow error to be thrown if not included)
|
|
||||||
return new jQuery.fn.init( selector, context );
|
|
||||||
},
|
|
||||||
|
|
||||||
// Support: Android <=4.0 only
|
|
||||||
// Make sure we trim BOM and NBSP
|
|
||||||
rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
|
|
||||||
|
|
||||||
jQuery.fn = jQuery.prototype = {
|
|
||||||
|
|
||||||
// The current version of jQuery being used
|
|
||||||
jquery: version,
|
|
||||||
|
|
||||||
constructor: jQuery,
|
|
||||||
|
|
||||||
// The default length of a jQuery object is 0
|
|
||||||
length: 0,
|
|
||||||
|
|
||||||
toArray: function() {
|
|
||||||
return slice.call( this );
|
|
||||||
},
|
|
||||||
|
|
||||||
// Get the Nth element in the matched element set OR
|
|
||||||
// Get the whole matched element set as a clean array
|
|
||||||
get: function( num ) {
|
|
||||||
|
|
||||||
// Return all the elements in a clean array
|
|
||||||
if ( num == null ) {
|
|
||||||
return slice.call( this );
|
|
||||||
}
|
|
||||||
|
|
||||||
// Return just the one element from the set
|
|
||||||
return num < 0 ? this[ num + this.length ] : this[ num ];
|
|
||||||
},
|
|
||||||
|
|
||||||
// Take an array of elements and push it onto the stack
|
|
||||||
// (returning the new matched element set)
|
|
||||||
pushStack: function( elems ) {
|
|
||||||
|
|
||||||
// Build a new jQuery matched element set
|
|
||||||
var ret = jQuery.merge( this.constructor(), elems );
|
|
||||||
|
|
||||||
// Add the old object onto the stack (as a reference)
|
|
||||||
ret.prevObject = this;
|
|
||||||
|
|
||||||
// Return the newly-formed element set
|
|
||||||
return ret;
|
|
||||||
},
|
|
||||||
|
|
||||||
// Execute a callback for every element in the matched set.
|
|
||||||
each: function( callback ) {
|
|
||||||
return jQuery.each( this, callback );
|
|
||||||
},
|
|
||||||
|
|
||||||
map: function( callback ) {
|
|
||||||
return this.pushStack( jQuery.map( this, function( elem, i ) {
|
|
||||||
return callback.call( elem, i, elem );
|
|
||||||
} ) );
|
|
||||||
},
|
|
||||||
|
|
||||||
slice: function() {
|
|
||||||
return this.pushStack( slice.apply( this, arguments ) );
|
|
||||||
},
|
|
||||||
|
|
||||||
first: function() {
|
|
||||||
return this.eq( 0 );
|
|
||||||
},
|
|
||||||
|
|
||||||
last: function() {
|
|
||||||
return this.eq( -1 );
|
|
||||||
},
|
|
||||||
|
|
||||||
eq: function( i ) {
|
|
||||||
var len = this.length,
|
|
||||||
j = +i + ( i < 0 ? len : 0 );
|
|
||||||
return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
|
|
||||||
},
|
|
||||||
|
|
||||||
end: function() {
|
|
||||||
return this.prevObject || this.constructor();
|
|
||||||
},
|
|
||||||
|
|
||||||
// For internal use only.
|
|
||||||
// Behaves like an Array's method, not like a jQuery method.
|
|
||||||
push: push,
|
|
||||||
sort: arr.sort,
|
|
||||||
splice: arr.splice
|
|
||||||
};
|
|
||||||
|
|
||||||
jQuery.extend = jQuery.fn.extend = function() {
|
|
||||||
var options, name, src, copy, copyIsArray, clone,
|
|
||||||
target = arguments[ 0 ] || {},
|
|
||||||
i = 1,
|
|
||||||
length = arguments.length,
|
|
||||||
deep = false;
|
|
||||||
|
|
||||||
// Handle a deep copy situation
|
|
||||||
if ( typeof target === "boolean" ) {
|
|
||||||
deep = target;
|
|
||||||
|
|
||||||
// Skip the boolean and the target
|
|
||||||
target = arguments[ i ] || {};
|
|
||||||
i++;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle case when target is a string or something (possible in deep copy)
|
|
||||||
if ( typeof target !== "object" && !isFunction( target ) ) {
|
|
||||||
target = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
// Extend jQuery itself if only one argument is passed
|
|
||||||
if ( i === length ) {
|
|
||||||
target = this;
|
|
||||||
i--;
|
|
||||||
}
|
|
||||||
|
|
||||||
for ( ; i < length; i++ ) {
|
|
||||||
|
|
||||||
// Only deal with non-null/undefined values
|
|
||||||
if ( ( options = arguments[ i ] ) != null ) {
|
|
||||||
|
|
||||||
// Extend the base object
|
|
||||||
for ( name in options ) {
|
|
||||||
src = target[ name ];
|
|
||||||
copy = options[ name ];
|
|
||||||
|
|
||||||
// Prevent never-ending loop
|
|
||||||
if ( target === copy ) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Recurse if we're merging plain objects or arrays
|
|
||||||
if ( deep && copy && ( jQuery.isPlainObject( copy ) ||
|
|
||||||
( copyIsArray = Array.isArray( copy ) ) ) ) {
|
|
||||||
|
|
||||||
if ( copyIsArray ) {
|
|
||||||
copyIsArray = false;
|
|
||||||
clone = src && Array.isArray( src ) ? src : [];
|
|
||||||
|
|
||||||
} else {
|
|
||||||
clone = src && jQuery.isPlainObject( src ) ? src : {};
|
|
||||||
}
|
|
||||||
|
|
||||||
// Never move original objects, clone them
|
|
||||||
target[ name ] = jQuery.extend( deep, clone, copy );
|
|
||||||
|
|
||||||
// Don't bring in undefined values
|
|
||||||
} else if ( copy !== undefined ) {
|
|
||||||
target[ name ] = copy;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Return the modified object
|
|
||||||
return target;
|
|
||||||
};
|
|
||||||
|
|
||||||
jQuery.extend( {
|
|
||||||
|
|
||||||
// Unique for each copy of jQuery on the page
|
|
||||||
expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ),
|
|
||||||
|
|
||||||
// Assume jQuery is ready without the ready module
|
|
||||||
isReady: true,
|
|
||||||
|
|
||||||
error: function( msg ) {
|
|
||||||
throw new Error( msg );
|
|
||||||
},
|
|
||||||
|
|
||||||
noop: function() {},
|
|
||||||
|
|
||||||
isPlainObject: function( obj ) {
|
|
||||||
var proto, Ctor;
|
|
||||||
|
|
||||||
// Detect obvious negatives
|
|
||||||
// Use toString instead of jQuery.type to catch host objects
|
|
||||||
if ( !obj || toString.call( obj ) !== "[object Object]" ) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
proto = getProto( obj );
|
|
||||||
|
|
||||||
// Objects with no prototype (e.g., `Object.create( null )`) are plain
|
|
||||||
if ( !proto ) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Objects with prototype are plain iff they were constructed by a global Object function
|
|
||||||
Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor;
|
|
||||||
return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString;
|
|
||||||
},
|
|
||||||
|
|
||||||
isEmptyObject: function( obj ) {
|
|
||||||
|
|
||||||
/* eslint-disable no-unused-vars */
|
|
||||||
// See https://github.com/eslint/eslint/issues/6125
|
|
||||||
var name;
|
|
||||||
|
|
||||||
for ( name in obj ) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
},
|
|
||||||
|
|
||||||
// Evaluates a script in a global context
|
|
||||||
globalEval: function( code ) {
|
|
||||||
DOMEval( code );
|
|
||||||
},
|
|
||||||
|
|
||||||
each: function( obj, callback ) {
|
|
||||||
var length, i = 0;
|
|
||||||
|
|
||||||
if ( isArrayLike( obj ) ) {
|
|
||||||
length = obj.length;
|
|
||||||
for ( ; i < length; i++ ) {
|
|
||||||
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
for ( i in obj ) {
|
|
||||||
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return obj;
|
|
||||||
},
|
|
||||||
|
|
||||||
// Support: Android <=4.0 only
|
|
||||||
trim: function( text ) {
|
|
||||||
return text == null ?
|
|
||||||
"" :
|
|
||||||
( text + "" ).replace( rtrim, "" );
|
|
||||||
},
|
|
||||||
|
|
||||||
// results is for internal usage only
|
|
||||||
makeArray: function( arr, results ) {
|
|
||||||
var ret = results || [];
|
|
||||||
|
|
||||||
if ( arr != null ) {
|
|
||||||
if ( isArrayLike( Object( arr ) ) ) {
|
|
||||||
jQuery.merge( ret,
|
|
||||||
typeof arr === "string" ?
|
|
||||||
[ arr ] : arr
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
push.call( ret, arr );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
},
|
|
||||||
|
|
||||||
inArray: function( elem, arr, i ) {
|
|
||||||
return arr == null ? -1 : indexOf.call( arr, elem, i );
|
|
||||||
},
|
|
||||||
|
|
||||||
// Support: Android <=4.0 only, PhantomJS 1 only
|
|
||||||
// push.apply(_, arraylike) throws on ancient WebKit
|
|
||||||
merge: function( first, second ) {
|
|
||||||
var len = +second.length,
|
|
||||||
j = 0,
|
|
||||||
i = first.length;
|
|
||||||
|
|
||||||
for ( ; j < len; j++ ) {
|
|
||||||
first[ i++ ] = second[ j ];
|
|
||||||
}
|
|
||||||
|
|
||||||
first.length = i;
|
|
||||||
|
|
||||||
return first;
|
|
||||||
},
|
|
||||||
|
|
||||||
grep: function( elems, callback, invert ) {
|
|
||||||
var callbackInverse,
|
|
||||||
matches = [],
|
|
||||||
i = 0,
|
|
||||||
length = elems.length,
|
|
||||||
callbackExpect = !invert;
|
|
||||||
|
|
||||||
// Go through the array, only saving the items
|
|
||||||
// that pass the validator function
|
|
||||||
for ( ; i < length; i++ ) {
|
|
||||||
callbackInverse = !callback( elems[ i ], i );
|
|
||||||
if ( callbackInverse !== callbackExpect ) {
|
|
||||||
matches.push( elems[ i ] );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return matches;
|
|
||||||
},
|
|
||||||
|
|
||||||
// arg is for internal usage only
|
|
||||||
map: function( elems, callback, arg ) {
|
|
||||||
var length, value,
|
|
||||||
i = 0,
|
|
||||||
ret = [];
|
|
||||||
|
|
||||||
// Go through the array, translating each of the items to their new values
|
|
||||||
if ( isArrayLike( elems ) ) {
|
|
||||||
length = elems.length;
|
|
||||||
for ( ; i < length; i++ ) {
|
|
||||||
value = callback( elems[ i ], i, arg );
|
|
||||||
|
|
||||||
if ( value != null ) {
|
|
||||||
ret.push( value );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Go through every key on the object,
|
|
||||||
} else {
|
|
||||||
for ( i in elems ) {
|
|
||||||
value = callback( elems[ i ], i, arg );
|
|
||||||
|
|
||||||
if ( value != null ) {
|
|
||||||
ret.push( value );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Flatten any nested arrays
|
|
||||||
return concat.apply( [], ret );
|
|
||||||
},
|
|
||||||
|
|
||||||
// A global GUID counter for objects
|
|
||||||
guid: 1,
|
|
||||||
|
|
||||||
// jQuery.support is not used in Core but other projects attach their
|
|
||||||
// properties to it so it needs to exist.
|
|
||||||
support: support
|
|
||||||
} );
|
|
||||||
|
|
||||||
if ( typeof Symbol === "function" ) {
|
|
||||||
jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ];
|
|
||||||
}
|
|
||||||
|
|
||||||
// Populate the class2type map
|
|
||||||
jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
|
|
||||||
function( i, name ) {
|
|
||||||
class2type[ "[object " + name + "]" ] = name.toLowerCase();
|
|
||||||
} );
|
|
||||||
|
|
||||||
function isArrayLike( obj ) {
|
|
||||||
|
|
||||||
// Support: real iOS 8.2 only (not reproducible in simulator)
|
|
||||||
// `in` check used to prevent JIT error (gh-2145)
|
|
||||||
// hasOwn isn't used here due to false negatives
|
|
||||||
// regarding Nodelist length in IE
|
|
||||||
var length = !!obj && "length" in obj && obj.length,
|
|
||||||
type = toType( obj );
|
|
||||||
|
|
||||||
if ( isFunction( obj ) || isWindow( obj ) ) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return type === "array" || length === 0 ||
|
|
||||||
typeof length === "number" && length > 0 && ( length - 1 ) in obj;
|
|
||||||
}
|
|
||||||
|
|
||||||
return jQuery;
|
|
||||||
} );
|
|
||||||
10364
src/Web/wwwroot/lib/jquery/jquery.js
vendored
10364
src/Web/wwwroot/lib/jquery/jquery.js
vendored
File diff suppressed because it is too large
Load Diff
2
src/Web/wwwroot/lib/jquery/jquery.min.js
vendored
2
src/Web/wwwroot/lib/jquery/jquery.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,228 +0,0 @@
|
|||||||
.toast-title {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
.toast-message {
|
|
||||||
-ms-word-wrap: break-word;
|
|
||||||
word-wrap: break-word;
|
|
||||||
}
|
|
||||||
.toast-message a,
|
|
||||||
.toast-message label {
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
|
||||||
.toast-message a:hover {
|
|
||||||
color: #CCCCCC;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
.toast-close-button {
|
|
||||||
position: relative;
|
|
||||||
right: -0.3em;
|
|
||||||
top: -0.3em;
|
|
||||||
float: right;
|
|
||||||
font-size: 20px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #FFFFFF;
|
|
||||||
-webkit-text-shadow: 0 1px 0 #ffffff;
|
|
||||||
text-shadow: 0 1px 0 #ffffff;
|
|
||||||
opacity: 0.8;
|
|
||||||
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
|
|
||||||
filter: alpha(opacity=80);
|
|
||||||
line-height: 1;
|
|
||||||
}
|
|
||||||
.toast-close-button:hover,
|
|
||||||
.toast-close-button:focus {
|
|
||||||
color: #000000;
|
|
||||||
text-decoration: none;
|
|
||||||
cursor: pointer;
|
|
||||||
opacity: 0.4;
|
|
||||||
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
|
|
||||||
filter: alpha(opacity=40);
|
|
||||||
}
|
|
||||||
.rtl .toast-close-button {
|
|
||||||
left: -0.3em;
|
|
||||||
float: left;
|
|
||||||
right: 0.3em;
|
|
||||||
}
|
|
||||||
/*Additional properties for button version
|
|
||||||
iOS requires the button element instead of an anchor tag.
|
|
||||||
If you want the anchor version, it requires `href="#"`.*/
|
|
||||||
button.toast-close-button {
|
|
||||||
padding: 0;
|
|
||||||
cursor: pointer;
|
|
||||||
background: transparent;
|
|
||||||
border: 0;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
}
|
|
||||||
.toast-top-center {
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.toast-bottom-center {
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.toast-top-full-width {
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.toast-bottom-full-width {
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.toast-top-left {
|
|
||||||
top: 12px;
|
|
||||||
left: 12px;
|
|
||||||
}
|
|
||||||
.toast-top-right {
|
|
||||||
top: 12px;
|
|
||||||
right: 12px;
|
|
||||||
}
|
|
||||||
.toast-bottom-right {
|
|
||||||
right: 12px;
|
|
||||||
bottom: 12px;
|
|
||||||
}
|
|
||||||
.toast-bottom-left {
|
|
||||||
bottom: 12px;
|
|
||||||
left: 12px;
|
|
||||||
}
|
|
||||||
#toast-container {
|
|
||||||
position: fixed;
|
|
||||||
z-index: 999999;
|
|
||||||
pointer-events: none;
|
|
||||||
/*overrides*/
|
|
||||||
}
|
|
||||||
#toast-container * {
|
|
||||||
-moz-box-sizing: border-box;
|
|
||||||
-webkit-box-sizing: border-box;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
#toast-container > div {
|
|
||||||
position: relative;
|
|
||||||
pointer-events: auto;
|
|
||||||
overflow: hidden;
|
|
||||||
margin: 0 0 6px;
|
|
||||||
padding: 15px 15px 15px 50px;
|
|
||||||
width: 300px;
|
|
||||||
-moz-border-radius: 3px 3px 3px 3px;
|
|
||||||
-webkit-border-radius: 3px 3px 3px 3px;
|
|
||||||
border-radius: 3px 3px 3px 3px;
|
|
||||||
background-position: 15px center;
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
-moz-box-shadow: 0 0 12px #999999;
|
|
||||||
-webkit-box-shadow: 0 0 12px #999999;
|
|
||||||
box-shadow: 0 0 12px #999999;
|
|
||||||
color: #FFFFFF;
|
|
||||||
opacity: 0.8;
|
|
||||||
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
|
|
||||||
filter: alpha(opacity=80);
|
|
||||||
}
|
|
||||||
#toast-container > div.rtl {
|
|
||||||
direction: rtl;
|
|
||||||
padding: 15px 50px 15px 15px;
|
|
||||||
background-position: right 15px center;
|
|
||||||
}
|
|
||||||
#toast-container > div:hover {
|
|
||||||
-moz-box-shadow: 0 0 12px #000000;
|
|
||||||
-webkit-box-shadow: 0 0 12px #000000;
|
|
||||||
box-shadow: 0 0 12px #000000;
|
|
||||||
opacity: 1;
|
|
||||||
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
|
|
||||||
filter: alpha(opacity=100);
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
#toast-container > .toast-info {
|
|
||||||
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important;
|
|
||||||
}
|
|
||||||
#toast-container > .toast-error {
|
|
||||||
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important;
|
|
||||||
}
|
|
||||||
#toast-container > .toast-success {
|
|
||||||
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important;
|
|
||||||
}
|
|
||||||
#toast-container > .toast-warning {
|
|
||||||
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important;
|
|
||||||
}
|
|
||||||
#toast-container.toast-top-center > div,
|
|
||||||
#toast-container.toast-bottom-center > div {
|
|
||||||
width: 300px;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
}
|
|
||||||
#toast-container.toast-top-full-width > div,
|
|
||||||
#toast-container.toast-bottom-full-width > div {
|
|
||||||
width: 96%;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
}
|
|
||||||
.toast {
|
|
||||||
background-color: #030303;
|
|
||||||
}
|
|
||||||
.toast-success {
|
|
||||||
background-color: #51A351;
|
|
||||||
}
|
|
||||||
.toast-error {
|
|
||||||
background-color: #BD362F;
|
|
||||||
}
|
|
||||||
.toast-info {
|
|
||||||
background-color: #2F96B4;
|
|
||||||
}
|
|
||||||
.toast-warning {
|
|
||||||
background-color: #F89406;
|
|
||||||
}
|
|
||||||
.toast-progress {
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
bottom: 0;
|
|
||||||
height: 4px;
|
|
||||||
background-color: #000000;
|
|
||||||
opacity: 0.4;
|
|
||||||
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
|
|
||||||
filter: alpha(opacity=40);
|
|
||||||
}
|
|
||||||
/*Responsive Design*/
|
|
||||||
@media all and (max-width: 240px) {
|
|
||||||
#toast-container > div {
|
|
||||||
padding: 8px 8px 8px 50px;
|
|
||||||
width: 11em;
|
|
||||||
}
|
|
||||||
#toast-container > div.rtl {
|
|
||||||
padding: 8px 50px 8px 8px;
|
|
||||||
}
|
|
||||||
#toast-container .toast-close-button {
|
|
||||||
right: -0.2em;
|
|
||||||
top: -0.2em;
|
|
||||||
}
|
|
||||||
#toast-container .rtl .toast-close-button {
|
|
||||||
left: -0.2em;
|
|
||||||
right: 0.2em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@media all and (min-width: 241px) and (max-width: 480px) {
|
|
||||||
#toast-container > div {
|
|
||||||
padding: 8px 8px 8px 50px;
|
|
||||||
width: 18em;
|
|
||||||
}
|
|
||||||
#toast-container > div.rtl {
|
|
||||||
padding: 8px 50px 8px 8px;
|
|
||||||
}
|
|
||||||
#toast-container .toast-close-button {
|
|
||||||
right: -0.2em;
|
|
||||||
top: -0.2em;
|
|
||||||
}
|
|
||||||
#toast-container .rtl .toast-close-button {
|
|
||||||
left: -0.2em;
|
|
||||||
right: 0.2em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@media all and (min-width: 481px) and (max-width: 768px) {
|
|
||||||
#toast-container > div {
|
|
||||||
padding: 15px 15px 15px 50px;
|
|
||||||
width: 25em;
|
|
||||||
}
|
|
||||||
#toast-container > div.rtl {
|
|
||||||
padding: 15px 50px 15px 15px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
File diff suppressed because one or more lines are too long
1
src/Web/wwwroot/lib/toastr/toastr.min.css
vendored
1
src/Web/wwwroot/lib/toastr/toastr.min.css
vendored
File diff suppressed because one or more lines are too long
2
src/Web/wwwroot/lib/toastr/toastr.min.js
vendored
2
src/Web/wwwroot/lib/toastr/toastr.min.js
vendored
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user