update dependencies: jQuery, jQuery UI, jQuery Validate, jQuery Validate Unobtrusive, SignalR
@@ -31,7 +31,7 @@
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.AspNet.SignalR.Core" publicKeyToken="31bf3856ad364e35" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.1.1.0" newVersion="2.1.1.0" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.4.3.0" newVersion="2.4.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
/* NUGET: BEGIN LICENSE TEXT
|
||||
*
|
||||
* Microsoft grants you the right to use these script files for the sole
|
||||
* purpose of either: (i) interacting through your browser with the Microsoft
|
||||
* website or online service, subject to the applicable licensing or use
|
||||
* terms; or (ii) using the files as included with a Microsoft product subject
|
||||
* to that product's license terms. Microsoft reserves all other rights to the
|
||||
* files not expressly granted by Microsoft, whether by implication, estoppel
|
||||
* or otherwise. Insofar as a script file is dual licensed under GPL,
|
||||
* Microsoft neither took the code under GPL nor distributes it thereunder but
|
||||
* under the terms set out in this paragraph. All notices and licenses
|
||||
* below are for informational purposes only.
|
||||
*
|
||||
* NUGET: END LICENSE TEXT */
|
||||
/*!
|
||||
** Unobtrusive validation support library for jQuery and jQuery Validate
|
||||
** Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
/**
|
||||
* @license
|
||||
* Unobtrusive validation support library for jQuery and jQuery Validate
|
||||
* Copyright (c) .NET Foundation. All rights reserved.
|
||||
* Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
* @version <placeholder>
|
||||
*/
|
||||
|
||||
/*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 ($) {
|
||||
(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";
|
||||
@@ -55,7 +55,7 @@
|
||||
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;
|
||||
replace = replaceAttrValue ? JSON.parse(replaceAttrValue) !== false : null;
|
||||
|
||||
container.removeClass("field-validation-valid").addClass("field-validation-error");
|
||||
error.data("unobtrusiveContainer", container);
|
||||
@@ -84,11 +84,12 @@
|
||||
}
|
||||
|
||||
function onSuccess(error) { // 'this' is the form element
|
||||
var container = error.data("unobtrusiveContainer"),
|
||||
replaceAttrValue = container.attr("data-valmsg-replace"),
|
||||
replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) : null;
|
||||
var container = error.data("unobtrusiveContainer");
|
||||
|
||||
if (container) {
|
||||
var replaceAttrValue = container.attr("data-valmsg-replace"),
|
||||
replace = replaceAttrValue ? JSON.parse(replaceAttrValue) : null;
|
||||
|
||||
container.addClass("field-validation-valid").removeClass("field-validation-error");
|
||||
error.removeData("unobtrusiveContainer");
|
||||
|
||||
@@ -99,8 +100,19 @@
|
||||
}
|
||||
|
||||
function onReset(event) { // 'this' is the form element
|
||||
var $form = $(this);
|
||||
$form.data("validator").resetForm();
|
||||
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");
|
||||
@@ -109,29 +121,43 @@
|
||||
.removeClass("field-validation-error")
|
||||
.removeData("unobtrusiveContainer")
|
||||
.find(">*") // If we were using valmsg-replace, get the underlying error
|
||||
.removeData("unobtrusiveContainer");
|
||||
.removeData("unobtrusiveContainer");
|
||||
}
|
||||
|
||||
function validationInfo(form) {
|
||||
var $form = $(form),
|
||||
result = $form.data(data_validation),
|
||||
onResetProxy = $.proxy(onReset, form);
|
||||
onResetProxy = $.proxy(onReset, form),
|
||||
defaultOptions = $jQval.unobtrusive.options || {},
|
||||
execInContext = function (name, args) {
|
||||
var func = defaultOptions[name];
|
||||
func && typeof func === "function" && func.apply(form, args);
|
||||
};
|
||||
|
||||
if (!result) {
|
||||
result = {
|
||||
options: { // options structure passed to jQuery Validate's validate() method
|
||||
errorClass: "input-validation-error",
|
||||
errorElement: "span",
|
||||
errorPlacement: $.proxy(onError, form),
|
||||
invalidHandler: $.proxy(onErrors, form),
|
||||
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: $.proxy(onSuccess, form)
|
||||
success: function () {
|
||||
onSuccess.apply(form, arguments);
|
||||
execInContext("success", arguments);
|
||||
}
|
||||
},
|
||||
attachValidation: function () {
|
||||
$form
|
||||
.unbind("reset." + data_validation, onResetProxy)
|
||||
.bind("reset." + data_validation, onResetProxy)
|
||||
.off("reset." + data_validation, onResetProxy)
|
||||
.on("reset." + data_validation, onResetProxy)
|
||||
.validate(this.options);
|
||||
},
|
||||
validate: function () { // a validation function that is called by unobtrusive Ajax
|
||||
@@ -206,15 +232,17 @@
|
||||
/// attribute values.
|
||||
/// </summary>
|
||||
/// <param name="selector" type="String">Any valid jQuery selector.</param>
|
||||
var $forms = $(selector)
|
||||
.parents("form")
|
||||
.andSelf()
|
||||
.add($(selector).find("form"))
|
||||
.filter("form");
|
||||
|
||||
// :input is a psuedoselector provided by jQuery which selects input and input-like elements
|
||||
// combining :input with other selectors significantly decreases performance.
|
||||
$(selector).find(":input").filter("[data-val=true]").each(function () {
|
||||
// $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);
|
||||
});
|
||||
|
||||
@@ -370,7 +398,15 @@
|
||||
$.each(splitAndTrim(options.params.additionalfields || options.element.name), function (i, fieldName) {
|
||||
var paramName = appendModelPrefix(fieldName, prefix);
|
||||
value.data[paramName] = function () {
|
||||
return $(options.form).find(":input").filter("[name='" + escapeAttributeValue(paramName) + "']").val();
|
||||
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();
|
||||
};
|
||||
});
|
||||
|
||||
@@ -387,8 +423,13 @@
|
||||
setValidationValues(options, "regex", options.params.regex);
|
||||
}
|
||||
});
|
||||
adapters.add("fileextensions", ["extensions"], function (options) {
|
||||
setValidationValues(options, "extension", options.params.extensions);
|
||||
});
|
||||
|
||||
$(function () {
|
||||
$jQval.unobtrusive.parse(document);
|
||||
});
|
||||
}(jQuery));
|
||||
|
||||
return $jQval.unobtrusive;
|
||||
}));
|
||||
|
||||
@@ -95,16 +95,23 @@ DiscoExpressionEditor.prototype = {
|
||||
this.expressionHtml = this.parseExpression(this.expression, this.expressionException);
|
||||
this.hostContainer.html(this.expressionHtml);
|
||||
},
|
||||
validateExpression: function () {
|
||||
validateExpression: async function () {
|
||||
var that = this;
|
||||
var e = that.getExpression();
|
||||
$.getJSON(that.validateUrl, { Expression: e }, function (response, result) {
|
||||
that.setException(response);
|
||||
that.renderExpression();
|
||||
|
||||
if (that.expressionValidated)
|
||||
that.expressionValidated(response.ExpressionValid, response);
|
||||
})
|
||||
const body = new FormData();
|
||||
body.append('Expression', e);
|
||||
body.append('__RequestVerificationToken', document.body.dataset.antiforgery);
|
||||
const response = await fetch(that.validateUrl, {
|
||||
method: 'POST',
|
||||
body: body
|
||||
});
|
||||
const result = await response.json();
|
||||
that.setException(result);
|
||||
that.renderExpression();
|
||||
|
||||
if (that.expressionValidated)
|
||||
that.expressionValidated(result.ExpressionValid, result);
|
||||
}
|
||||
}
|
||||
String.prototype.trim = function () {
|
||||
|
||||
@@ -1 +1 @@
|
||||
function DiscoExpressionEditor(n,t,i){this.host=n;this.hostDocument=null;this.hostContainer=null;this.validateUrl=t;this.expression=i?i:"";this.expressionHtml="";this.expressionException=null;this.hostInited=null;this.expressionValidated=null;this.expressionExceptionChanged=null}DiscoExpressionEditor.prototype={hostInit:function(){var n=this,i=function(){n.hostDocument=n.host.contents();n.hostContainer=n.hostDocument.find("body");n.host.focus(function(){n.setException(null);n.renderExpression()});n.hostContainer.bind("paste",function(){setTimeout(function(){n.setExpression(n.hostContainer.text())},50)});n.expression&&n.setExpression(n.expression);n.hostInited&&n.hostInited()},t=function(){n.host.unbind("load",t);n.host.load(i);n.host[0].contentWindow.document.designMode="on"};n.host.load(t)},parseExpression:function(n,t){for(var f,r,u=n.split("\n"),i=0;i<u.length;i++)t&&t.PositionRow==i+1?(f=u[i].trim(),r='<p id="line'+i+'" class="line lineError">',f.length>=t.PositionColumn?(r+=f.substr(0,t.PositionColumn-1),r+='<span class="error">'+f.substr(t.PositionColumn-1,1)+"<\/span>",r+=f.substr(t.PositionColumn)):(r+=f,r+='<span class="error"> <\/span>'),r+="<\/p>",u[i]=r):u[i]='<p id="line'+i+'" class="line">'+u[i].trim()+"<\/p>";return u.join("")},setExpression:function(n){this.expression=n;this.setException(null);this.renderExpression()},getExpression:function(){var n=null;return $("p",this.hostContainer).each(function(){n==null?n=$(this).text():n+="\n"+$(this).text()}),this.expression=n,n},setException:function(n){this.expressionException!==n&&(this.expressionException=n,this.expressionExceptionChanged&&this.expressionExceptionChanged(n))},renderExpression:function(){this.expressionHtml=this.parseExpression(this.expression,this.expressionException);this.hostContainer.html(this.expressionHtml)},validateExpression:function(){var n=this,t=n.getExpression();$.getJSON(n.validateUrl,{Expression:t},function(t){n.setException(t);n.renderExpression();n.expressionValidated&&n.expressionValidated(t.ExpressionValid,t)})}};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};
|
||||
function DiscoExpressionEditor(n,t,i){this.host=n;this.hostDocument=null;this.hostContainer=null;this.validateUrl=t;this.expression=i?i:"";this.expressionHtml="";this.expressionException=null;this.hostInited=null;this.expressionValidated=null;this.expressionExceptionChanged=null}DiscoExpressionEditor.prototype={hostInit:function(){var n=this,i=function(){n.hostDocument=n.host.contents();n.hostContainer=n.hostDocument.find("body");n.host.focus(function(){n.setException(null);n.renderExpression()});n.hostContainer.bind("paste",function(){setTimeout(function(){n.setExpression(n.hostContainer.text())},50)});n.expression&&n.setExpression(n.expression);n.hostInited&&n.hostInited()},t=function(){n.host.unbind("load",t);n.host.load(i);n.host[0].contentWindow.document.designMode="on"};n.host.load(t)},parseExpression:function(n,t){for(var f,r,u=n.split("\n"),i=0;i<u.length;i++)t&&t.PositionRow==i+1?(f=u[i].trim(),r='<p id="line'+i+'" class="line lineError">',f.length>=t.PositionColumn?(r+=f.substr(0,t.PositionColumn-1),r+='<span class="error">'+f.substr(t.PositionColumn-1,1)+"<\/span>",r+=f.substr(t.PositionColumn)):(r+=f,r+='<span class="error"> <\/span>'),r+="<\/p>",u[i]=r):u[i]='<p id="line'+i+'" class="line">'+u[i].trim()+"<\/p>";return u.join("")},setExpression:function(n){this.expression=n;this.setException(null);this.renderExpression()},getExpression:function(){var n=null;return $("p",this.hostContainer).each(function(){n==null?n=$(this).text():n+="\n"+$(this).text()}),this.expression=n,n},setException:function(n){this.expressionException!==n&&(this.expressionException=n,this.expressionExceptionChanged&&this.expressionExceptionChanged(n))},renderExpression:function(){this.expressionHtml=this.parseExpression(this.expression,this.expressionException);this.hostContainer.html(this.expressionHtml)},validateExpression:async function(){var n=this,r=n.getExpression();const t=new FormData;t.append("Expression",r);t.append("__RequestVerificationToken",document.body.dataset.antiforgery);const u=await fetch(n.validateUrl,{method:"POST",body:t}),i=await u.json();n.setException(i);n.renderExpression();n.expressionValidated&&n.expressionValidated(i.ExpressionValid,i)}};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};
|
||||
@@ -475,6 +475,7 @@ span.fancytree-drop-target.fancytree-drop-reject {
|
||||
span.fancytree-node {
|
||||
padding: 1px;
|
||||
border: none;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
span.fancytree-node > span.fancytree-icon {
|
||||
background: none;
|
||||
|
||||
@@ -3,41 +3,46 @@
|
||||
|
||||
// Default Disco Fancytree Styles
|
||||
.fancytree-container {
|
||||
border: none;
|
||||
}
|
||||
border: none;
|
||||
}
|
||||
|
||||
span.fancytree-node {
|
||||
padding: 1px;
|
||||
border: none;
|
||||
}
|
||||
span.fancytree-node {
|
||||
padding: 1px;
|
||||
border: none;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
span.fancytree-node > span.fancytree-icon {
|
||||
background: none;
|
||||
display: inline-block;
|
||||
font-family: FontAwesome;
|
||||
font-size: 1.2em;
|
||||
width: 14px;
|
||||
}
|
||||
span.fancytree-ico-ef > span.fancytree-icon:before{
|
||||
color: @StatusClosed;
|
||||
font-size: 1em;
|
||||
content: "\f07c";
|
||||
}
|
||||
span.fancytree-ico-cf > span.fancytree-icon:before{
|
||||
color: @StatusClosed;
|
||||
font-size: 1em;
|
||||
content: "\f07b";
|
||||
}
|
||||
span.fancytree-ico-c > span.fancytree-icon:before{
|
||||
color: @StatusRemove;
|
||||
content: "\f023";
|
||||
}
|
||||
span.fancytree-ico-c.fancytree-selected > span.fancytree-icon:before{
|
||||
color: @StatusSuccess;
|
||||
content: "\f09c";
|
||||
}
|
||||
span.fancytree-node > span.fancytree-icon {
|
||||
background: none;
|
||||
display: inline-block;
|
||||
font-family: FontAwesome;
|
||||
font-size: 1.2em;
|
||||
width: 14px;
|
||||
}
|
||||
|
||||
span.fancytree-node.fancytree-selected {
|
||||
font-style: normal;
|
||||
background: none;
|
||||
}
|
||||
span.fancytree-ico-ef > span.fancytree-icon:before {
|
||||
color: @StatusClosed;
|
||||
font-size: 1em;
|
||||
content: "\f07c";
|
||||
}
|
||||
|
||||
span.fancytree-ico-cf > span.fancytree-icon:before {
|
||||
color: @StatusClosed;
|
||||
font-size: 1em;
|
||||
content: "\f07b";
|
||||
}
|
||||
|
||||
span.fancytree-ico-c > span.fancytree-icon:before {
|
||||
color: @StatusRemove;
|
||||
content: "\f023";
|
||||
}
|
||||
|
||||
span.fancytree-ico-c.fancytree-selected > span.fancytree-icon:before {
|
||||
color: @StatusSuccess;
|
||||
content: "\f09c";
|
||||
}
|
||||
|
||||
span.fancytree-node.fancytree-selected {
|
||||
font-style: normal;
|
||||
background: none;
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 180 B |
|
Before Width: | Height: | Size: 178 B |
|
Before Width: | Height: | Size: 120 B |
|
Before Width: | Height: | Size: 105 B |
|
Before Width: | Height: | Size: 111 B |
|
Before Width: | Height: | Size: 110 B |
|
Before Width: | Height: | Size: 119 B |
|
Before Width: | Height: | Size: 101 B |
|
Before Width: | Height: | Size: 4.3 KiB |
|
Before Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
|
Before Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 6.3 KiB |
@@ -315,3 +315,6 @@ body .ui-tooltip {
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
.ui-menu .ui-menu-item-wrapper {
|
||||
display: block;
|
||||
}
|
||||
@@ -296,3 +296,7 @@ body .ui-tooltip {
|
||||
-webkit-box-shadow: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.ui-menu .ui-menu-item-wrapper {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@@ -51,11 +51,11 @@
|
||||
<Reference Include="MarkdownSharp">
|
||||
<HintPath>..\packages\MarkdownSharp.1.13.0.0\lib\35\MarkdownSharp.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AspNet.SignalR.Core, Version=2.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.SignalR.Core.2.1.2\lib\net45\Microsoft.AspNet.SignalR.Core.dll</HintPath>
|
||||
<Reference Include="Microsoft.AspNet.SignalR.Core, Version=2.4.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.SignalR.Core.2.4.3\lib\net45\Microsoft.AspNet.SignalR.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.AspNet.SignalR.SystemWeb, Version=2.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.SignalR.SystemWeb.2.1.2\lib\net45\Microsoft.AspNet.SignalR.SystemWeb.dll</HintPath>
|
||||
<Reference Include="Microsoft.AspNet.SignalR.SystemWeb, Version=2.4.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.AspNet.SignalR.SystemWeb.2.4.3\lib\net45\Microsoft.AspNet.SignalR.SystemWeb.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Microsoft.Owin, Version=4.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
@@ -1553,6 +1553,8 @@
|
||||
<Content Include="ClientSource\Scripts\Core\disco.dataTables.extensions.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Core\disco.moment.extensions.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Core\disco.unobtrusiveValidation.extensions.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<None Include="ClientSource\Scripts\Core\jquery-3.7.1.js" />
|
||||
<Content Include="ClientSource\Scripts\Core\jquery-ui.js" />
|
||||
<Content Include="ClientSource\Scripts\Core\jquery.dataTables.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Core\jquery.watermark.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Core\disco.uicore.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
@@ -1612,6 +1614,7 @@
|
||||
<Content Include="ClientSource\Scripts\Modules\jQuery-Fancytree\jquery.fancytree-all.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Modules\jQuery-NumberFormatter\jquery.numberformatter.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Modules\jQuery-NumberFormatter\jshashtable-2.1.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<None Include="ClientSource\Scripts\Modules\jQuery-SignalR\jquery.signalR-2.4.3.js" />
|
||||
<Content Include="ClientSource\Scripts\Modules\jQueryUI-DynaTree\jquery.dynatree.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Modules\jQueryUI-TimePicker\jquery-ui-timepicker-addon.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
<Content Include="ClientSource\Scripts\Modules\Shadowbox\shadowbox.js" Condition=" '$(Configuration)' == 'Debug' " />
|
||||
@@ -1754,6 +1757,13 @@
|
||||
<Content Include="ClientSource\Style\Images\AttachmentTypes\txt.png" />
|
||||
<Content Include="ClientSource\Style\Images\AttachmentTypes\video.png" />
|
||||
<Content Include="ClientSource\Style\Images\UnknownPhoto.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\jquery-ui.less" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_444444_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_555555_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_777620_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_777777_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_cc0000_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_ffffff_256x240.png" />
|
||||
<Content Include="ClientSource\Style\Shadowbox.min.css">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
@@ -1925,21 +1935,6 @@
|
||||
<Content Include="ClientSource\Style\jQueryUI\dynatree\ui.dynatree.min.css">
|
||||
<DependentUpon>ui.dynatree.css</DependentUpon>
|
||||
</Content>
|
||||
<None Include="ClientSource\Style\jQueryUI\images\animated-overlay.gif" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_flat_0_aaaaaa_40x100.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_flat_75_ffffff_40x100.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_glass_55_fbf9ee_1x400.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_glass_65_ffffff_1x400.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_glass_75_dadada_1x400.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_glass_75_e6e6e6_1x400.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_glass_95_fef1ec_1x400.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-bg_highlight-soft_75_cccccc_1x100.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_222222_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_2e83ff_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_454545_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_888888_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\images\ui-icons_cd0a0a_256x240.png" />
|
||||
<None Include="ClientSource\Style\jQueryUI\jquery-ui.less" />
|
||||
<None Include="ClientSource\Style\normalize.less" />
|
||||
<None Include="ClientSource\Style\normalize.css">
|
||||
<DependentUpon>normalize.less</DependentUpon>
|
||||
@@ -1947,12 +1942,6 @@
|
||||
<None Include="ClientSource\Style\normalize.min.css">
|
||||
<DependentUpon>normalize.less</DependentUpon>
|
||||
</None>
|
||||
<None Include="ClientSource\Style\jQueryUI\jquery-ui.css">
|
||||
<DependentUpon>jquery-ui.less</DependentUpon>
|
||||
</None>
|
||||
<None Include="ClientSource\Style\jQueryUI\jquery-ui.min.css">
|
||||
<DependentUpon>jquery-ui.less</DependentUpon>
|
||||
</None>
|
||||
<None Include="ClientSource\Style\Public\HeldDevices.css">
|
||||
<DependentUpon>HeldDevices.less</DependentUpon>
|
||||
</None>
|
||||
@@ -2074,7 +2063,6 @@
|
||||
</None>
|
||||
<None Include="Properties\PublishProfiles\SRV-WEB03 Production.pubxml" />
|
||||
<None Include="ClientSource\Scripts\Modules\Highcharts\highcharts.src.js" />
|
||||
<None Include="ClientSource\Scripts\Core\jquery-2.1.1.js" />
|
||||
<None Include="ClientSource\Scripts\Modules\tinymce\jquery.tinymce.min.js" />
|
||||
<None Include="ClientSource\Scripts\Modules\tinymce\license.txt" />
|
||||
<None Include="ClientSource\Scripts\Modules\tinymce\skins\lightgray\content.inline.min.css" />
|
||||
@@ -2621,8 +2609,6 @@
|
||||
<None Include="ClientSource\Scripts\Core\jquery.validate.unobtrusive.js" />
|
||||
<None Include="ClientSource\Scripts\Modules\Knockout\knockout-3.1.0.js" />
|
||||
<None Include="ClientSource\Scripts\Core\modernizr-2.7.2.js" />
|
||||
<None Include="ClientSource\Scripts\Core\jquery-ui-1.10.4.js" />
|
||||
<None Include="ClientSource\Scripts\Modules\jQuery-SignalR\jquery.signalR-2.1.2.js" />
|
||||
<Content Include="Web.config">
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
|
||||
@@ -76,10 +76,10 @@
|
||||
});
|
||||
}
|
||||
function renderComment(c, quick, canRemove) {
|
||||
let t = '<div><span class="author" />';
|
||||
let t = '<div><span class="author"></span>';
|
||||
if (canRemove)
|
||||
t += '<span class="remove fa fa-times-circle" />';
|
||||
t += '<span class="timestamp" /><div class="comment" /></div>';
|
||||
t += '<span class="remove fa fa-times-circle"></span>';
|
||||
t += '<span class="timestamp"></span><div class="comment"></div></div>';
|
||||
|
||||
const e = $(t);
|
||||
e.attr('data-commentid', c.Id);
|
||||
|
||||
@@ -336,21 +336,21 @@ WriteLiteral(" </div>\r\n</div>\r\n<script>\r\n if (!document.DiscoFunctio
|
||||
"unction () {\r\n const $this = $(this);\r\n $this.find" +
|
||||
"(\'.timestamp\').livestamp(\'destroy\');\r\n $this.remove();\r\n " +
|
||||
" });\r\n }\r\n function renderComment(c, quick, canRemove) {\r\n " +
|
||||
" let t = \'<div><span class=\"author\" />\';\r\n if (canRemove)\r\n " +
|
||||
" t += \'<span class=\"remove fa fa-times-circle\" />\';\r\n t += " +
|
||||
"\'<span class=\"timestamp\" /><div class=\"comment\" /></div>\';\r\n\r\n const " +
|
||||
"e = $(t);\r\n e.attr(\'data-commentid\', c.Id);\r\n e.find(\'.aut" +
|
||||
"hor\').text(c.Author);\r\n e.find(\'.timestamp\').text(c.TimestampFull).at" +
|
||||
"tr(\'title\', c.TimestampFull).livestamp(c.TimestampUnixEpoc);\r\n e.find" +
|
||||
"(\'.comment\').html(c.HtmlComments);\r\n\r\n $commentOutput.append(e);\r\n\r\n " +
|
||||
" if (!quick) {\r\n e.animate({ backgroundColor: \'#ffff99\'" +
|
||||
" }, 500, function () {\r\n e.animate({ backgroundColor: \'#fafaf" +
|
||||
"a\' }, 500, function () {\r\n e.css(\'background-color\', \'\');" +
|
||||
"\r\n });\r\n });\r\n $commentOutput.a" +
|
||||
"nimate({ scrollTop: $commentOutput[0].scrollHeight }, 250)\r\n }\r\n " +
|
||||
" }\r\n\r\n document.DiscoFunctions.onCommentAdded = onCommentAdded;\r\n " +
|
||||
" document.DiscoFunctions.onCommentRemoved = onCommentRemoved;\r\n });\r\n</scrip" +
|
||||
"t>\r\n");
|
||||
" let t = \'<div><span class=\"author\"></span>\';\r\n if (canRemove)\r\n" +
|
||||
" t += \'<span class=\"remove fa fa-times-circle\"></span>\';\r\n " +
|
||||
" t += \'<span class=\"timestamp\"></span><div class=\"comment\"></div></div>\';\r\n\r" +
|
||||
"\n const e = $(t);\r\n e.attr(\'data-commentid\', c.Id);\r\n " +
|
||||
" e.find(\'.author\').text(c.Author);\r\n e.find(\'.timestamp\').text(" +
|
||||
"c.TimestampFull).attr(\'title\', c.TimestampFull).livestamp(c.TimestampUnixEpoc);\r" +
|
||||
"\n e.find(\'.comment\').html(c.HtmlComments);\r\n\r\n $commentOut" +
|
||||
"put.append(e);\r\n\r\n if (!quick) {\r\n e.animate({ backgro" +
|
||||
"undColor: \'#ffff99\' }, 500, function () {\r\n e.animate({ backg" +
|
||||
"roundColor: \'#fafafa\' }, 500, function () {\r\n e.css(\'back" +
|
||||
"ground-color\', \'\');\r\n });\r\n });\r\n " +
|
||||
" $commentOutput.animate({ scrollTop: $commentOutput[0].scrollHeight }, 250)\r\n " +
|
||||
" }\r\n }\r\n\r\n document.DiscoFunctions.onCommentAdded = onCo" +
|
||||
"mmentAdded;\r\n document.DiscoFunctions.onCommentRemoved = onCommentRemoved" +
|
||||
";\r\n });\r\n</script>\r\n");
|
||||
|
||||
|
||||
#line 106 "..\..\Views\Device\DeviceParts\_Comments.cshtml"
|
||||
|
||||
@@ -248,10 +248,10 @@
|
||||
});
|
||||
}
|
||||
function addComment(c, quick, canRemove) {
|
||||
let t = '<div><span class="author" />';
|
||||
let t = '<div><span class="author"></span>';
|
||||
if (canRemove)
|
||||
t += '<span class="remove fa fa-times-circle" />';
|
||||
t += '<span class="timestamp" /><div class="comment" /></div>';
|
||||
t += '<span class="remove fa fa-times-circle"></span>';
|
||||
t += '<span class="timestamp"></span><div class="comment"></div></div>';
|
||||
|
||||
const e = $(t);
|
||||
e.attr('data-logid', c.Id);
|
||||
|
||||
@@ -933,24 +933,24 @@ WriteLiteral("\r\n async function loadLiveComment(id) {\r\n\r\n
|
||||
"300).queue(function () {\r\n const $this = $(this);\r\n " +
|
||||
" $this.find(\'.timestamp\').livestamp(\'destroy\');\r\n $t" +
|
||||
"his.remove();\r\n });\r\n }\r\n function addComme" +
|
||||
"nt(c, quick, canRemove) {\r\n let t = \'<div><span class=\"author\" />" +
|
||||
"\';\r\n if (canRemove)\r\n t += \'<span class=\"remov" +
|
||||
"e fa fa-times-circle\" />\';\r\n t += \'<span class=\"timestamp\" /><div" +
|
||||
" class=\"comment\" /></div>\';\r\n\r\n const e = $(t);\r\n " +
|
||||
"e.attr(\'data-logid\', c.Id);\r\n e.find(\'.author\').text(c.Author);\r\n" +
|
||||
" e.find(\'.timestamp\').text(c.TimestampFull).attr(\'title\', c.Times" +
|
||||
"tampFull).livestamp(c.TimestampUnixEpoc);\r\n e.find(\'.comment\').ht" +
|
||||
"ml(c.HtmlComments);\r\n\r\n $CommentOutput.append(e);\r\n\r\n " +
|
||||
" if (!quick) {\r\n e.animate({ backgroundColor: \'#ffff99\' }," +
|
||||
" 500, function () {\r\n e.animate({ backgroundColor: \'#fafa" +
|
||||
"fa\' }, 500, function () {\r\n e.css(\'background-color\'," +
|
||||
" \'\');\r\n });\r\n });\r\n " +
|
||||
" $CommentOutput.animate({ scrollTop: $CommentOutput[0].scrollHeight }, 250)\r\n " +
|
||||
" }\r\n }\r\n\r\n // Add Globally Available Functions" +
|
||||
"\r\n document.DiscoFunctions.liveLoadComment = function (id) {\r\n " +
|
||||
" loadLiveComment(id);\r\n };\r\n document.DiscoFunctio" +
|
||||
"ns.liveRemoveComment = liveRemoveComment;\r\n //#endregion\r\n });" +
|
||||
"\r\n </script>\r\n");
|
||||
"nt(c, quick, canRemove) {\r\n let t = \'<div><span class=\"author\"></" +
|
||||
"span>\';\r\n if (canRemove)\r\n t += \'<span class=\"" +
|
||||
"remove fa fa-times-circle\"></span>\';\r\n t += \'<span class=\"timesta" +
|
||||
"mp\"></span><div class=\"comment\"></div></div>\';\r\n\r\n const e = $(t)" +
|
||||
";\r\n e.attr(\'data-logid\', c.Id);\r\n e.find(\'.author\'" +
|
||||
").text(c.Author);\r\n e.find(\'.timestamp\').text(c.TimestampFull).at" +
|
||||
"tr(\'title\', c.TimestampFull).livestamp(c.TimestampUnixEpoc);\r\n e." +
|
||||
"find(\'.comment\').html(c.HtmlComments);\r\n\r\n $CommentOutput.append(" +
|
||||
"e);\r\n\r\n if (!quick) {\r\n e.animate({ background" +
|
||||
"Color: \'#ffff99\' }, 500, function () {\r\n e.animate({ back" +
|
||||
"groundColor: \'#fafafa\' }, 500, function () {\r\n e.css(" +
|
||||
"\'background-color\', \'\');\r\n });\r\n });\r\n" +
|
||||
" $CommentOutput.animate({ scrollTop: $CommentOutput[0].scroll" +
|
||||
"Height }, 250)\r\n }\r\n }\r\n\r\n // Add Globally " +
|
||||
"Available Functions\r\n document.DiscoFunctions.liveLoadComment = funct" +
|
||||
"ion (id) {\r\n loadLiveComment(id);\r\n };\r\n do" +
|
||||
"cument.DiscoFunctions.liveRemoveComment = liveRemoveComment;\r\n //#end" +
|
||||
"region\r\n });\r\n </script>\r\n");
|
||||
|
||||
|
||||
#line 282 "..\..\Views\Job\JobParts\Resources.cshtml"
|
||||
|
||||
@@ -76,10 +76,10 @@
|
||||
});
|
||||
}
|
||||
function renderComment(c, quick, canRemove) {
|
||||
let t = '<div><span class="author" />';
|
||||
let t = '<div><span class="author"></span>';
|
||||
if (canRemove)
|
||||
t += '<span class="remove fa fa-times-circle" />';
|
||||
t += '<span class="timestamp" /><div class="comment" /></div>';
|
||||
t += '<span class="remove fa fa-times-circle"></span>';
|
||||
t += '<span class="timestamp"></span><div class="comment"></div></div>';
|
||||
|
||||
const e = $(t);
|
||||
e.attr('data-commentid', c.Id);
|
||||
|
||||
@@ -336,21 +336,21 @@ WriteLiteral(" </div>\r\n</div>\r\n<script>\r\n if (!document.DiscoFunctio
|
||||
"ion () {\r\n const $this = $(this);\r\n $this.find(\'.t" +
|
||||
"imestamp\').livestamp(\'destroy\');\r\n $this.remove();\r\n }" +
|
||||
");\r\n }\r\n function renderComment(c, quick, canRemove) {\r\n " +
|
||||
" let t = \'<div><span class=\"author\" />\';\r\n if (canRemove)\r\n " +
|
||||
" t += \'<span class=\"remove fa fa-times-circle\" />\';\r\n t += \'<sp" +
|
||||
"an class=\"timestamp\" /><div class=\"comment\" /></div>\';\r\n\r\n const e = " +
|
||||
"$(t);\r\n e.attr(\'data-commentid\', c.Id);\r\n e.find(\'.author\'" +
|
||||
").text(c.Author);\r\n e.find(\'.timestamp\').text(c.TimestampFull).attr(\'" +
|
||||
"title\', c.TimestampFull).livestamp(c.TimestampUnixEpoc);\r\n e.find(\'.c" +
|
||||
"omment\').html(c.HtmlComments);\r\n\r\n $commentOutput.append(e);\r\n\r\n " +
|
||||
" if (!quick) {\r\n e.animate({ backgroundColor: \'#ffff99\' }, " +
|
||||
"500, function () {\r\n e.animate({ backgroundColor: \'#fafafa\' }" +
|
||||
", 500, function () {\r\n e.css(\'background-color\', \'\');\r\n " +
|
||||
" });\r\n });\r\n $commentOutput.anima" +
|
||||
"te({ scrollTop: $commentOutput[0].scrollHeight }, 250)\r\n }\r\n }" +
|
||||
"\r\n\r\n document.DiscoFunctions.onCommentAdded = onCommentAdded;\r\n do" +
|
||||
"cument.DiscoFunctions.onCommentRemoved = onCommentRemoved;\r\n });\r\n</script>\r\n" +
|
||||
"");
|
||||
" let t = \'<div><span class=\"author\"></span>\';\r\n if (canRemove)\r\n " +
|
||||
" t += \'<span class=\"remove fa fa-times-circle\"></span>\';\r\n " +
|
||||
" t += \'<span class=\"timestamp\"></span><div class=\"comment\"></div></div>\';\r\n\r\n " +
|
||||
" const e = $(t);\r\n e.attr(\'data-commentid\', c.Id);\r\n " +
|
||||
" e.find(\'.author\').text(c.Author);\r\n e.find(\'.timestamp\').text(c.Ti" +
|
||||
"mestampFull).attr(\'title\', c.TimestampFull).livestamp(c.TimestampUnixEpoc);\r\n " +
|
||||
" e.find(\'.comment\').html(c.HtmlComments);\r\n\r\n $commentOutput." +
|
||||
"append(e);\r\n\r\n if (!quick) {\r\n e.animate({ backgroundC" +
|
||||
"olor: \'#ffff99\' }, 500, function () {\r\n e.animate({ backgroun" +
|
||||
"dColor: \'#fafafa\' }, 500, function () {\r\n e.css(\'backgrou" +
|
||||
"nd-color\', \'\');\r\n });\r\n });\r\n $" +
|
||||
"commentOutput.animate({ scrollTop: $commentOutput[0].scrollHeight }, 250)\r\n " +
|
||||
" }\r\n }\r\n\r\n document.DiscoFunctions.onCommentAdded = onCommen" +
|
||||
"tAdded;\r\n document.DiscoFunctions.onCommentRemoved = onCommentRemoved;\r\n " +
|
||||
" });\r\n</script>\r\n");
|
||||
|
||||
|
||||
#line 106 "..\..\Views\User\UserParts\_Comments.cshtml"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||
@@ -49,6 +49,10 @@
|
||||
</system.webServer>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Microsoft.AspNet.SignalR.Core" publicKeyToken="31BF3856AD364E35" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-2.4.3.0" newVersion="2.4.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
"outputFileName": "ClientSource/Scripts/Core.js",
|
||||
"inputFiles": [
|
||||
"ClientSource/Scripts/Core/modernizr-2.7.2.js",
|
||||
"ClientSource/Scripts/Core/jquery-2.1.1.js",
|
||||
"ClientSource/Scripts/Core/jquery-3.7.1.js",
|
||||
"ClientSource/Scripts/Core/jquery.validate.js",
|
||||
"ClientSource/Scripts/Core/jquery.validate.unobtrusive.js",
|
||||
"ClientSource/Scripts/Core/disco.unobtrusiveValidation.extensions.js",
|
||||
"ClientSource/Scripts/Core/jquery-ui-1.10.4.js",
|
||||
"ClientSource/Scripts/Core/jquery-ui.js",
|
||||
"ClientSource/Scripts/Core/jquery.watermark.js",
|
||||
"ClientSource/Scripts/Core/jquery.dataTables.js",
|
||||
"ClientSource/Scripts/Core/moment-with-locales.js",
|
||||
@@ -99,7 +99,7 @@
|
||||
{
|
||||
"outputFileName": "ClientSource/Scripts/Modules/jQuery-SignalR.js",
|
||||
"inputFiles": [
|
||||
"ClientSource/Scripts/Modules/jQuery-SignalR/jquery.signalR-2.1.2.js",
|
||||
"ClientSource/Scripts/Modules/jQuery-SignalR/jquery.signalR-2.4.3.js",
|
||||
"ClientSource/Scripts/Modules/jQuery-SignalR/disco-hubs.js"
|
||||
]
|
||||
},
|
||||
|
||||
@@ -3,10 +3,6 @@
|
||||
"outputFile": "ClientSource/Style/Fancytree/disco.fancytree.css",
|
||||
"inputFile": "ClientSource/Style/Fancytree/disco.fancytree.less"
|
||||
},
|
||||
{
|
||||
"outputFile": "ClientSource/Style/jQueryUI/jquery-ui.css",
|
||||
"inputFile": "ClientSource/Style/jQueryUI/jquery-ui.less"
|
||||
},
|
||||
{
|
||||
"outputFile": "ClientSource/Style/Public/HeldDevices.css",
|
||||
"inputFile": "ClientSource/Style/Public/HeldDevices.less"
|
||||
|
||||
@@ -6,18 +6,15 @@
|
||||
<package id="EntityFramework" version="5.0.0" targetFramework="net45" />
|
||||
<package id="EntityFramework.SqlServerCompact" version="4.3.6" targetFramework="net45" />
|
||||
<package id="FontAwesome" version="4.1.0" targetFramework="net45" />
|
||||
<package id="jQuery" version="2.1.1" targetFramework="net45" />
|
||||
<package id="jQuery.UI.Combined" version="1.10.4" targetFramework="net45" />
|
||||
<package id="jQuery.UI.Themes.lightness" version="1.8.22" targetFramework="net45" />
|
||||
<package id="jQuery.Validation" version="1.12.0" targetFramework="net45" />
|
||||
<package id="jQuery" version="1.9.0" targetFramework="net462" />
|
||||
<package id="knockoutjs" version="3.1.0" targetFramework="net45" />
|
||||
<package id="MarkdownSharp" version="1.13.0.0" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.Mvc" version="4.0.30506.0" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.Razor" version="2.0.30506.0" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.SignalR" version="2.1.2" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.SignalR.Core" version="2.1.2" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.SignalR.JS" version="2.1.2" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.1.2" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.SignalR" version="2.4.3" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.SignalR.Core" version="2.4.3" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.SignalR.JS" version="2.4.3" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.4.3" targetFramework="net462" />
|
||||
<package id="Microsoft.AspNet.WebApi" version="4.0.30506.0" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.WebApi.Client" version="4.0.30506.0" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.WebApi.Core" version="4.0.30506.0" targetFramework="net45" />
|
||||
|
||||